[Java] Solution to puzzles

Joy🌱·2022년 12월 27일
0

🧩 Coding Challenges

목록 보기
7/20
post-thumbnail

🧩 2차원 배열을 이용하여 1부터 12까지의 정수 출력하기

💁‍ 행의 길이가 3, 열의 길이가 4인 정수형 2차원 배열을 선언 및 할당하고, 각 인덱스에 차례대로 1부터 12까지의 정수를 대입한 뒤 그 값을 출력하는 코드를 작성하세요.

🚩 Example Output

1  2  3  4
5  6  7  8
9 10 11 12
package com.greedy.section02.demensional_array.level01.basic;

public class Application1 {

	public static void main(String[] args) {

		// 2차원 배열 선언 및 할당
		int[][] numberArr = new int[3][4];
		
		// 각 인덱스에 차례대로 1부터 12까지의 정수 대입 및 값 출력
		int num = 1;
		for(int i = 0; i < numberArr.length; i++) {
			for(int j = 0; j < numberArr[i].length; j++) {
				numberArr[i][j] = num++;
				
				System.out.print(numberArr[i][j] + " ");
			} 
			System.out.println();
		} 
	}
}

🧩 2차원 배열을 이용하여 랜덤으로 알파벳 출력하기

💁‍ 가로와 세로 길이를 정수형으로 입력 받아 입력받은 가로 세로 길이를 이용하여 이차원 배열을 할당하고 각 인덱스에는 랜덤으로 알파벳 대문자 넣어서 출력하세요.
단, 가로 행 혹은 세로 열은 반드시 1~10 까지의 정수를 입력해야 하고 그렇지 않은 경우에는 "반드시 1~10까지의 정수를 입력해야 합니다. 다시 입력하세요." 출력 후 가로 행 또는 세로 열을 다시 입력받을 수 있도록 하세요.

🚩 Example Input & Output

가로 행의 수를 입력하세요 : 5
세로 열의 수를 입력하세요 : 4
F H Z G 
W F O T 
O R X V 
W H J X 
W S S J 
package com.greedy.section02.demensional_array.level02.normal;

import java.util.Random;
import java.util.Scanner;

public class Application1 {

	public static void main(String[] args) {
		
		Scanner sc = new Scanner(System.in);
		System.out.print("가로 행의 수를 입력하세요 : ");
		int width = sc.nextInt();
		System.out.print("세로 행의 수를 입력하세요 : ");
		int length = sc.nextInt();
		
		while(true) {
			char[][] alphaArr = new char[width][length]; >>> 입력받은 가로, 세로의 값을 alphaArr[][]에 대입
			
			if(width > 10 || length > 10) { >>> : 가로 또는 세로 10 이상이면,
				System.out.println("반드시 1~10까지의 정수를 입력해야 합니다. 다시 입력하세요."); >>> : 출력
				break; >>> 출력문 무한루프방지 break
			} else {
				for(int i = 0; i < alphaArr.length; i++) { 
					for(int j = 0; j < alphaArr[i].length; j++){
						alphaArr[i][j] = (char)((int)(Math.random()* 26) + 65); >>> alphaArr에 A-Z의 유니코드를 활용해 랜덤값으로 대입
						System.out.print(alphaArr[i][j] + " "); >>> alphaArr 출력
					}
					System.out.println();
				}break; >>> alphaArr 무한루프방지 break
			}
		}
	}
}

profile
Tiny little habits make me

0개의 댓글