-
JUNGOL...14일지 2020. 10. 27. 20:52
Language_Code/반복제어문1/형성평가1
문제
정수를 입력받아 1부터 입력받은 정수까지를 차례대로 출력하는 프로그램을 작성하시오.
입력 예
5
출력 예
1 2 3 4 5
FormativeLoop101.h
#include <iostream>
FormativeLoop101.cpp
void FormativeLoop101::Code() { int var; std::cin >> var; for (int i = 1; i <= var; i++) { std::cout << i << ' '; } }
Language_Code/반복제어문1/형성평가2
문제
0 이상의 정수들이 공백으로 구분되어 반복적으로 주어진다.
0이 입력되면 반복문을 멈추고 그 전까지 입력받은 수들에 대하여
홀수의 개수와 짝수의 개수를 출력하는 프로그램을 작성하시오.
입력 예
9 7 10 5 33 65 0
출력 예
odd : 5
even : 1
FormativeLoop102.h
#include <iostream>
FormativeLoop102.cpp
void FormativeLoop102::Code() { int var; int odd{ 0 }, even{ 0 }; while (true) { std::cin >> var; if (var == 0) { break; } if (var % 2 == 0) { even++; } else { odd++; } } std::cout << "odd : " << odd << '\n'; std::cout << "even : " << even; }
Language_Code/반복제어문1/형성평가3
문제
0 부터 100 까지의 점수를 계속 입력받다가 범위를 벗어나는 수가 입력되면 그 이전까지 입력된 자료의 합계와 평균을 출력하는 프로그램을 작성하시오. (평균은 반올림하여 소수 첫째자리까지 출력한다.)
입력 예
55 100 48 36 0 101
출력 예
sum : 239
avg : 47.8
FormativeLoop103.h
#include <iostream>
FormativeLoop103.cpp
void FormativeLoop103::Code() { int var; int sum{ 0 }, count{ 0 }; while (true) { std::cin >> var; if (var < 0 || 100 < var) { break; } sum += var; count++; } float avg{ static_cast<float>(sum) / count }; std::cout.precision(1); std::cout.setf(std::ios::fixed); std::cout << "sum : " << sum << '\n'; std::cout << "avg : " << avg; }
Language_Code/반복제어문1/형성평가4
문제
0 이 입력될 때까지 정수를 계속 입력받아 3의 배수와 5의 배수를 제외한 수들의 개수를 출력하는 프로그램을 작성하시오.
입력 예
1 2 3 4 5 6 7 8 9 10 0
출력 예
5
FormativeLoop104.h
#include <iostream>
FormativeLoop104.cpp
void FormativeLoop104::Code() { int var; int count{ 0 }; while (true) { std::cin >> var; if (var == 0) { break; } if (var % 3 != 0 && var % 5 != 0) { count++; } } std::cout << count; }
Language_Code/반복제어문1/형성평가5
문제
삼각형의 밑변의 길이와 높이를 입력받아 넓이를 출력하고, "Continue? "에서 하나의 문자를 입력받아 그 문자가 'Y' 나 'y' 이면 작업을 반복하고 다른 문자이면 종료하는 프로그램을 작성하시오.
(넓이는 반올림하여 소수 첫째자리까지 출력한다.)
입·출력 예
Base = 11
Height = 5
Triangle width = 27.5
Continue? Y
Base = 10
Height = 10
Triangle width = 50.0
Continue? N
Hint!
문자를 입력받을 때에는 %c 앞에 공백을 넣어 주어야 엔터, 공백과 같은 구분자를 입력받지 않고 한 개의 문자를 입력받을 수 있다. 예 : scanf(" %c", &문자변수);
FormativeLoop105.h
#include <iostream>
FormativeLoop105.cpp
void FormativeLoop105::Code() { char ch{ 'Y' }; int base, height; std::cout.precision(1); std::cout.setf(std::ios::fixed); while (ch == 'Y' || ch == 'y') { std::cout << "Base = "; std::cin >> base; std::cout << "Height = "; std::cin >> height; float width = base * height * 0.5f; std::cout << "Triangle width = " << width << '\n'; std::cout << "Continue? "; std::cin >> ch; } }
NadanKim/CodingTest_JUNGOL: JUNGOL 코딩 테스트를 위한 저장소 (github.com)