-
사칙연산_220701데일리 codeup/연산자 2022. 7. 1. 16:31
c++에서 자주 이용되는 사칙연산은 덧셈, 뺄셈, 나눗셈, 곱셈 이다.
덧셈, 뺄셈, 곱셈의 경우에는
+
,-
,*
를 사용하면 되며, 나눗셈의 경우에는 몫과 나머지를 잘 구해야 한다.나누기 연산시 몫의 경우에는
/
연산을 통해 구할 수 있으며, 나머지의 경우%
연산을 통해 구할 수 있다.나누어 떨어지진 않는 결과값을 구하기 위해서는 반드시 실수 type을 이용해야 한다.
다만 두 type이 모두 실수형일 필요는 없고, 실수형과 정수형 간의 연산에서는 결과가 실수형이 나오기 때문에, 두 type중 하나만 실수형으로 바꿔주면 된다예제
#include <iostream> using namespace std; int main() { int a = 9, b = 4; cout << a / b << ' ' << a % b << ' ' << (double)a / b; return 0; }
출력 결과
2 1 2.25
추가적으로 연산의 선후관계를 이해해야 한다.
(double)a / b; (double)(a / b);
결과
2.25 2
(double) a / b 는 double 로 계산이 되지만, (double) (a / b) 는 a/b가 int (몫 : 2) 로 계산된 후, double 로 type 을 바꿔주었기 때문에 결과값이 2가 된다.
+추가)c++에서 cout 이용시 double값이라 하더라도 실수부분이 없는 경우에는 정수부분만 출력해주고는 한다.
간단한 사칙연산
두 정수 a, b를 입력받아 다음 값들을 전부 계산해서 출력하는 프로그램을 작성해보세요.
- 두 정수를 더했을 때의 결과
- a에서 b를 뺐을 때의 결과
- a를 b로 나누었을 때의 몫
- a를 b로 나누었을 때의 나머지
#include <iostream> using namespace std; int main(){ int a, b; cin >> a >> b; cout << a + b << endl << a - b << endl << a / b << endl << a % b; return 0; }
사칙연산 다른 표현법
예를 들어 변수 a에 현재 들어 있는 값에 5만큼을 더 더해주고 싶은 경우, 다음과 같이 코드 작성이 가능하다.a = a + 5;
하지만 이러한 경우는 자주 발생하기 때문에 c에서는 다음과 같은 표현법도 제공한다
a += 5;
이는 곱하기, 나누기, 나머지 등의 모든 연산자에 적용이 가능하다.
길이 변형 후 사각형 넓이 구하기
직사각형의 가로와 세로의 길이를 정수형 값으로 입력받은 후 가로의 길이는 8 증가시키고 세로의 길이는 3배하여 저장한 후 가로의 길이, 세로의 길이, 넓이를 차례로 출력하는 프로그램을 작성해주세요.
#include <iostream> using namespace std; int main(){ int row, col; cin >> row >> col; cout << row + 8 << endl << col * 3 << endl << (row+8) * (col*3); return 0; }
두수의 곱과 몫
두 개의 정수를 입력받아 곱과 몫을 출력하는 프로그램을 작성해보세요.
#include <iostream> using namespace std; int main(){ int a,b; cin >> a >> b; cout << a << " * " << b << " = " << a * b << endl; cout << a << " / " << b << " = " << a / b; return 0; }
몫과 나머지
두 정수를 입력받아서 나눈 몫과 나머지를 출력하는 프로그램을 작성해주세요.
#include <iostream> using namespace std; int main(){ int a,b; cin >> a >> b; cout << a/b << "..."<< a%b; return 0; }
입력받아 연산하기
정수 2개를 입력받아서 첫 번째 수에는 87을 증가시켜 저장하고 두 번째 수는 10으로 나눈 나머지를 저장한 후 두 수를 차례로 출력하는 프로그램을 작성해주세요.
#include <iostream> using namespace std; int main(){ int a,b; cin >> a >> b; a += 87; b %=10; cout << a << endl << b; return 0; }
2개의 정수를 서로 더하기
2개의 정수 a, b를 입력받아 b를 a에 더한 후, 다시 a를 b에 더한 뒤의 결과를 출력하는 프로그램을 작성해주세요.
예를 들어 a = 1, b = 3이었다면
- b를 a에 더하게 되어 a = 4, b = 3 이 되고
- 그 이후 a를 b에 더하게 되어 a = 4, b = 7이 됩니다.
#include <iostream> using namespace std; int main(){ int a,b; cin >> a >> b; a += b; b += a; cout << a << ' '<< b; return 0; }
합과 차의 나눗셈
두 정수 a, b 를 입력받고,
a + b
를a - b
으로 나눈 값을 소수점 둘 째 자리까지 출력하는 프로그램을 작성해보세요.#include <iostream> using namespace std; int main(){ int a,b; cin >> a >> b; cout << fixed; cout.precision(2); cout << (double)(a+b)/(a-b); return 0; }
연산하는 정수를 실수(double)로 type을 변형시켜야 한다.
'데일리 codeup > 연산자' 카테고리의 다른 글
합과 평균_220701 (0) 2022.07.01