[JAVA기초] 국비 8일차

포키·2022년 9월 29일
0

국비과정

목록 보기
8/73

오늘의 실수

  • 한글 텍스트가 들어가면 ANSI로 저장하기
Scanner.NextInt()	- X
sc.nextInt()		- O
  • Scanner(클래스)가 아니라 sc(객체)에서 찾아오기
  • nextInt는 클래스가 아니니 첫글자 소문자!!
		int x = sc.nextInt(); 		- X
        int num1 = sc.nextInt(); 	- O
  • 변수 이름은 값과 관련있게 설정하기

| 파이프
& 앰퍼센드(ampersand)

코드 복습

import java.util.Scanner;

class CalcEx {
	public static void main (String[] args){
		Scanner sc = new Scanner(System.in);

		System.out.print("첫 번째 숫자를 입력하시오: ");
		int num1 = sc.nextInt();

		System.out.print("두 번째 숫자를 입력하시오: ");
		int num2 = sc.nextInt();

		System.out.println("첫번째 숫자: " + num1);
		System.out.println("두번째 숫자: " + num2);
		System.out.println("합: " + (num1 + num2));
		System.out.println("곱: " + (num1 * num2));
	}
}

자바 연산자 (operator)

  • 산술연산자
  • 단항연산자
    단항연산자 ++, --는 단독으로 쓰자! 헷갈리니까!
  • 단항연산자는 대입 없이도 변수의 값이 바뀌는 유일한 연산자
int a = 3;
int b = a;
a = 6;
system.out.println(b);	// b는 3 (6이 아님)

대입 없이 자동으로 바뀌지 않으므로, a값이 바뀌더라도 b값은 그대로 3이다.

  • 복합대입연산자
    대입연산자 + 산술연산자 의미
x += y	: x = x + y
x -= y	: x = x - y
x *= y	: x = x * y
x /= y	: x = x / y
x %= y	: x = x % y
  • 관계연산자
    결과는 boolean(논리값)으로 나옴

  • 논리연산자
    논리값 사이의 연산

178 <= height <= 185;			//  X, ((178 <= height) <= 185) 로 계산됨
height >= 178 && height <= 185;	//  O (and 연산)
age <= 19 || age >= 65;			//  O (or 연산)

예제: 키로 이상형 여부 구하기 (결과: boolean)

import java.util.Scanner;
class IdealType{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
        //
		System.out.print("키를 입력하시오: ");
		double height = sc.nextDouble();		
        //
		boolean answer = height >= 175 && height <= 190;
        //
		System.out.println("이상형 여부: " + answer);
	}
}

  • 삼항연산자
class OpEx {
	public static void main(String[] args){
		// boolean ? A : B;

		int num1 = 3;
		int num2 = 5;

		String result = (num1 < num2) ? "num1이 작다" : "num1이 작지 않다";

		System.out.println(result);
	}
}

/** */ - 자바 매뉴얼
키워드(예약어)를 식별자로 사용하면 - not a statement

  • p. 79~80
    1, 4, 5, 9, 10, 11, 12, 13, 17, 18

  • p. 83
    1번

import java.util.Scanner;

class Page83_1 {
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		
		System.out.print("오렌지의 개수를 입력하시오: ");
		int num = sc.nextInt();

		System.out.println((num / 10) + "박스가 필요하고 " + (num % 10) + "개가 남습니다.");
	}
}

2번

import java.util.Scanner;

class Trans {
	public static void main(String[] args){
		Scanner scan = new Scanner(System.in);

		System.out.print("마일을 입력하시오: ");
		double mile = scan.nextDouble();

		System.out.println(mile + "마일은 " + (mile * 1.609) + "킬로미터입니다.");
	}
}

숙제 83쪽 3번, 7번, 8번, 10번

profile
welcome

0개의 댓글