SWLUG/ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์Šค์ฟจ (C)

[C] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์Šค์ฟจ_5์ฃผ์ฐจ ๋ฌธ์ œ 1: ํŽธ์ง€

waterproof 2023. 8. 4. 16:32


[1] ๋ฌธ์ œ

 

๋ฌธ์ œ ์„ค๋ช…

๋จธ์“ฑ์ด๋Š” ํ• ๋จธ๋‹ˆ๊ป˜ ์ƒ์‹  ์ถ•ํ•˜ ํŽธ์ง€๋ฅผ ์“ฐ๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ํ• ๋จธ๋‹ˆ๊ฐ€ ๋ณด์‹œ๊ธฐ ํŽธํ•˜๋„๋ก ๊ธ€์ž ํ•œ ์ž ํ•œ ์ž๋ฅผ ๊ฐ€๋กœ 2cm ํฌ๊ธฐ๋กœ ์ ์œผ๋ ค๊ณ  ํ•˜๋ฉฐ, ํŽธ์ง€๋ฅผ ๊ฐ€๋กœ๋กœ๋งŒ ์ ์„ ๋•Œ, ์ถ•ํ•˜ ๋ฌธ๊ตฌ message๋ฅผ ์ ๊ธฐ ์œ„ํ•ด ํ•„์š”ํ•œ ํŽธ์ง€์ง€์˜ ์ตœ์†Œ ๊ฐ€๋กœ๊ธธ์ด๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด์ฃผ์„ธ์š”.

 

์ œํ•œ์‚ฌํ•ญ

  • ๊ณต๋ฐฑ๋„ ํ•˜๋‚˜์˜ ๋ฌธ์ž๋กœ ์ทจ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค.
  • 1 ≤ message์˜ ๊ธธ์ด ≤ 50
  • ํŽธ์ง€์ง€์˜ ์—ฌ๋ฐฑ์€ ์ƒ๊ฐํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  • message๋Š” ์˜๋ฌธ ์•ŒํŒŒ๋ฒณ ๋Œ€์†Œ๋ฌธ์ž, ‘!’, ‘~’ ๋˜๋Š” ๊ณต๋ฐฑ์œผ๋กœ๋งŒ ์ด๋ฃจ์–ด์ ธ ์žˆ์Šต๋‹ˆ๋‹ค.

 

์ž…์ถœ๋ ฅ ์˜ˆ

 

message result
"happy birthday!" 30
"I love you~" 20

 

์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช…

์ž…์ถœ๋ ฅ ์˜ˆ #1

  • message์˜ ๊ธ€์ž ์ˆ˜๊ฐ€ 15๊ฐœ๋กœ ์ตœ์†Œ ๊ฐ€๋กœ 30cm์˜ ํŽธ์ง€์ง€๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ #2

  • message์˜ ๊ธ€์ž ์ˆ˜๊ฐ€ 11๊ฐœ๋กœ ์ตœ์†Œ ๊ฐ€๋กœ 22cm์˜ ํŽธ์ง€์ง€๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

 

 

 


[2] ์ •๋‹ต ๋ฐ ํ•ด์„

 

(1) ์ •๋‹ต ์ฝ”๋“œ

 

1
2
3
4
5
6
7
8
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
#include <string.h>
 
int solution(const char* message) {
    return strlen(message) * 2;
}
cs

 

 

 

(2) ํ•ด์„

 

1
int solution(const char* message) {
cs

 

  • int: ํ•จ์ˆ˜์˜ ๋ฐ˜ํ™˜ ํƒ€์ž…์„ ๋‚˜ํƒ€๋‚ธ๋‹ค. solution ํ•จ์ˆ˜๋Š” int ํƒ€์ž…์„ ๋ฐ˜ํ™˜ํ•˜๋ฏ€๋กœ ์ •์ˆ˜ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  • solution: ํ•จ์ˆ˜์˜ ์ด๋ฆ„์ด๋‹ค. ์ด ํ•จ์ˆ˜๋Š” ๋ฌธ์ œ์—์„œ ์ฃผ์–ด์ง„ ์กฐ๊ฑด์— ๋”ฐ๋ผ ๋ฌธ์ž์—ด message์˜ ์ตœ์†Œ ๊ฐ€๋กœ๊ธธ์ด๋ฅผ ๊ณ„์‚ฐํ•˜์—ฌ ๋ฐ˜ํ™˜ํ•œ๋‹ค.
  • const char* message: ํ•จ์ˆ˜์˜ ํŒŒ๋ผ๋ฏธํ„ฐ๋กœ ๋ฌธ์ž์—ด(char ํƒ€์ž…์˜ ํฌ์ธํ„ฐ)์„ ๋ฐ›๋Š”๋‹ค. const ํ‚ค์›Œ๋“œ๋Š” message๊ฐ€ ํ•จ์ˆ˜ ๋‚ด์—์„œ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š์Œ์„ ์˜๋ฏธํ•œ๋‹ค.

 

1
    return strlen(message) * 2;
cs

 

  • strlen(message): ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ•จ์ˆ˜์ด๋‹ค. message๊ฐ€ ๊ฐ€๋ฆฌํ‚ค๋Š” ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋ฅผ ๊ตฌํ•œ๋‹ค.
  • * 2: ๊ตฌํ•ด์ง„ ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋ฅผ 2๋ฐฐ๋กœ ๊ณฑํ•ด์ฃผ๋Š” ์—ฐ์‚ฐ์ด๋‹ค. ๋ฌธ์ œ์—์„œ๋Š” ๊ฐ ๋ฌธ์ž๋ฅผ ๊ฐ€๋กœ๋กœ 2cm ํฌ๊ธฐ๋กœ ์ ์œผ๋ ค๊ณ  ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๋ฌธ์ž์—ด์˜ ๊ธธ์ด๋ฅผ 2๋ฐฐ๋กœ ๊ณฑํ•˜์—ฌ ์ตœ์†Œ ๊ฐ€๋กœ๊ธธ์ด๋ฅผ ๊ตฌํ•œ๋‹ค.

 

์ด๋ ‡๊ฒŒ ๊ตฌํ˜„๋œ solution ํ•จ์ˆ˜๋Š” ์ฃผ์–ด์ง„ ๋ฌธ์ž์—ด message์˜ ๊ธธ์ด๋ฅผ 2๋ฐฐ๋กœ ๊ณฑํ•˜์—ฌ ์ตœ์†Œ ๊ฐ€๋กœ๊ธธ์ด๋ฅผ ๊ตฌํ•˜๋Š” ๊ฐ„๋‹จํ•œ ํ•จ์ˆ˜์ด๋‹ค. ์ด๋ฅผ ํ˜ธ์ถœํ•˜๋Š” main ํ•จ์ˆ˜๋ฅผ ์ž‘์„ฑํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์ž…๋ ฅ์— ๋Œ€ํ•œ ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

 

 


[4] ํ’€์ด 

 

 

 

 


[4] ๋Š๋‚€ ์ 

 

ํฌ์ธํ„ฐ, strlen ๋“ฑ์„ ์˜ค๋žœ๋งŒ์— ์ ‘ํ•ด๋ด์„œ ์ข€ ์ฐพ์•„๊ฐ€๋ฉด์„œ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ–ˆ๋‹ค.