25일 차 - Scanner , 배열, 로또번호 생성하기 (23.01.31)

yvonne·2023년 1월 31일
0

📂Java

목록 보기
25/51
post-thumbnail


📌배열

int[] ref = new int[5];

  • 데이터 타입: int[] -> 객체 생성

  • int[5]: int형 메모리 방 5개 생성 (반드시 연속된 int형)

  • double[ ] ar2 = new double[7]: double형 메모리 7개 (8byte x 7)









1. 배열 응용 문제

int 배열 10 개 선언후 차례대로 1 ~ 10 넣고,
해당 배열의 합을 구하시오.


public class ArrayTest2 {

	public static void main(String[] args) {
		int[] ar1 = new int[10];
		int sum = 0;
		for (int i = 0; i < ar1.length; i++) {
			ar1[i] = i + 1;
			sum += ar1[i];
		}
		System.out.println("합: " + sum);
	}
}

  • 출력결과





2. 배열 응용 문제 - 로또번호 생성

로또번호를 담는 배열을 선언후
로또 번호를 출력하시오.(단, 중복 없이 출력하시오.)


package array;

import java.util.Scanner;

public class ArrayTest2 {

	public static void main(String[] args) {

		Scanner lotto = new Scanner(System.in);

		while (true) {
			System.out.print("로또번호를 생성할까요? ");
			String input = lotto.next();

			if (input.equals("y") || input.equals("yes")) {
				int[] getNum = new int[6];
				for (int i = 0; i < getNum.length; i++) {
					int num = (int) (Math.random() * 45) + 1;
					getNum[i] = num;
					for (int j = 0; j < i; j++) {
						if (getNum[i] == getNum[j]) {
							i--;
						}
					}
				}
				for (int i = 0; i < 6; i++) {
					System.out.println((i + 1) + "번째 번호:" + getNum[i]);
				}
			} else {
				break;
			}
		}
	}
}
  • 출력결과





3. 아래 배열의 메모리 그림을 그리시오.

int[] arr = new int[3];







4. 아래를 프로그래밍 하시오.

문자열을 입력 받아 파일명과 확장자인 java를 분리시키는 프로그램을 짜시오.

  • 입력: Hello.java
    출력: 파일이름은:Hello 이며 확장자는 java 입니다.
    다시 하시겠습니까: y
    입력: Hello2.java
    출력: 파일이름은:Hello2 이며 확장자는 java 입니다.
    다시 하시겠습니까: n
    프로그램 종료 입니다.

profile
개발 연습장

0개의 댓글