문제
https://www.acmicpc.net/problem/2438
별을 찍을 횟수 n을 입력받은 뒤, for문을 사용하여 *을 하나씩 증가하면서 출력하면 되는 문제이다.
------------------------------------------------------------------------------------------------------------------
풀이
파이썬을 사용하면 print(i * "*") 로 한줄만에 끝나지만 JAVA는 좀 더 길다.
(1) n을 입력받는다.
(2) n번을 반복하기 위해 for문을 선언한다.
(3) for문을 하나 더 만들어서 i만큼 별을 찍게 만든다.
ex) 1번째 반복일 때 i = 1 ,,, > *
2번째 반복일 때 i = 2 ,,, > **
3번째 반복일 때 i = 3 ,,, > ***
...
...
...
(4) 별을 찍은 다음 개행을 위해 System.out.println을 사용한다.
(1) Scanner 사용
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
for(int i=1;i<=n;i++)
{
for(int j=1;j<=i;j++)
{
System.out.print("*");
}
System.out.println();
}
}
}
------------------------------------------------------------------------------------------------------------------
(2) BufferdReader 사용
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class Main {
public static void main(String[] args) throws IOException{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int n = Integer.parseInt(br.readLine());
for(int i = 1;i<=n;i++)
{
for(int j = 1;j<=i;j++)
{
bw.write("*");
}
bw.write("\n");
}
br.close();
bw.flush();
bw.close();
}
}
------------------------------------------------------------------------------------------------------------------
번외
파이썬은 3줄이면 끝난다.
'문제 풀이' 카테고리의 다른 글
[백준] 10952번: A+B - 5 - JAVA (자바) (0) | 2023.02.02 |
---|---|
[백준] 2439번: 별 찍기 - 2 - JAVA (자바) (0) | 2023.01.31 |
[백준] 11022번: A+B-8 - JAVA (자바) (0) | 2023.01.26 |
[백준] 11021번: A+B-7 - JAVA (자바) (0) | 2023.01.25 |
[백준] 15552번: 빠른 A+B - JAVA (자바) (0) | 2023.01.23 |