검색결과 리스트
컴퓨터 언어에 해당되는 글 2건
- 2020.11.29 C언어 기초 9주차
- 2020.11.15 c언어 기초 7주차
1. 함수의 선언 방식은
반환할자료형 함수명(입력1의자료형 입력1를받을변수명, 입력2를받을자료형 입력2를받을변수명...)
{
처리할 내용
return 반환할변수명
}
이다. 이를 암기하시오. 또한 아래 문제를 해결하시오.(1시간 소요)
가. 반환할 자료형이 int 이고 입력은 int a, int b이며 처리할 내용은 int result = a+b 와 같이 두 수를 더해주는 프로그램을 짜고 return에 result를 주어 결과값이 반환되도록 만드시오. 함수명은 임의로 지으시오.
나. int main() 내에서 int x=10, y=20 를 주고, 아까 만든 함수의 이름을 쓰고 입력을 넣은 뒤 출력을 z1로 받아 printf 해보시오. 아래의 슈도코드를 참조하시오.
int main()
{
int x=10, y=20;
출력받을 변수 = 함수이름(입력1, 입력2);
printf()
}
다. 두 수를 곱하는 함수를 만들고 int main 내에서 호출하여 입력을 넣은 뒤 출력을 z2로 받아 printf 해보시오.
라. 두 수의 차이를 구하는 함수를 만드시오. 둘 중 더 큰수에서 더 작은 수를 빼도록 하시오. 출력을 z3으로 받아 printf 해보시오. (힌트 : 삼항연산자를 이용하면 간단히 해결됨)
마. 만든 함수들을 main 함수 뒤로 자리를 바꾸어 주고, main함수 앞에는 아까 만든 함수의 반환할자료형 함수명(입력1, 입력2...); 를 써서 함수의 형태만 먼저 정의하고 내용은 뒤에 있도록 해보시오. https://enter.tistory.com/59 를 참조하시오.
2. 다음 함수를 구현하시오.(3시간 소요)
가. 반복할 횟수 int n 을 받아 n!를 출력하는 함수를 만드시오. 입력받은 n으로부터 n=1일때까지 계속 곱하면 됨. (주의 : 재귀함수를 이용하지 마시오!) n 양수일때만 계산하고 그렇지 않은 경우 1을 출력하도록 하시오.
나. '가'를 재활용하여 퍼뮤테이션 함수를 만드시오. nPr 에서 n,r를 입력받아 결과값을 출력하도록 하시오. n이 양수 r은 0이상이며 n>=r 인지 검사하여, 유효할때만 계산하고 그렇지 않은 경우 1을 출력하도록 하시오.
다. '가~나'를 재활용하여 콤비네이션 함수를 만드시오. nCr에서 n,r를 입력받아 결과값을 출력하도록 하시오. n이 양수 r은 0이상이며 n>=r 인지 검사하여, 유효할때만 계산하고 그렇지 않은 경우 1을 출력하도록 하시오.
라. nCr 에서
n=1 r=0, n=1 r=1
n=2 r=0, n=2 r=1, n=2 r=2
n=3 r=0, n=3 r=1, n=3 r=2, n=3 r=3
n=4 r=0, n=4 r=1, n=4 r=2, n=4 r=3, n=4 r=4 ...
...
일때의 값을 출력하는 함수를 for를 두번 이용하여 만들어 보시오. n=10일때까지 계산하여 스크린샷을 첨부하시오.
C언어 기초 13주차 (0) | 2020.12.27 |
---|---|
C언어 기초 12주차 (0) | 2020.12.21 |
C언어 기초 8주차 (0) | 2020.11.22 |
c언어 기초 7주차 (0) | 2020.11.15 |
c언어 기초 6주차 (0) | 2020.11.08 |
# 기본과제 및 제출 양식
1. while의 사용방법은
while( 조건식 )
{
조건식이 참일때 실행할 문장
}
과 같다. 이를 암기하시오. 또한 아래 문제를 해결하시오.(3시간 소요)
가. 100, 97, 94... 와 같은 등차수열이 있다.
An = a + (n-1)*d; a=초항, d=공차임을 이용하여 등차수열의 일반항을 수기로 구하시오. 위 수열에서 초항은 100, 공차는 -3이다. 이 때, n값을 숫자로 넣으면 A를 계산해주는 프로그램을 for문을 이용하여 구하시오. 예를들어, n=3 이면 94를 출력해야함.
나. S1 = 100;
S2 = 100 + 97;
S3 = 100 + 97 + 94;
Sn = A1 + A2 + A3 + ... + An; 임을 이용하여 S1, S2, S3 .... S34, S35 를 for문을 이용하여 구하시오. '가'에서 만들어놓은 일반항 프로그램을 재사용 하여 구현하시오. (예를들어, Sum = Sum + A; A = 103-3N; 과 같이 구하면 됨) 예를들어, n=5 이면 470을 출력해야함. (=100+97+94+91+88)
다. S34은 100+97+94...1 이어서 모든 수가 양수가 더해지고 있고, S35는 100+07+94+...1+ (-2) 처럼 되어 음수를 처음으로 더하게 되므로 Sn의 최대값은 S34이다. Sn의 최대값을 구하기 위해 어디까지 Sum하여야 하는지 수기로 계산하여야 하는 불편함이 있다. '나'에서 만든 프로그램을 조건식 A>0으로 주고 while문을 이용하여 똑같은 기능을 하는 프로그램을 구현하시오.
라. '다'를 개조하여, 초항과 공차를 입력받아
공차가 양수이거나 초항과공차가 모두 음수인경우 S1,S2,S3... S20를 출력하고,
초항이 양수이고 공차가 음수이면 수열의 값이 0 이상일때까지만 합해지도록 하여 부분합S를 출력해 보시오. for과 while중 구현하기 유리한 것을 선택하여 사용해 보시오.
마. 코딩 중, for문과 while문 중 어떤 반복문을 어떨때 사용하는 것이 더 유리한지 50자 이내로 정리해보시오.
for문을 사용할 경우는 반복 횟수를 정확히 알고 있을 때 사용한다.
while문은 조건을 입력후 진행 할 경우에는 사용한다.
2. Do while문의 사용법은
Do{
조건식이 참이거나 첫 실행일때 실행할 문장
}while( 조건식 )
과 같다. 이를 암기하시오. 또한 아래 문제를 해결하시오. (1시간 소요)
가. Do While문 바깥에 char password = 'a' 를 주시오. char input=0을 주시오.
나. Do While문 안쪽에서 input를 scanf하시오.
다. input의 값이 password가 아니면 '나'를 반복하고 "입력한 값은 ~이며 암호가 틀렸습니다"를 출력하고, a 이면 반복문을 종료하도록 하는 적당한 조건식을 작성하시오. do~while문 뒤쪽 바깥에 "a를 입력하였으므로 종료되었습니다"를 출력하시오.
라. while문은 언제 끝나게 될지 모를 경우 조건식을 통해 종료조건을 줄 수 있다는데에 의의가 있으며 do~while문은 반드시 한 번 이상은 실행해야 하는경우, 예를들어 패스워드 검증 등에 쓰인다는 데에 의의가 있다. for, while, do while에 대해 언제 어떤 반복문을 사용하는 것이 더 유리한지 100자 이내로 정리해 보시오.
for문을 사용할 경우는 반복 횟수를 정확히 알고 있을 때 사용한다.
while문은 조건을 입력후 진행 할 경우에는 사용한다.
do while문은 반복제한 변수의 최초 상태와 무관하게 반복문을 한번 실행할 필요가 있을때 사용한다.
C언어 기초 9주차 (0) | 2020.11.29 |
---|---|
C언어 기초 8주차 (0) | 2020.11.22 |
c언어 기초 6주차 (0) | 2020.11.08 |
c언어 기초 5주차 (0) | 2020.11.01 |
c언어 기초 4주차 (0) | 2020.10.25 |
RECENT COMMENT