반복문을 수행하면서 조건에 따른 제어문을 연습!
반복문을 이용해 구구단을 쉽게 만들었는데 이번에는 2단부터 9단까지 구구다을 출력!
아직 홀수단을 외우지 못해 나머지 공부를 하는 친구들을 위한 구구단을 만들 것이다.
출력되는 구구단은 홀수 단!
그리고 n단은 n x n가지만 출력되는게 이번 실습의 특별 조건!
실습
- 2단부터 9단까지 출력하는 구구단입니다. 하지만 홀수 단만 출력합니다.
- "%d x %d = %d\n"형태로 출력합니다.
- 단과 단 사이는 한 줄을 비웁니다.
- n단은 n x n 까지 출력합니다. 예를 들어, 7단은 7 x 7 = 49까지 출력합니다.
코드
package main import "fmt" func main() { for i := 2; i < 10; i++ { if i%2 == 0 { // 홀수출력 continue // 나머지가 영이면 그건 건너 뛰고 다음으로 넘어가겠다!
} for dan := 1; dan < 10; dan++ { // 단 수 출력 if dan > i { // n단은 n x n까지 출력 continue // 만약 i == 3 이고 dan == 4이면 중단하고 // 다시 올라가서 dna < 10 일때 까지...? } fmt.Printf("%d x %d = %d\n", i, dan, i*dan) } fmt.Printf("\n") //단 마다 한칸 비움 }
}
### 출력
3 x 1 = 3
3 x 2 = 6
3 x 3 = 95 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 257 x 1 = 7
7 x 2 = 14
7 x 3 = 21
7 x 4 = 28
7 x 5 = 35
7 x 6 = 42
7 x 7 = 499 x 1 = 9
9 x 2 = 18
9 x 3 = 27
9 x 4 = 36
9 x 5 = 45
9 x 6 = 54
9 x 7 = 63
9 x 8 = 72
9 x 9 = 81
반복문 안에서 if문과 continue를 적절하게 이용!
10의 자리가 A이고 1의 자리가 B인 두 자릿수와, 10의 자리가 B이고 1의 자리가 A인 두 자릿수가 더해서 99가 나오는 모든 수를 출력!
AB+BA = 99
실습
- A와 B는 다른 숫자입니다. 따라서 33 + 66 = 99는 잘못된 출력입니다.
- 가능한 모든 경우의 수를 출력합니다.
- 이중 반복문을 사용합니다.
- 1의 자리에 0을 출력할 수 있습니다.
코드
package main import "fmt" func main() { var result int for A := 0 ; A < 10 ; A++ { for B := 0 ; B < 10 ; B++ { result = (A*10 + B) + (B*10 + A) if result != 99 { continue } fmt.Printf("%d%d + %d%d = %d\n",A,B,B,A,result) } } }
출력
09 + 90 = 99 18 + 81 = 99 27 + 72 = 99 36 + 63 = 99 45 + 54 = 99 54 + 45 = 99 63 + 36 = 99 72 + 27 = 99 81 + 18 = 99 90 + 09 = 99