์ƒ์„ธ ์ปจํ…์ธ 

๋ณธ๋ฌธ ์ œ๋ชฉ

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค LV.0 _ Swift] Day34 ๐Ÿ”บ์ œ๊ณฑ์ˆ˜ ํŒ๋ณ„ํ•˜๊ธฐ

โŒจ๏ธ Cording Test/Programmers

by AHN.Jihyeon 2024. 6. 5. 10:02

๋ณธ๋ฌธ


 

๐Ÿ“„ ๋ฌธ์ œ 1. ์ œ๊ณฑ์ˆ˜ ํŒ๋ณ„ํ•˜๊ธฐ

๐Ÿ”— ๋ฌธ์ œ ๋งํฌ : https://school.programmers.co.kr/learn/courses/30/lessons/120909

 

 

 

 

 

โœ…  ์ œ์ถœ ์ฝ”๋“œ

import Foundation

func solution(_ n:Int) -> Int {
    /* ์ฐธ๊ณ  ๊ฐœ๋…
    ์ œ๊ณฑ์ˆ˜ : ์ž์—ฐ์ˆ˜๋ฅผ ์ œ๊ณฑํ–ˆ์„ ๋•Œ ๋‚˜์˜ค๋Š” ์ˆ˜
    pow(๋ฐ‘, ์ง€์ˆ˜)
    
    ์ œ๊ณฑ๊ทผ : ์–ด๋–ค ์ˆ˜ x๋ฅผ ์ œ๊ณฑํ•˜์—ฌ a๊ฐ€ ๋˜์—ˆ์„ ๋•Œ์˜ x๊ฐ’
    sqrt(Double ํƒ€์ž…)
    */
    
    //ํ’€์ด ๊ณผ์ • 
    var count = 1
    
    while count < n {  
        if count * count == n {     //count๋ฅผ ์ œ๊ณฑํ•œ ๊ฐ’์ด n๊ณผ ๊ฐ™๋‹ค๋ฉด, n์€ ์ œ๊ณฑ์ˆ˜์ด๋ฏ€๋กœ 1์„ ๋ฐ˜ํ™˜
            return 1
        } else {count += 1}
    }
    return 2      //๋ฐ˜๋ณต๋ฌธ์ด ์ข…๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ์ œ๊ณฑ์ˆ˜๋ฅผ ์ฐพ์ง€ ๋ชปํ–ˆ๋‹ค๋ฉด 2๋ฅผ ๋ฐ˜ํ™˜
}

 

๋ฐ˜๋ณต๋ฌธ for๋ฌธ๊ณผ while๋ฌธ ์ค‘ while๋ฌธ์„ ์„ ํƒํ•œ ์ด์œ ?

while๋ฌธ์€ ๋ฐ˜๋ณต ํšŸ์ˆ˜๊ฐ€ ๋ช…ํ™•ํ•˜์ง€ ์•Š๊ณ  ์กฐ๊ฑด์ด false์ผ ๋•Œ๊นŒ์ง€ ์ˆ˜ํ–‰ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ ํ•ฉํ•˜๋‹ค๊ณ  ํŒ๋‹จ๋˜์—ˆ๋‹ค. 

 

๊ฐ„๋‹จํ•˜๊ฒŒ ๋น„๊ต๋ฅผ ํ•ด๋ณด์ž๋ฉด, 

  • for๋ฌธ
    - ์ดˆ๊ธฐ ์กฐ๊ฑด๊ณผ ๋ฐ˜๋ณต ํšŸ์ˆ˜ ๋ช…ํ™•ํ•  ๋•Œ
    - ์ปฌ๋ ‰์…˜์„ ์ˆœํšŒํ•  ๋•Œ
  • while๋ฌธ
    - ์กฐ๊ฑด์ด ๋ช…ํ™•ํ•˜์ง€ ์•Š์„ ๋•Œ 
    - ์กฐ๊ฑด์ด true๊ฐ€ ๋  ๋•Œ ๊นŒ์ง€ ๋ฐ˜๋ณต 
    - ์กฐ๊ฑด์ด false๊ฐ€ ๋˜๊ฑฐ๋‚˜ break๋ฌธ์„ ๋งŒ๋‚  ๋•Œ ์ข…๋ฃŒ 

 

 

 

๐Ÿ‘€  ๋‹ค๋ฅธ ํ’€์ด ๋ถ„์„

  •  ์ œ๊ณฑ์ˆ˜ : ์ž์—ฐ์ˆ˜๋ฅผ ์ œ๊ณฑํ–ˆ์„ ๋•Œ ๋‚˜์˜ค๋Š” ์ˆ˜
        pow(๋ฐ‘, ์ง€์ˆ˜)

  • ์ œ๊ณฑ๊ทผ : ์–ด๋–ค ์ˆ˜ x๋ฅผ ์ œ๊ณฑํ•˜์—ฌ a๊ฐ€ ๋˜์—ˆ์„ ๋•Œ์˜ x๊ฐ’
        sqrt(Double ํƒ€์ž…)

 

 

1. n์„ Double ํƒ€์ž…์œผ๋กœ ๋ณ€ํ™˜ํ•˜์—ฌ sqrt ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ์ œ๊ณฑ๊ทผ์„ ๊ตฌํ•œ๋‹ค.

 

2.๊ตฌํ•œ ์ œ๊ณฑ๊ทผ๊ณผ ๊ตฌํ•œ ์ œ๊ณฑ๊ทผ์„ Int๋กœ ๋ณ€ํ™˜ ํ›„ Double๋กœ ๋ณ€ํ™˜ ์‹œ์ผœ ์ค€ ๊ฐ’์ด ๊ฐ™๋‹ค๋Š” ์˜๋ฏธ๋Š”

์›๋ž˜์˜ ์ œ๊ณฑ๊ทผ์ด ์ •์ˆ˜์ธ์ง€๋ฅผ ํŒ๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋‹ค. 

 

์˜ˆ๋ฅผ ๋“ค์–ด, n์ด 9๋ผ๋ฉด sqrt(9)๋Š” 3.0์ด๊ณ , Int(3.0)๋Š” 3, Double(3)์€ 3.0์ด๋‹ค.

๋‘ ๊ฐ’์ด ๊ฐ™์œผ๋ฏ€๋กœ n์€ ์ œ๊ณฑ์ˆ˜์ธ ๊ฒƒ์ด๋‹ค.

 

 

๊ฐ„๋‹จํ•œ ํ•จ์ˆ˜๊ฐ€ ์žˆ์—ˆ์ง€๋งŒ, ๊ธฐ์ดˆ์ ์ธ ์ œ๊ณฑ๊ทผ์˜ ๊ฐœ๋… ์ดํ•ด๊ฐ€ ๋ถ€์กฑํ•ด

ํ’€์ง€ ๋ชปํ–ˆ๋˜ ๋ฌธ์ œ ๊ฐ™๋‹ค... ์ œ๋Œ€๋กœ ์ดํ•ดํ•ด์„œ ์•ž์œผ๋กœ ์ ์šฉํ•ด์„œ ๋‹ค๋ฅธ ๋ฌธ์ œ๋„ ํ’€์–ด ๋ณผ ๊ฒƒ!

๊ด€๋ จ๊ธ€ ๋”๋ณด๊ธฐ