Note/Source Code2007. 12. 19. 14:46


출처 : 방학 중 강신재 교수님 수업 참고 자료

         Homepage : klp.daegu.ac.kr

문제 내용

-

[문제 10] 반지름을 입력받아 원의 둘레와 원의 면적을 구하는 프로그램을 작성하시오.


[입․출력 예시]

  반지름 = 10

  원의 둘레 = 62.8

  원의 면적 = 314.0


[알고리즘 해설]

  (반지름 * 2 * 3.14) = 둘레

  (반지름 * 반지름 * 3.14) = 넓이



[문제 11] 숫자를 입력받아서 그 수가 홀수인지 짝수인지를 출력하는 프로그램을 작성하시오.


[알고리즘 해설]

   2로 나누었을 때 나머지가 0이면 그 수는 짝수.

   2로 나누었을 때 나머지가 1이면 그 수는 홀수.



[문제 12] 두 수를 입력받아서 두 수 사이의 홀수의 합과 짝수의 합을 구하는 프로그램을 작성하시오. (단, 두 수의 입력은 큰 수와 작은 수와는 상관없이 입력이 가능하도록 한다.)


[알고리즘 해설]

  ① 두 수 입력받기.

  ② 두 수 중 큰 값과 작은 값을 가려내기.

  ③ 두 수 사이의 수를 2칸씩 차이가 나도록 계산.

  ④ 작은 값의 나머지가 0이면 es는 짝수의 합, os는 홀수의 합이다.

  ⑤ 작은 값의 나머지가 1이면 es는 홀수의 합, os는 짝수의 합이다.

[문제 13] 2개의 직선 ϨǴϨǴǴǴǴǴǴǴǴǴǴǴǴŷŷǴϨǴǴ̹ͫˮˮˮˮˮˮͫŷǴͫˮ


[알고리즘 해설]

  교점의 좌표는 연립방정식의 해와 일치한다. 따라서, 좌표를 구하는 식을 세우면,

          ......................... (x 좌표)

          .......... (y 좌표)

가 된다. 이 공식을 프로그램에 그대로 적용하면 된다.



[문제 14] 최대공약수와 최소공배수 구하기

  두 수를 입력받아 그 두수의 최대공약수와 최소공배수를 구하여 출력하시오.


[알고리즘 해설]

 ① 최대공약수

  두 수의 나머지와 두 수 중 작은 수의 최대공약수를 구하는 방법(재귀호출 사용).

  나머지가 0이 될 때까지 계속 반복한다.

      GcdRecursion(30, 15) → 30 % 15  = 0.

      GcdRecursion(15, 0) → 15를 return함.

 ② 최소공배수 = 첫 번째 수 × 두 번째 수 / 최대공약수



[문제 15] 성적을 입력받아서 다음과 같은 결과를 출력하는 프로그램을 작성하시오.

 90 이상   A

 80 - 89   B

 70 - 79   C

 60 - 69   D

 60 이하   F

 



[문제 16] 다음과 같은 결과를 출력할 수 있도록 프로그램을 작성하시오.

*

* *

* * *

* * * *

* * * * *



[문제 17] 3명의 학생에 대한 국어, 영어, 수학 성적을 입력받아 총점과 평균을 구하는 프로그램을 작성하시오.



[문제 18] 사용자 정의 함수(swap)를 만들어 두 데이터 값을 교환하는 프로그램을 작성하시오

Posted by 스카이데이즈