cyphen156

백준-입출력과 사칙연산-10869 사칙연산 본문

컴퓨터공학/알고리듬 풀이

백준-입출력과 사칙연산-10869 사칙연산

cyphen156 2023. 9. 21. 17:34

10869번: 사칙연산 (acmicpc.net)

 

10869번: 사칙연산

두 자연수 A와 B가 주어진다. 이때, A+B, A-B, A*B, A/B(몫), A%B(나머지)를 출력하는 프로그램을 작성하시오. 

www.acmicpc.net

두 정수 A와 B를 입력받은 다음 사칙연산(+, -, *, /, %)하면 되는 프로그램이다.

이전 문제와는 다르게 출력 형식의 제약사항이 없다.

제약사항

  • A와 B는 1이상, 10,000이하인 자연수이다.(1 ≤ A, B ≤ 10,000)

C 풀이

사칙연산_10869.c

#define _CRT_SECURE_NO_WARNINGS

#include <stdio.h>

void calc(int a, int b) {
    printf("%d\n", a + b);
    printf("%d\n", a - b);
    printf("%d\n", a * b);
    printf("%d\n", a / b);
    printf("%d\n", a % b);
}

int main() {
    int A, B;
    scanf("%d %d", &A,&B);
    calc(A, B);
    return 0;
}

C++ 풀이

사칙연산_10869.cpp

#include <iostream>

using namespace std;

int main()
{
	int A, B;
	cin >> A >>  B;
	cout << A + B << '\n' << A - B << '\n' << A * B << '\n'
		 << A / B << '\n' << A % B << endl;
	return 0;
}

Extra 

C++ std::cout객체를 사용하면 인스턴스가 생성되기 때문에 메모리 사용량이 C언어에 비해서 2배가까이 사용한다.

이것을 최적화한 코드

사칙연산_10869.cpp

#define _CRT_SECURE_NO_WARNINGS

#include <cstdio>

using namespace std;

void calc(int a, int b) {
    printf("%d\n", a + b);
    printf("%d\n", a - b);
    printf("%d\n", a * b);
    printf("%d\n", a / b);
    printf("%d\n", a % b);
}

int main()
{
	int A, B;
    scanf("%d %d", &A,&B);
    calc(A, B);
	return 0;
}

모든 예제 코드의 소스파일은 제 개인 깃허브 레포지토리 에 있습니다.

Workspace/알고리듬 풀이 at main · cyphen156/Workspace · GitHub