본문 바로가기

Computer Science/PS60

[PS] 2576. 홀수 1) 문제: 2576. 홀수 2) 나의 첫 풀이 홀수를 구별하는 코드를 먼저 작성한 뒤, 홀수들을 대상으로 합을 구하는 변수 sum을 만들고 min 함수를 사용하여 가장 작은 값을 출력하는 코드를 작성할 생각이다. #include using namespace std; int main() { int a, b, c, d, e, f, g; cin >> a >> b >> c >> d >> e >> f >> g; int sum = 0; // 100보다 작은 자연수인 경우로 제한 if(a && b && c && d && e && f && g < 100) { if(a%2!=0) { sum += a; } else if(b%2!=0) { sum += b; } else if(c%2!=0) { sum += c; } else.. 2023. 12. 13.
[PS] 2490. 윷놀이 1) 문제: 2490. 윷놀이 2) 나의 첫 풀이 if문을 실행할 것이다. if 문 안에 입력을 받는 cin > a >> b >> c >> d; 위와 같은 순서로 입력하면 오류가 발생하지만 아래의 순서로 코드를 작성하면 오류가 발생하지 않는다. 왜 일까?? int a, b, c, d; cin >> a >> b >> c >> d; int sum = a + b + c + d; C++ 코드에서 변수를 사용하기 전에 그 값을 초기화해야 하는데 첫번째 코드의 경우 변수(a, b, c, d)를 초기화하지 않고 있다. 따라서 sum을 계산하는 시점에서 이 변수들은 쓰레기 값(garbage value)을 가지고 있을 것이기에 오류가 발생한다. #include using namespace std; int main() {.. 2023. 12. 11.
[PS] 12월 1주차 복습 1) precision 함수 precision() 함수란? cout.precision(n) 은 실수를 n자리 만큼만 출력하게 한다. double a = 1234.5678; std::cout.precision(6); std::cout < a; 위 예시는 결과적으로* "1234.57" *을 출력한다. 1234.5678 중 6자리 만 출력하고 끝에서 반올림 *한 것이다. 문제에서 상대오차의 범위를 지정해주었기 때문에 precision() 함수를 사용하지 않으면 나머지가 무한대로 나오기 때문에 문제가 되는 것이다. 따라서 무한대로 발생하는 나머지의 문제를 막기위해 precision() 함수를 활용하는 것이다. [PS] 1008. A/B 1) 문제: 1008. A/B 2) 나의 첫 풀이// // main.cpp .. 2023. 12. 10.
[PS] 2480. 주사위 세개 1) 문제: 2480. 주사위 세개 2) 나의 첫 풀이 우선 3개의 숫자를 입력받고, 추후에 경우를 나누어 해당 케이스에서 연산을 하는 방법을 떠올렸다. 3개의 숫자를 입력 받는다. 같은 눈이 3개 나오는 경우 해당 눈을 활용한 계산 같은 눈이 2개 나오는 경우 2개 나온 눈을 활용한 계산 모두 다른 눈이 나오는 경우 가장 큰 눈을 활용한 계산 #include using namespace std; int main() { int a, b, c; cin >> a >> b >> c; if(a==b && b==c) // a, b, c 모두 같은 경우 cout 2023. 12. 10.
[PS] 2752. 세수정렬 1) 문제: 2752. 세수정렬 2) 나의 첫 풀이 바킹독 해설 별해를 보니, sort 함수를 활용해 문제를 풀었길래 sort 함수를 활용해 보았다. #include #include using namespace std; int main() { int arr[4]; for(int i=0; i> arr[i]; } sort(arr, arr+3); for(int i=0; i 2023. 12. 10.
반응형