Algorithm Study/Java

[자바 기초 프로그래밍] 배열

728x90
반응형

배열

Java Programming Tutorial 2017 by 나동빈

링크 : https://youtu.be/SByN3m_8Nr4

 

 

import java.util.Scanner;

public class Main {

    public static int max(int a, int b) {
        return (a > b) ? a : b;
    }

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);
        System.out.print("생성할 배열의 크기를 입력하세요 : ");
        int number = sc.nextInt();
        int[] array = new int[number];    // 문법처럼 암기
        for(int i = 0; i < number; i++)
        {
            System.out.print("배열에 입력할 정수를 하나씩 입력하세요. : ");
            array[i] = sc.nextInt();
        }
        int result = -1;
        for(int i = 0; i < number; i++)
        {
            result = max(result, array[i]);
        }
        System.out.println("입력한 모든 정수 주에서 가장 큰 값은 " + result + "입니다.");
    }
}

 

  • 자바에는 max함수가 따로 정의되어 있지 않기 때문에 직접 만들어서 사용해야 한다 → 파이썬 프로그램에 비해 가벼운 이유
  • int[] array = new int[100];
    • 100개의 배열을 만드는 하나의 문법으로 이해할 것

 

 

public class Main {

    public static void main(String[] args) {

        int[] array = new int[100];
        for(int i = 0; i < 100; i++)
        {
            array[i] = (int) (Math.random() * 100 + 1);    // 1 ~ 100 사이의 랜덤한 수
        }
        int sum = 0;
        for(int i = 0; i < 100; i++) {
            sum += array[i];
        }
        System.out.println("100개의 랜덤 정수의 평균 값은 " + sum / 100 + "입니다.");
    }
}

 

  • Math.random;
    • 0 ~ 0.xxx의 값 (0 <= x < 1)을 랜덤하게 생성
    • Math.random() * 100 + 1= 1~100.9xxx의 값을 갖는다. int로 정수형을 만들어줄 때 소수점 이하의 수는 절삭되므로 최종적으로 1~100 사이의 값을 갖는다