๐Ÿ“ TIL: ๋Œ€์†Œ๋ฌธ์ž ๋ณ€ํ™˜ ํ”„๋กœ๊ทธ๋žจ

jeongmuyametteยท2024๋…„ 11์›” 21์ผ

TIL

๋ชฉ๋ก ๋ณด๊ธฐ
3/72
post-thumbnail

๐Ÿ“ TIL: ๋Œ€์†Œ๋ฌธ์ž ๋ณ€ํ™˜ ํ”„๋กœ๊ทธ๋žจ

๐ŸŽฏ ๋ฌธ์ œ ์„ค๋ช…

  • ์˜์–ด ์•ŒํŒŒ๋ฒณ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฌธ์ž์—ด์„ ์ž…๋ ฅ๋ฐ›์•„
  • ๋Œ€๋ฌธ์ž๋Š” ์†Œ๋ฌธ์ž๋กœ, ์†Œ๋ฌธ์ž๋Š” ๋Œ€๋ฌธ์ž๋กœ ๋ณ€ํ™˜ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ ์ž‘์„ฑ

โšก๏ธ ์ œํ•œ์‚ฌํ•ญ

  • 1 โ‰ค ๋ฌธ์ž์—ด ๊ธธ์ด โ‰ค 20
  • ์ž…๋ ฅ๊ฐ’์€ ์•ŒํŒŒ๋ฒณ์œผ๋กœ๋งŒ ๊ตฌ์„ฑ

๐Ÿ“ฅ ์ž…๋ ฅ ์˜ˆ์‹œ

aBcDeFg

๐Ÿ“ค ์ถœ๋ ฅ ์˜ˆ์‹œ

AbCdEfG

๐Ÿ’ป ์ฝ”๋“œ

let s1 = readLine()!

var result = ""

for char in s1 {
    if char.isUppercase {   
        result += String(char.lowercased()) 
    } else {
        result += String(char.uppercased())
    }
}

print(result)

๐Ÿ” ์ฝ”๋“œ ์„ค๋ช…

let s1 = readLine()!
// ์‚ฌ์šฉ์ž๋กœ๋ถ€ํ„ฐ ์ฝ˜์†”์—์„œ ํ•œ ์ค„์˜ ์ž…๋ ฅ์„ ๋ฐ›์•„์„œ s1์ด๋ผ๋Š” ์ƒ์ˆ˜์— ์ €์žฅ
// ์˜ˆ: ์‚ฌ์šฉ์ž๊ฐ€ "aBcDeFg" ์ž…๋ ฅํ•˜๋ฉด s1์— "aBcDeFg"๊ฐ€ ์ €์žฅ๋จ

var result = ""
// ๋ณ€ํ™˜๋œ ๊ฒฐ๊ณผ๋ฅผ ์ €์žฅํ•  ๋นˆ ๋ฌธ์ž์—ด ๋ณ€์ˆ˜ ์ƒ์„ฑ
// ์ด ๋ณ€์ˆ˜์— ๋ณ€ํ™˜๋œ ๋ฌธ์ž๋“ค์„ ํ•˜๋‚˜์”ฉ ์ถ”๊ฐ€ํ•  ์˜ˆ์ •

for char in s1 {
    // s1 ๋ฌธ์ž์—ด์˜ ๊ฐ ๋ฌธ์ž๋ฅผ ํ•˜๋‚˜์”ฉ ์ˆœํšŒ
    // char์—๋Š” ์ˆœ์„œ๋Œ€๋กœ ๊ฐ ๋ฌธ์ž๊ฐ€ ๋‹ด๊น€ (์˜ˆ: 'a', 'B', 'c', ...)

    if char.isUppercase {  
        // ํ˜„์žฌ ๋ฌธ์ž(char)๊ฐ€ ๋Œ€๋ฌธ์ž์ธ์ง€ ํ™•์ธ
        // ์˜ˆ: 'B'๋‚˜ 'D'๊ฐ™์€ ๊ฒฝ์šฐ true
        result += String(char.lowercased())
        // ๋Œ€๋ฌธ์ž๋ฅผ ์†Œ๋ฌธ์ž๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ result์— ์ถ”๊ฐ€
        // char.lowercased()๋กœ ์†Œ๋ฌธ์ž๋กœ ๋ณ€ํ™˜
        // String()์œผ๋กœ Character๋ฅผ String์œผ๋กœ ๋ณ€ํ™˜
    } else {
        // ํ˜„์žฌ ๋ฌธ์ž๊ฐ€ ์†Œ๋ฌธ์ž์ธ ๊ฒฝ์šฐ
        result += String(char.uppercased())
        // ์†Œ๋ฌธ์ž๋ฅผ ๋Œ€๋ฌธ์ž๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ result์— ์ถ”๊ฐ€
        // char.uppercased()๋กœ ๋Œ€๋ฌธ์ž๋กœ ๋ณ€ํ™˜
    }
}

print(result)
// ์ตœ์ข…์ ์œผ๋กœ ๋ณ€ํ™˜๋œ ๋ฌธ์ž์—ด์„ ์ถœ๋ ฅ
// ์˜ˆ: ์ž…๋ ฅ์ด "aBcDeFg"์˜€๋‹ค๋ฉด "AbCdEfG" ์ถœ๋ ฅ

๐ŸŒŸ ๋ฐฐ์šด ์ 

  1. isUppercase์™€ isLowercase๋ฅผ ํ†ตํ•œ ๋Œ€์†Œ๋ฌธ์ž ํŒ๋ณ„
  2. uppercased()์™€ lowercased()๋ฅผ ์ด์šฉํ•œ ๋ฌธ์ž ๋ณ€ํ™˜
  3. ๋ฌธ์ž์—ด ์ˆœํšŒ์™€ ๋ฌธ์ž ๋ณ€ํ™˜ ์ฒ˜๋ฆฌ ๋ฐฉ๋ฒ•
  4. String ์—ฐ์‚ฐ๊ณผ ๋ฌธ์ž์—ด ๋ˆ„์  ๋ฐฉ๋ฒ•

๐Ÿ”‘ ์ฃผ์š” ๊ฐœ๋…

  • ๋ฌธ์ž์—ด ์ˆœํšŒ
  • ๋ฌธ์ž ๋Œ€์†Œ๋ฌธ์ž ๋ณ€ํ™˜
  • ์กฐ๊ฑด๋ฌธ์„ ํ†ตํ•œ ๋ถ„๊ธฐ ์ฒ˜๋ฆฌ
  • ๋ฌธ์ž์—ด ๋ˆ„์ 

๐Ÿ’ป ๋ฉ”์„œ๋“œ

  • uppercased(): ๋Œ€๋ฌธ์ž๋กœ ๋ณ€ํ™˜

  • lowercased(): ์†Œ๋ฌธ์ž๋กœ ๋ณ€ํ™˜

  • isUppercase: ๋Œ€๋ฌธ์ž์ธ์ง€ ํ™•์ธ

  • isLowercase: ์†Œ๋ฌธ์ž์ธ์ง€ ํ™•์ธ

profile
์–‘์ •๋ฌด

0๊ฐœ์˜ ๋Œ“๊ธ€