계산기 프로그램을 작성하려고 한다. 조건에 맞게 작성하시오.

조건

  • 계산기 프로그램은 덧셈, 뺄셈, 곱셈, 나눗셈, 나머지연산, 비트연산, 배수 구하기의 기능이 있음
  • 각 기능은 함수로 구현되어 있음
  • 계산기 프로그램은 먼저 계산기능을 고른 후에 연산을 하고, 프로그램 종료 여부를 묻는다.
    이때, 사용자가 프로그램 종료를 원할때에만 프로그램이 종료되고, 그렇지 않으면 처음으로 돌아간다.
  • 비트연산은 », «, &, , ^ 중 연산할 종류를 선택한 후 연산한다.
  • 배수 구하기 함수의 매개변수는 2개로 정하며, 각각 n과 m이라고 했을 때 m이하의 n의 배수를 구한다.
    ex) void multi(int n, int m) –> m이하의 n의 배수
  • 덧셈, 뺄셈, 곱셈, 나눗셈은 매개변수가 2개이다.

Source

#include<stdio.h>

bool flag = 1;
char yn = 'A';

void plus() {
	int a, b;
	printf("연산할 두 수를 입력하세요.");
	scanf("%d %d", &a, &b);
	printf("%d\n", a + b);

}

void minus() {
	int a, b;
	printf("연산할 두 수를 입력하세요.");
	scanf("%d %d", &a, &b);
	printf("%d", a - b);

}

void multiply() {
	int a, b;
	printf("연산할 두 수를 입력하세요.");
	scanf("%d %d", &a, &b);
	printf("%d", a * b);

}

void div() {
	int a, b;
	printf("연산할 두 수를 입력하세요.");
	scanf("%d %d", &a, &b);
	printf("%d", a / b);

}

void mod() {
	int a, b;
	printf("연산할 두 수를 입력하세요.");
	scanf("%d %d", &a, &b);
	printf("%d", a % b);

}

void bit() {
	int a, b;
	int x;
	printf("연산할 두 수를 입력하세요.");
	scanf("%d %d", &a, &b);
	printf("비트 연산자를 입력하세요(1)>> 2)<< 3)& 4)| 5)^)");
	scanf("%d", &x);
	switch (x) {
	case 1:
		printf("%d\n", a >> b);
		break;
	case 2:
		printf("%d\n", a << b);
		break;
	case 3:
		printf("%d\n", a & b);
		break;
	case 4:
		printf("%d\n", a | b);
		break;
	case 5:
		printf("%d\n", a ^ b);
		break;
	default: break;
	}

}

void multiple() {
	int a, b;
	printf("연산할 두 수를 입력하세요.");
	scanf("%d %d", &a, &b);
	int i = 1;
	for (a; a * i <= b; i++)
		printf("%d\n", a * i);

}

int main(void) {
	while (flag) {
		printf("원하는 계산기능을 고르시오\n1)덧셈 2)뺄셈 3)곱셈 4)나눗셈 5)나머지연산 6)비트연산 7)배수 구하기 8)종료\n");
		int input = 0;
		scanf("%d", &input);
		switch (input) {
		case 1: plus(); break;
		case 2: minus(); break;
		case 3: multiply(); break;
		case 4: div(); break;
		case 5: mod(); break;
		case 6: bit(); break;
		case 7: multiple(); break;
		case 8: flag = 0; break;
		default: break;
		}
	}

	return 0;
}

태그:

카테고리:

업데이트: