1ν•™λ…„ (2023)/C μ–Έμ–΄

[C] C Study mini project_1주차: 반볡문

waterproof 2023. 7. 11. 00:00

 

 

 


[1] 문제

 

문제 μ„€λͺ…

μ‚¬μš©μžλ‘œλΆ€ν„° μ •μˆ˜ x,yλ₯Ό μž…λ ₯λ°›μ•„μ„œ xμ—μ„œ yκΉŒμ§€μ˜ 합을 κ΅¬ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜λΌ.

 

μž…μΆœλ ₯ μ˜ˆμ‹œ

 

 

 


[2] μ •λ‹΅

 

μ½”λ“œ

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
 
int main(void)
{
    int i, x, y, sum;
 
    printf("μ‹œμž‘ μ •μˆ˜: ");
    scanf("%d"&x);
    printf("μ’…λ£Œ μ •μˆ˜: ");
    scanf("%d"&y);
 
    sum = 0;
 
    for (i = x; i < y+1 ; i++) {
        sum += i;
    }
 
    printf("%d μ—μ„œ %d κΉŒμ§€μ˜ ν•© : %d", x, y, sum );
 
    return 0;
 
}
cs

 

μ½˜μ†” μ°½

 

 
 
 

[3] 해석

 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
 
int main(void)
{
    int i, x, y, sum;
 
    printf("μ‹œμž‘ μ •μˆ˜: ");  // μ‚¬μš©μžμ—κ²Œ μ‹œμž‘ μ •μˆ˜λ₯Ό μž…λ ₯λ°›κΈ° μœ„ν•œ μ•ˆλ‚΄ λ©”μ‹œμ§€ μΆœλ ₯
    scanf("%d"&x);       // μ‚¬μš©μžλ‘œλΆ€ν„° μ‹œμž‘ μ •μˆ˜λ₯Ό μž…λ ₯λ°›μŒ
 
    printf("μ’…λ£Œ μ •μˆ˜: ");  // μ‚¬μš©μžμ—κ²Œ μ’…λ£Œ μ •μˆ˜λ₯Ό μž…λ ₯λ°›κΈ° μœ„ν•œ μ•ˆλ‚΄ λ©”μ‹œμ§€ μΆœλ ₯
    scanf("%d"&y);       // μ‚¬μš©μžλ‘œλΆ€ν„° μ’…λ£Œ μ •μˆ˜λ₯Ό μž…λ ₯λ°›μŒ
 
    sum = 0;  // ν•©κ³„λ₯Ό μ΄ˆκΈ°ν™”
 
    for (i = x; i <= y; i++) {
        sum += i;  // μ‹œμž‘ μ •μˆ˜λΆ€ν„° μ’…λ£Œ μ •μˆ˜κΉŒμ§€μ˜ μ •μˆ˜λ₯Ό sum에 λ”함
    }
 
    printf("%d μ—μ„œ %d κΉŒμ§€μ˜ ν•© : %d", x, y, sum);  // μ‹œμž‘ μ •μˆ˜λΆ€ν„° μ’…λ£Œ μ •μˆ˜κΉŒμ§€μ˜ ν•©κ³„ μΆœλ ₯
 
    return 0;
}
cs

 

이 μ½”λ“œλŠ” λ‹€μŒκ³Ό 같은 λ™μž‘μ„ μˆ˜ν–‰ν•œλ‹€:

 

  1. _CRT_SECURE_NO_WARNINGSλŠ” μ»΄νŒŒμΌλŸ¬μ—κ²Œ νŠΉμ • κ²½κ³ λ₯Ό λ¬΄μ‹œν•˜λ„λ‘ μ§€μ‹œν•˜λŠ” μ§€μ‹œμžμ΄λ‹€.
  2. stdio.h 헀더 νŒŒμΌμ€ ν‘œμ€€ μž…λ ₯ 및 좜λ ₯ ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜κΈ° μœ„ν•΄ ν¬ν•¨λœλ‹€.
  3. main ν•¨μˆ˜λŠ” ν”„λ‘œκ·Έλž¨μ˜ μ§„μž…μ μ΄λ‹€.
  4. λ³€μˆ˜ i, x, y, sum을 μ„ μ–Έν•œλ‹€. 각각은 반볡문의 μ œμ–΄ λ³€μˆ˜μ™€ μ‹œμž‘ μ •μˆ˜, μ’…λ£Œ μ •μˆ˜, 합계λ₯Ό μ €μž₯ν•˜λŠ” λ³€μˆ˜μ΄λ‹€.
  5. printf ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜μ—¬ "μ‹œμž‘ μ •μˆ˜: " λ©”μ‹œμ§€λ₯Ό 좜λ ₯ν•˜κ³ , scanf ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜μ—¬ μ‚¬μš©μžλ‘œλΆ€ν„° μ‹œμž‘ μ •μˆ˜λ₯Ό μž…λ ₯λ°›λŠ”λ‹€.
  6. printf ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜μ—¬ "μ’…λ£Œ μ •μˆ˜: " λ©”μ‹œμ§€λ₯Ό 좜λ ₯ν•˜κ³ , scanf ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜μ—¬ μ‚¬μš©μžλ‘œλΆ€ν„° μ’…λ£Œ μ •μˆ˜λ₯Ό μž…λ ₯λ°›λŠ”λ‹€.
  7. 합계λ₯Ό λ‚˜νƒ€λ‚΄λŠ” λ³€μˆ˜ sum을 0으둜 μ΄ˆκΈ°ν™”ν•œλ‹€.
  8. for λ°˜λ³΅λ¬Έμ„ μ‚¬μš©ν•˜μ—¬ μ‹œμž‘ μ •μˆ˜λΆ€ν„° μ’…λ£Œ μ •μˆ˜κΉŒμ§€μ˜ λ²”μœ„μ—μ„œ 각 μ •μˆ˜λ₯Ό λ”ν•˜μ—¬ 합계λ₯Ό κ³„μ‚°ν•œλ‹€.
  9. printf ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜μ—¬ "μ‹œμž‘ μ •μˆ˜μ—μ„œ μ’…λ£Œ μ •μˆ˜κΉŒμ§€μ˜ ν•©: " λ©”μ‹œμ§€μ™€ κ³„μ‚°λœ 합계λ₯Ό 좜λ ₯ν•œλ‹€.
  10. return 0;을 톡해 ν”„λ‘œκ·Έλž¨μ˜ μ’…λ£Œλ₯Ό λ‚˜νƒ€λ‚Έλ‹€.

 

이 μ½”λ“œλŠ” μ‚¬μš©μžλ‘œλΆ€ν„° μ‹œμž‘ μ •μˆ˜μ™€ μ’…λ£Œ μ •μˆ˜λ₯Ό μž…λ ₯λ°›μ•„ ν•΄λ‹Ή λ²”μœ„ λ‚΄μ˜ λͺ¨λ“  μ •μˆ˜μ˜ 합계λ₯Ό κ³„μ‚°ν•˜μ—¬ 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ΄λ‹€.

 

 

 

[4] 풀이 및 μ˜€λ‹΅

 

βœ”οΈ sum = x; 둜 μ΄ˆκΈ°ν™” ν•΄μ£Όμ—ˆλ‹€. → sum = 0; 으둜 μ΄ˆκΈ°ν™”ν•˜λŠ” κ²ƒμœΌλ‘œ κ³ μ³μ£Όμ—ˆλ‹€.

 

βœ”οΈ for (i = x, i < y+1 , i++;) 라고 μ½”λ“œλ₯Ό μΌμ—ˆλ‹€. (문법이 κΈ°μ–΅ μ•ˆ λ‚˜μ„œ 말도 μ•ˆ 되게 μ μ—ˆμ—ˆλ‹€...) → for (i = x; i < y+1 ; i++) 둜 κ³ μ³μ£Όμ—ˆλ‹€.

 

βœ”οΈ sum = sum + 1; 이라고 μΌμ—ˆλ‹€. → sum = sum + i; 둜 κ³ μ³μ£Όμ—ˆλ‹€. μ•„λ§ˆ μˆ˜μ—… μ‹œκ°„μ— λ°°μ› λ˜ λ‚΄μš©μ„ μ œλŒ€λ‘œ μ΄ν•΄ν•˜μ§€ μ•Šκ³  μ΄λ―Έμ§€λ‘œ κΈ°μ–΅ν•΄μ„œ i λŒ€μ‹  1을 μ“΄ 것 κ°™λ‹€ 

 

βœ”οΈ return 0; 을 μ–Έμ œ μ¨μ•Όν•˜κ³  μ–Έμ œ 쓰지 μ•Šμ•„λ„ λ˜λŠ” 건지 아직 잘 λͺ¨λ₯΄κ² λ‹€. → ν•¨μˆ˜ 단원을 λ‹€λ£° λ•Œ λ‹€μ‹œ κ³΅λΆ€ν•˜λ„λ‘ ν•˜κ² λ‹€.

 

 

 


[5] μΆ”κ°€ ν•™μŠ΅

 

λ°˜λ³΅λ¬Έμ„ κ³΅λΆ€ν•œ λ‚΄μš©μ„ ν‹°μŠ€ν† λ¦¬μ— μ •λ¦¬ν•΄μ„œ 올린 λ’€ 링크λ₯Ό μ²¨λΆ€ν•˜κ² λ‹€.

 

 

 


[6] λŠλ‚€ 점

 

βœ”οΈ μ•Œκ³ λ¦¬μ¦˜μ€ μ–΄λ ΅λ‹€... μˆ˜μ—… μ‹œκ°„μ— κ΅μˆ˜λ‹˜ μ„€λͺ…을 λ“£κ³  μ΄ν•΄ν–ˆλ‹€κ³  μƒκ°ν•˜κ³  λ„˜μ–΄κ°”μ—ˆλŠ”λ°, 막상 μž…μΆœλ ₯ μ˜ˆμ‹œλ§Œ λ³΄κ³ μ„œ λ‚˜ 혼자 μ½”λ“œλ₯Ό μ§œλ €λ‹ˆκΉŒ νž˜λ“€μ—ˆλ‹€.