https://www.acmicpc.net/problem/2438
2438번: 별 찍기 - 1
첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제
www.acmicpc.net
💡 주의 사항
for문을 정의할 때, 변수를 어떻게 지정할지 고민해볼 것
🗒 풀이
java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
for (int i = 1; i <= num; i++) {
for (int j = 0; j < i; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
- 두 번의 for문을 돌리는데, 입력받은 num만큼 for문을 돌려야 하니 첫 번째(바깥) for문은 num만큼 돌림. 이 때, i를 1부터 지정한 이유는 두 번째 for문때문
- 두 번째 for문을 보면 j가 첫번째 for문의 i 변수만큼 돌게 설정됐는데, 이는 순차적으로 1, 2, 3, ... 증가시키기 위함
- 즉, 첫 번째 변수 i를 1부터라고 지정하지 않았다면, 첫 번째 줄이 빈 줄이 들어갔을 것임
- 두 번째 for문을 돌고 나서는 한 줄을 띄어줘야하기 때문에 System.out.println(); 을 추가
python
a = int(input())
for i in range(1, a+1):
print('*' * i)
- 입력받은 변수 a 만큼 범위를 만들기 위해 range() 함수를 사용함. 이 때, 1부터 순차적으로 접근해야하므로 range(1, a+1)로 지정함에 유의할 것
- java는 python의 '*' * i 처럼 string 연산이 쉽게 안됨
'알고리즘' 카테고리의 다른 글
[백준] 2475번: 검증수(java, python) (0) | 2022.07.04 |
---|---|
[백준] 2439번: 별 찍기 - 2(java, python) (0) | 2022.07.03 |
[백준] 1546번: 평균 (java, python) (0) | 2022.07.02 |
[백준] 1157번: 단어 공부 (java, python) (0) | 2022.07.01 |
[백준] 1152번: 단어의 개수(java, python) (0) | 2022.07.01 |