golang 기초 - 반복문

한나리·2023년 6월 27일

Go

목록 보기
7/19
post-thumbnail

반복문

조건을 만족할때까지 코드를 반복
튜링완전 : 이론적으로 계산 가능한 모든것을 할 수 있다는 뜻
반복문은 리소스를 많이 사용하기때문에 비트코인에서는 반복문을 사용하지 않지만 이더리움(튜링완전)은 사용

for 초기문; 조건문; 사후구문

sum := 0

//for 초기문; 조건문; 사후구문
for i :=0; i < 10; i++ {
	sum += i
}
fmt.Println(sum)

package main

import (
	"fmt"
)
func main() {

sum := 0

for i :=0; i < 10; i++ {
	sum += i
}
fmt.Println(sum) //45

}

for ; 조건문;

초기문, 사후구문(증감문) 생략

sum := 1

//for ; 조건문;
for ; sum < 1000; {
	sum += sum
}
fmt.Println(sum) //1024

무한루프

i := 1

// 무한 반복
for{
	fmt.Println(i)
    i++
}

break

무한루프 종료

i := 1

// break
for{
	fmt.Println(i)
    i++
    if i ==10 {
    break
  }
}

continue

반복문의 다음 코드를 실행하지 않고 다음 반복문으로 넘어감

//continue
for i := 0; i < 10; i ++ {
	if i == 5 {
    	continue
    }
    fmt.Println(i) 
}    

결과값
0
1
2
3
4
6
7
8
9

range

배열이나 슬라이스 요소를 순회할때 사용. 인덱스와 값을 반환

arr := [5]int{1, 2, 3, 4, 5}

//for range
for i, v := range arr {
	fmt.Printf("index: %d, value: %d\n", i, v)
   }

package main

import (
	"fmt"
)
func main() {

arr := [10]int{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}

for i, v := range arr {
	fmt.Println(i, v) 
   }
}   

결과 값
0 1
1 2
2 3
3 4
4 5
5 6
6 7
7 8
8 9
9 10

profile
내가 떠나기 전까지는 망하지 마라, 블록체인 개발자

0개의 댓글