백준 알고리즘 문제로 C++ 기초 학습 - 1
https://www.acmicpc.net/problem/2438
2438번: 별 찍기 - 1
첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제
www.acmicpc.net
#include <iostream>
using namespace std;
int main()
{
int index;
cin >> index;
for (int i = 0; i < index; i++)
{
for (int j = 0; j < i + 1; j++)
{
cout << "*";
}
cout << endl;
}
}
https://www.acmicpc.net/problem/2739
2739번: 구구단
N을 입력받은 뒤, 구구단 N단을 출력하는 프로그램을 작성하시오. 출력 형식에 맞춰서 출력하면 된다.
www.acmicpc.net
#include <iostream>
using namespace std;
int main()
{
int dan;
cin >> dan;
for (int i = 1; i <= 9; i++)
{
cout << dan << " * " << i << " = " << dan * i << endl;
}
cout << endl;
}
https://www.acmicpc.net/problem/2742
2742번: 기찍 N
자연수 N이 주어졌을 때, N부터 1까지 한 줄에 하나씩 출력하는 프로그램을 작성하시오.
www.acmicpc.net
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
for (int i = n; i > 0; i--) {
cout << i << "\n";
}
}
https://www.acmicpc.net/problem/2439
2439번: 별 찍기 - 2
첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오.
www.acmicpc.net
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
for (int i = 1; i <= n; i++)
{
for (int k = 1; k <= n - i; k++) {
cout << " ";
}
for (int j = 1; j < i + 1; j++)
{
cout << "*";
}
cout << "\n";
}
}
https://www.acmicpc.net/problem/2440
2440번: 별 찍기 - 3
첫째 줄에는 별 N개, 둘째 줄에는 별 N-1개, ..., N번째 줄에는 별 1개를 찍는 문제
www.acmicpc.net
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
for (int i = 0; i < n; i++) {
for (int j = n; j > i; j--) {
cout << "*";
}
cout << "\n";
}
}
https://www.acmicpc.net/problem/2441
2441번: 별 찍기 - 4
첫째 줄에는 별 N개, 둘째 줄에는 별 N-1개, ..., N번째 줄에는 별 1개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오.
www.acmicpc.net
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
for (int i = n; i > 0; i--) {
for (int k = n; k > i; k--) {
cout << " ";
}
for (int j = 0; j < i; j++) {
cout << "*";
}
cout << "\n";
}
}
https://www.acmicpc.net/problem/9498
9498번: 시험 성적
시험 점수를 입력받아 90 ~ 100점은 A, 80 ~ 89점은 B, 70 ~ 79점은 C, 60 ~ 69점은 D, 나머지 점수는 F를 출력하는 프로그램을 작성하시오.
www.acmicpc.net
#include <iostream>
using namespace std;
int main()
{
int score;
cin >> score;
if (score >= 90) {
cout << "A";
}
else if (score >= 80) {
cout << "B";
}
else if (score >= 70) {
cout << "C";
}
else if (score >= 60) {
cout << "D";
}
else
cout << "F";
}
https://www.acmicpc.net/problem/8393
8393번: 합
n이 주어졌을 때, 1부터 n까지 합을 구하는 프로그램을 작성하시오.
www.acmicpc.net
#include <iostream>
using namespace std;
int main()
{
int n;
int sum = 0;
cin >> n;
for (int i = 1; i <= n; i++) {
sum += i;
}
cout << sum;
}
https://www.acmicpc.net/problem/1924
1924번: 2007년
첫째 줄에 빈 칸을 사이에 두고 x(1 ≤ x ≤ 12)와 y(1 ≤ y ≤ 31)이 주어진다. 참고로 2007년에는 1, 3, 5, 7, 8, 10, 12월은 31일까지, 4, 6, 9, 11월은 30일까지, 2월은 28일까지 있다.
www.acmicpc.net
#include <iostream>
using namespace std;
int main()
{
int month;
int day;
int daysOfMonth[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
string days[7] = { "SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT" };
cin >> month >> day;
for (int i = 1; i < month; i++) {
day += daysOfMonth[i];
}
cout << days[day % 7];
}
https://www.acmicpc.net/problem/10871
10871번: X보다 작은 수
첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다.
www.acmicpc.net