티스토리 뷰

4_Loops(한글)

Loops

출처

https://github.com/JuliaComputing/JuliaBoxTutorials/tree/master/introductory-tutorials/intro-to-julia (github : JuliaComputing/JuliaBoxTutorials/introductory-tutorials/intro-to-julia/)

Topics:

  1. while 반복문
  2. for 반복문
  3. 연습문제

함께보기

while 반복문

구문:

<font color=green>while<\font> *조건*
    *반복 내용*
<font color=green>end<\font>
In [1]:
숫자 = 0
while 숫자 < 10
    숫자 += 1
    println(숫자)
end
숫자
1
2
3
4
5
6
7
8
9
10
Out[1]:
10
In [2]:
친구목록 = ["균우", "상완", "동훈", "진", "재현"]

 = 1
while  <= length(친구목록)
    친구 = 친구목록[]
    println("안녕 $친구, 만나서 반가워!")
     += 1
end
안녕 균우, 만나서 반가워!
안녕 상완, 만나서 반가워!
안녕 동훈, 만나서 반가워!
안녕 진, 만나서 반가워!
안녕 재현, 만나서 반가워!

for 반복문

구문:

<font color=green>for<\font> *변수명* <font color=green>in<\font> *반복시 변수에 넣을 목록*
    *반복 내용*
<font color=green>end<\font>
In [3]:
for  in 1:10
    println()
end
1
2
3
4
5
6
7
8
9
10
In [4]:
친구목록 = ["균우", "상완", "동훈", "진", "재현"]

for 친구 in 친구목록
    println("안녕 $친구, 만나서 반가워!")
end
안녕 균우, 만나서 반가워!
안녕 상완, 만나서 반가워!
안녕 동훈, 만나서 반가워!
안녕 진, 만나서 반가워!
안녕 재현, 만나서 반가워!

이제 for 문을 이용해서 특정 표를 만들어보자. 이 표는 각 원소가 행 위치와 열 위치의 합으로 되어있다.

먼저 표를 0값으로 이루어진 array로 선언한다.

In [5]:
,  = 5, 5
 = fill(0, (, ))
Out[5]:
5×5 Array{Int64,2}:
 0  0  0  0  0
 0  0  0  0  0
 0  0  0  0  0
 0  0  0  0  0
 0  0  0  0  0
In [6]:
for  in 1:
    for  in 1:
        [, ] =  + 
    end
end

Out[6]:
5×5 Array{Int64,2}:
 2  3  4  5   6
 3  4  5  6   7
 4  5  6  7   8
 5  6  7  8   9
 6  7  8  9  10

같은 결과를 낼 수 있는 다른 문법도 있다.

In [7]:
표2 = fill(0, (, ))
Out[7]:
5×5 Array{Int64,2}:
 0  0  0  0  0
 0  0  0  0  0
 0  0  0  0  0
 0  0  0  0  0
 0  0  0  0  0
In [8]:
for  in 1:,  in 1:
    표2[, ] =  + 
end
표2
Out[8]:
5×5 Array{Int64,2}:
 2  3  4  5   6
 3  4  5  6   7
 4  5  6  7   8
 5  6  7  8   9
 6  7  8  9  10

array 안에 반복문이 들어가있는 좀 더 "Julia"스러운 문법이 있다.

In [9]:
표3 = [ +  for  in 1:,  in 1:]
Out[9]:
5×5 Array{Int64,2}:
 2  3  4  5   6
 3  4  5  6   7
 4  5  6  7   8
 5  6  7  8   9
 6  7  8  9  10

연습문제

4.1

1부터 100까지 반복문을 돌리면서 제곱값을 출력하자.

In [10]:
 = 0
while  < 100
     += 1
    print("$(^2) ")
end
1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 289 324 361 400 441 484 529 576 625 676 729 784 841 900 961 1024 1089 1156 1225 1296 1369 1444 1521 1600 1681 1764 1849 1936 2025 2116 2209 2304 2401 2500 2601 2704 2809 2916 3025 3136 3249 3364 3481 3600 3721 3844 3969 4096 4225 4356 4489 4624 4761 4900 5041 5184 5329 5476 5625 5776 5929 6084 6241 6400 6561 6724 6889 7056 7225 7396 7569 7744 7921 8100 8281 8464 8649 8836 9025 9216 9409 9604 9801 10000 
In [11]:
for  in 1:100
    print("$(^2) ")
end
1 4 9 16 25 36 49 64 81 100 121 144 169 196 225 256 289 324 361 400 441 484 529 576 625 676 729 784 841 900 961 1024 1089 1156 1225 1296 1369 1444 1521 1600 1681 1764 1849 1936 2025 2116 2209 2304 2401 2500 2601 2704 2809 2916 3025 3136 3249 3364 3481 3600 3721 3844 3969 4096 4225 4356 4489 4624 4761 4900 5041 5184 5329 5476 5625 5776 5929 6084 6241 6400 6561 6724 6889 7056 7225 7396 7569 7744 7921 8100 8281 8464 8649 8836 9025 9216 9409 9604 9801 10000 

4.2

(수, 제곱한 수) 가 (key, value)가 되도록 dictionary를 만들자. 즉,

squares[10] == 100

는 true가 된다.

In [12]:
제곱1 = Dict( => ^2 for  in 1:100)
Out[12]:
Dict{Int64,Int64} with 100 entries:
  68 => 4624
  2  => 4
  89 => 7921
  11 => 121
  39 => 1521
  46 => 2116
  85 => 7225
  25 => 625
  55 => 3025
  42 => 1764
  29 => 841
  58 => 3364
  66 => 4356
  59 => 3481
  8  => 64
  74 => 5476
  95 => 9025
  57 => 3249
  20 => 400
  90 => 8100
  14 => 196
  31 => 961
  78 => 6084
  70 => 4900
  33 => 1089
  ⋮  => ⋮
In [13]:
제곱1[10] == 100
Out[13]:
true
In [14]:
제곱2 = Dict()
 = 0
while  < 100
     += 1
    제곱2[] = ^2
end
In [15]:
제곱2
Out[15]:
Dict{Any,Any} with 100 entries:
  68 => 4624
  2  => 4
  89 => 7921
  11 => 121
  39 => 1521
  46 => 2116
  85 => 7225
  25 => 625
  55 => 3025
  42 => 1764
  29 => 841
  58 => 3364
  66 => 4356
  59 => 3481
  8  => 64
  74 => 5476
  95 => 9025
  57 => 3249
  20 => 400
  90 => 8100
  14 => 196
  31 => 961
  78 => 6084
  70 => 4900
  33 => 1089
  ⋮  => ⋮
In [16]:
제곱2[10] == 100
Out[16]:
true
In [17]:
제곱3 = Dict()
for  in 1:100
    제곱3[] = ^2
end
In [18]:
제곱3
Out[18]:
Dict{Any,Any} with 100 entries:
  68 => 4624
  2  => 4
  89 => 7921
  11 => 121
  39 => 1521
  46 => 2116
  85 => 7225
  25 => 625
  55 => 3025
  42 => 1764
  29 => 841
  58 => 3364
  66 => 4356
  59 => 3481
  8  => 64
  74 => 5476
  95 => 9025
  57 => 3249
  20 => 400
  90 => 8100
  14 => 196
  31 => 961
  78 => 6084
  70 => 4900
  33 => 1089
  ⋮  => ⋮
In [19]:
제곱3[10] == 100
Out[19]:
true

4.3

array 안에 반복문을 넣어서 1부터 100까지 수의 제곱을 array에 저장하자.

In [20]:
수_제곱 = [^2 for  in 1:100]
println(수_제곱)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100, 121, 144, 169, 196, 225, 256, 289, 324, 361, 400, 441, 484, 529, 576, 625, 676, 729, 784, 841, 900, 961, 1024, 1089, 1156, 1225, 1296, 1369, 1444, 1521, 1600, 1681, 1764, 1849, 1936, 2025, 2116, 2209, 2304, 2401, 2500, 2601, 2704, 2809, 2916, 3025, 3136, 3249, 3364, 3481, 3600, 3721, 3844, 3969, 4096, 4225, 4356, 4489, 4624, 4761, 4900, 5041, 5184, 5329, 5476, 5625, 5776, 5929, 6084, 6241, 6400, 6561, 6724, 6889, 7056, 7225, 7396, 7569, 7744, 7921, 8100, 8281, 8464, 8649, 8836, 9025, 9216, 9409, 9604, 9801, 10000]

'Flux in Julia > Learning Julia (Intro_to_Julia)' 카테고리의 다른 글

05. Conditionals (한글)  (0) 2018.09.18
05. Conditionals  (0) 2018.09.18
04. Loops  (0) 2018.09.15
03. Data structures (한글)  (0) 2018.09.13
03. Data structures  (0) 2018.09.13
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
TAG
more
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
글 보관함