반응형
사용자에게 두 개의 정수 a, b를 입력받아 a가 더 크면 a*2의 b승을, b가 더 크면 b*2의 a승을 구해 출력하는 프로그램을 작성해보자.
단, a와 b가 같은 경우 a*b를 출력
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main(void) {
int a, b;
printf("첫 번째 정수를 입력하세요: ");
scanf("%d", &a);
printf("두 번째 정수를 입력하세요: ");
scanf("%d", &b);
if (a > b)
printf("결과: %d", a << b);
else if (a < b)
printf("결과: %d", b << a);
else
printf("결과: %d", a * b);
return 0;
}
▶ 승을 출력할 때는 비트 연산자 이용
: a가 b보다 클 경우 a*2의 b승(a<<b) 출력
: b가 a보다 클 경우 b*2의 a승(b<<a) 출력
→ a가 b보다 크기 때문에 a*2의 b승, 즉 3*2의 2승 값인 12 출력
→ b가 a보다 크기 때문에 b*2의 a승, 즉 2*2의 1승 값인 4 출력
→ a와 b의 값이 동일하기 때문에 두 값의 곱인 25 출력
반응형
'Language > C' 카테고리의 다른 글
[ C ] [ if 조건문 연습 문제 ] 대(소)문자 출력 프로그램 (0) | 2021.10.11 |
---|---|
[ C ] [ if 조건문 연습 문제 ] 비만도 출력 프로그램 (0) | 2021.10.11 |
[ C ] [ if 조건문 연습 문제 ] 문자 입력 프로그램 (0) | 2021.10.11 |
[ C ] [ if 조건문 연습 문제 ] 실수 입력 프로그램 (0) | 2021.10.11 |
[ C ] [ if 조건문 연습 문제 ] 정수 입력 프로그램 (0) | 2021.10.11 |