오늘의 수업은 주어진 예제를 풀어보았다.
1. 특정숫자를 입력을 받아 1부터 입력한 숫자까지 출력하자.
(0보다 큰 수를 입력하기로 하자)
#include <iostream>
int main()
{
int nInput{};
int nData{ 1 };
scanf_s("%d", &nInput);
while(nInput >= nData)
{
printf("%d\n", nData);
nData++;
}
}
- 정수형 변수인 nInput, nData 설정
- scanf_s를 이용하여 nInput에 값을 입력받아 저장
- while문을 사용하여 nData가 nInput 하고 똑같아질 때까지 반복하여 숫자를 출력.
2. 입력한 숫자를 데이터로 나눠서 약수를 구해라.
#include <iostream>
int main()
{
int nInput{};
int nData{ 1 };
int nRemainder{};
scanf_s("%d", &nInput);
while(nInput >= nData)
{
nRemainder = nInput % nData;
if (nRemainder == 0)
printf("%d\n", nData);
nData++;
}
}
- 정수형 변수인 nInput, nData, nRemainder 설정
- scanf_s를 이용하여 nInput에 값을 입력받아 저장
- while문을 사용하여 nData가 nInput 하고 똑같아질 때까지 반복
- while문 안에 nRemainder에 nInput % nData의 값을 저장
- if문을 사용하여 nRemainder가 0이라면 그 nData값을 출력
- 이후 참이든 거짓이든 nData의 값을 증가시킨 후 while문 처음으로 돌아가서 다시 반복
3. 숫자 2개를 입력받아 총합을 구해라.
Ex) 3과 7이 들어오면 3 ~ 7의 총합 / 10과 5가 들어오면 10 ~ 5의 총합
#include <iostream>
int main()
{
int nInput1{};
int nInput2{};
int nTotal{};
int nMax{};
int nMin{};
scanf_s("%d", &nInput1);
scanf_s("%d", &nInput2);
if (nInput1 > nInput2)
{
nMax = nInput1;
nMin = nInput2;
}
else
{
nMax = nInput2;
nMin = nInput1;
}
if (nMax != nMin)
{
while (nMax >= nMin)
{
nTotal += nMin;
nMin++;
}
}
else
nTotal = nMax;
printf("총합 : %d", nTotal);
}
- 정수형 변수인 nInput1, nInput2, nTotal, nMax, nMin 설정
- scanf_s를 이용하여 nInput1, nInput2에 값을 입력받아 저장
- if를 사용하여 입력받은 값을 비교하여 큰 값은 nMax에 작은 값은 nMin에 저장
- if를 사용하여 nMax와 nMin이 같지 않다면 while문이 nMin이 nMax와 같아질 때까지 반복하여 nTotal값에 nMin을 더하고 nMin값을 1씩 증가시킴
- 만약 nMax와 nMin이 같다면 nTotal에 nMax를 넣는다. (같은 숫자라면 합은 그 숫자 자체이기 때문에)
- pritnf를 사용하여 nTotal값 출력
'C++' 카테고리의 다른 글
[강의] 8월 30일 수업정리 (0) | 2024.08.30 |
---|---|
[강의] 8월 29일 수업정리 (0) | 2024.08.29 |
[강의] 8월 27일 수업정리 (0) | 2024.08.27 |
[강의] 8월 23일 수업정리 (1) | 2024.08.23 |
[강의] 8월 22일 수업정리 (0) | 2024.08.22 |