[C언어 로직과 순서도] 01.순차구조
연습문제
예제 01
3과 5 덧셈과 곱셈하기
3을 변수 a에, 5를 변수 b에 저장하고
두 변수 a, b의 값을 더한 값과 곱한 값 각각을 add와 mul 변수에 저장한다.
그리고 더한 값과 곱한 값을 저장하고 있는 add와 mul 변수의 값을 출력한다.
분석 (설명)
- 변수 a에 3을, 변수 b에 5를 저장한다.
- a 값 3과 b 값 5의 합인 8을 변수 add에 저장한다.
- a 값 3과 b 값 5의 곱인 15를 변수 mul에 저장한다.
- add 값 8과 mul 값 15를 출력한다
설계 (순서도)
구현
/* 실행결과
덧셈: 8
곱셈: 15
*/
예제 02
두 수 입력받아 덧셈, 곱셈 출력하기
사용자로부터 입력받은 두 수를 변수 a와 b에 저장하고, 두 변수를 더한 값과 곱한 값을 출력한다.
분석 (설명)
- 사용자로부터 두 수를 입력받아 a와 b에 저장한다.
- a와 b를 더한 값과 곱한 값을 출력한다.
설계 (순서도)
구현
/* 실행결과
정수(2개) : 5 7
덧셈: 12
곱셈: 35
*/
예제 03
몫과 나머지 구하기
정수 2개를 입력 받고, 나눗셈 연산자인 /과 나머지 연산자인 %를 이용해서 두 수의 몫과 나머지를 구한다.
C 언어에서 나눗셈 연산자인 / 는 정수와 실수 모두 가능한데,
정수에 대한 나눗셈에서는 소수점 이하는 버리는 반면
실수에 대한 나눗셈에서는 나누어떨어질 때까지 연산한다.
이 책에서는 /를 정수 나눗셈에 한정한다.
분석 (설명)
- a/b는 나눗셈의 몫, a%b는 a를 b로 나눈 나머지를 구하는 연산식이다.
설계 (순서도)
구현
/* 실행결과
정수(2개) : 10 3
몫: 3
나머지: 1
*/
예제 04
사각형 넓이 구하기
사각형의 넓이를 구하는 방법은 다음과 같다.
사각형의 넓이 = 가로의 길이 × 세로의 길이
사각형의 가로, 세로의 길이에 해당하는 임의의 두 정수를 사용자로부터 입력 받아 사각형의 넓이를 구한다.
분석 (설명)
- 사각형의 넓이인 a*b 연산 값을 출력한다
설계 (순서도)
구현
// 실행결과
// 가로: 7
// 세로: 5
// 사각형 넓이: 35
예제 05
총점과 평균 구하기
3개의 성적을 입력받아 a, b, c에 저장하고 이들의 합과 평균을 구해 출력한다.
분석 (설명)
- a, b, c의 합을 sum에 저장한다.
- sum과 sum/3을 출력한다. sum/3은 입력받은 성적의 평균이 된다
설계 (순서도)
구현
// 실행결과
// 성적(3개) : 86 90 100
// 총점: 276
// 평균: 92
예제 06
센티미터 단위의 예제 06 길이를 미터와 센티미터로 변환하기
183cm를 미터와 센티미터로 변환하면 1m 83cm가 된다.
여기서 미터에 해당하는 1은 183을 100으로 나눈 몫이고,
센터미터에 해당하는 83은 183을 100으로 나눈 나머지이다.
cm를 입력 받고,
m는 cm/100로,
cm는 cm%100 로 구할 수 있고,
이렇게 구해진 m와 cm를 출력한다.
분석 (설명)
- 사용자로부터 센티미터 단위의 길이를 입력받아 cm에 저장한다.
- cm를 100으로 나눈 몫을 m에 저장한다.
- cm를 100으로 나눈 나머지를 cm에 저장한다.
설계 (순서도)
구현
// 실행결과
// cm: 1050
// 10m 50cm
예제 07
초 단위의 시간을 시간, 분, 초로 변환하기
1시간은 3600초임을 이용해서,먼저 초를 3600으로 나눈 몫을 구하는 연산을 이용해서 시간에 해당되는 값을 구한다.
그 다음 초를 3600으로 나눈 나머지 연산을 이용하여 시간으로 변환되고 남은 초를 구한다.
그리고 초를 60으로 나눈 몫으로 분에 해당되는 값을 구하고, 초를 60으로 나눈 나머지로 초에 해당되는 값을 구한다.
초를 입력 받고, 시간 분 초로 출력하는 순서도와 C 프로그램을 작성하여라.
분석 (설명)
- 사용자로부터 초 단위의 시간을 입력받아 s에 저장한다.
- s를 3600으로 나눈 몫을 h에 저장한다.
- s를 3600으로 나눈 나머지를 s에 저장한다. h에 저장되고 남은 시간이 s에 저장한다.
- s를 60으로 나눈 몫을 m에 저장한다.
설계 (순서도)
구현
// 실행결과
// 초: 4000
// 1시간 6분 40초
과제
과제 01
변수 a에 7을, 변수 b에 3을 저장하고, 변수 a 값에서 b 값을 뺀 결과를 출력하는 순서도와 C 프로그램을 작성하여라.
과제 02
두 수를 입력 받아 뺄셈을 한 결과를 출력하는 순서도와 C 프로그램을 작성하여라.
과제 03
밑변과 높이를 입력 받아 삼각형의 넓이를 구해 출력하는 순서도와 C 프로그램을 작성하여라.
과제 04
미터 단위의 길이를 입력받아 킬로미터와 미터로 변환하여 출력하는 순서도와 C 프로그램을 작성하여라.
과제 05
분 단위의 시간을 입력받아 일, 시간, 분으로 변환하여 출력하는 순서도와 C 프로그램을 작성하여라.