Study/BEAKJOON Algorithm

3단계 for문

뽀삐쓰 2019. 12. 20. 09:47

1. 별 찍기 - 1 (문제 번호 : 2438)

 

문제 :

첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제

 

입력 :

첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.

 

출력 :

첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.

 

 

import java.util.*;

public class Main{
    public static void main(String args[]){
        Scanner scan = new Scanner(System.in);
		
		int n = scan.nextInt();
		
		for(int i = 0; i < n; i++) {	// 세로축
			for (int j = 0; j <= i; j++) {	// 가로축 
				System.out.print("*");
			}
			System.out.println();	// 줄 개행
		}
    }
}

 

 

2. 별 찍기 - 2 (문제 번호 : 2439)

 

문제 :

첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제

하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오.

 

입력 : 

첫째 줄에 N(1 ≤ N ≤ 100)이 주어진다.

 

출력 :

첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.

 

import java.util.*;
public class Main{
	public static void main(String args[]){
        Scanner scan = new Scanner(System.in);

		int n = scan.nextInt();

		for (int i = 1; i <= n; i++) {	// 세로축
			for(int j = 1; j <= n - i; j++) {	// 오른쪽을 기준으로 정렬하기 위한 가로축 공백 
				System.out.print(" ");
			}
			for(int j = 0; j <= i -1; j++) {	// 가로축
				System.out.print("*");
			}	
			System.out.println();
		}
        
	}
}

 

 

3. X보다 작은 수 (문제 번호 : 10871)

 

문제 :

정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오.

 

입력 :

첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000)

둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다.

 

출력 :

X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력한다. X보다 작은 수는 적어도 하나 존재한다.

 

import java.util.*;

public class Main{
    public static void main(String args[]){
        Scanner scan = new Scanner(System.in);
		
		int n = scan.nextInt();
		int x = scan.nextInt();
		
		int[] a = new int[n];	// 정수를 담을 수열
		for (int i = 0; i < n; i++) {
			a[i] = scan.nextInt();
		}
		
		for (int i = 0; i < a.length; i++) {
			if(a[i] < x) {
				System.out.print(a[i] + " ");
			}
		}
    }
}