이 글은 과제 제출 기한이 지났고 사이트 내에서 코드도 열람이 가능해졌기 때문에
풀이를 정리해도 될 것 같아 정리해보았습니다.
<안내>
필자도 배우는 입장이라 틀린점, 잘못된 점이 있을 수 있습니다.
그러니 지적, 피드백 환영합니다.
시침과 분침의 각도 구하기 문제
#include <iostream>
using namespace std;
int angleClock(int h, int m);
int main(void)
{
int t;
int h, m;
cin >> t;
for(int i=0; i<t; i++)
{
cin >> h >> m;
cout << angleClock( h, m ) << endl;
}
return 0;
}
int angleClock(int h, int m) {
double ang = (30*(double)h -5.5*(double)m);
if (ang <0){
ang = -ang;
}
if (ang > 180){
return (360 - ang);
}
else {
return ang;
}
}
내가 헷갈렸던 것 : 180도가 넘는 각도에서는 360 - ang로 해야 함. 내가 한 것 : ang - 180
끝자리 숫자 계산하기
여러 개의 자연수가 주어졌을 때, 주어진 모든 자연수를 곱한 수의 마지막 자리수(1 의 자리수)를 계산하는 프로그램을 작성하시오.
예를 들어, 세 개의 자연수 9, 314, 27 을 곱한 수의 마지막 자리수는 2 이다.
입력
입력은 표준입력(standard input)을 사용한다. 입력은 t 개의 테스트 케이스로 주어진다. 입력 파일
의 첫 번째 줄에 테스트 케이스의 개수를 나타내는 정수 t 가 주어진다. 두 번째 줄부터 t 개의 줄에
는 한 줄에 한 개의 테스트 케이스에 해당하는 정수들이 주어진다. 각 테스트 케이스에 해당되는 각
줄의 첫 번째 정수 n (1 ≤ n ≤ 100) 은 주어진 자연수의 개수를 나타낸다. 그 다음에는 n 개의 자연
수가 주어지는데, 각 자연수의 최소값은 1 이며 최대값은 231-1 이다. 같은 줄에 나열되는 각 정수들
사이에는 한 개의 공백이 있으며, 잘못된 데이터가 입력되는 경우는 없다.
출력
출력은 표준출력(standard output)을 사용한다. 입력되는 테스트 케이스의 순서대로 다음 줄에 이어
서 각 테스트 케이스의 결과를 출력한다. 각 테스트 케이스에 해당하는 출력의 첫 줄에 입력되는 n
개의 자연수를 곱한 수의 마지막 자리수를 출력한다.
#include <iostream>
using namespace std;
int main() {
int a, i, j, x, y;
cin >> x;
for (i=0; i<x; i++) {
cin >> y;
int times = 1;
for(j=0; j<y; j++) {
cin >> a;
a %= 10;
times *= a;
times %= 10;
}
cout << times << endl;
}
return 0;
}
실수한 게 있다.
for 반복문은 소괄호가 끝나고 문장을 끝내면 안됨
for (초기값; 조건; 끝나고 실행할거); {반복문}
이러면 안됨 이러면 한번 실행하고 끝남
'TIL > [C++ 프로그래밍} TIL' 카테고리의 다른 글
TIL (22.04.04) (0) | 2022.04.04 |
---|---|
TIL (22.03.30) (0) | 2022.03.30 |
TIL (22.03.28) (0) | 2022.03.28 |
TIL (22.03.23) (0) | 2022.03.23 |
TIL (22.03.21) (0) | 2022.03.21 |