- [Java] 8. 항과 연산자(대입,부호,산술)2024년 04월 10일
- Song hyun
- 작성자
- 2024.04.10.:51
728x90반응형[Java] 8. 항과 연산자(대입,부호,산술)
1. 항: 연산 과정에서 사용되는 데이터나 값
연산자: 하나 이상의 항을 사용해, 특정 연산을 수행하는 기호
2. 대입 연산자(Assignment Operator): =
-특정 값이나 다른 변수의 결과를 변수에 할당(대입)하는 데 사용된다.
-대부분의 이항 연산자 중에서 우선 순위가 가장 낮아서, 대부분의 연산이 이루어진 이후에 마지막으로 할당된다.
-기본적인 연산의 순서는 오른쪽에서 왼쪽으로 흘러간다.
-기본 형태: 왼쪽 변수=오른쪽 표현식/값/변수/계산식
3. 부호 연산자: +,-
-변수(리터럴)의 부호를 변경하거나 유지하는 단항 연산자이다.
-+ 연산자는 변수의 부호를 그대로 두고, -연산자는 변수의 부호를 반전시킨다.
-변수의 실제 값을 변경하려고 할 때는 부호의 연산자와 함께 대입 연산자를 사용해야 한다.
-반드시 기억->*변수의 실제 값이 변경된 것은 아니다.
-**메모리 공간 안에 실제 값을 변경하려면 어떻게 해야할까? -> 대입 연산자와 함께 사용해야 한다.3. 산술 연산자: +,-,*,/,%
(1) +: 더하기 연산자
(2) -: 빼기 연산자
(3) *: 곱하기 연산자
(4) /: 나누기 연산자(몫)
(5) %: 나누기 연산자 (나머지)
연습문제
문제 1. (12+3)/3
(1) 정수형(int)으로 출력하기
-정수형 변수 a(int)에 (12+3)/3의 값을 대입한다.
(2) 실수형(double)으로 출력하기
-실수형 변수 b(double)에 (12.0+3.0)/3의 값을 대입한다.
int a=(12+3)/3; double b=(12.0+3.0)/3; System.out.println("정수형 : "+a); System.out.println("실수형 : "+b);
문제 2. (25%2)값을 화면에 출력하라.
(1) 몫(/) 출력하기
-정수형(int) 변수 ect에 25/2를 대입한다.
(2) 나머지(%) 출력하기
-실수형(double) 변수 real에 25.0%2를 대입한다.
int ect=25/2; double real=25.0%2; System.out.println("25 나누기 2 = "+real); System.out.println("나머지는? "+ect);
3. 15를 4로 나눈 후, 그 결과와 절대값을 출력해보자.
(1) Math math;를 통해 라이브러리를 불러온다.
-라이브러리란? 기존의 개발자들이 개발한 안전하고 검증된 알고리즘.
-Math.abs(변수명): 변수의 절대값을 구해주는 라이브러리이다.
-절대값: 어떤 수의 크기를 나타내는 것으로, 일직선 상에서 그 수가 0과 얼마나 떨어져 있는지를 표시한다.
어떤 수의 절대값은 그 수가 음수이든, 양수이든 상관없이 언제나 양수가 된다.
-0의 절대값은 0이다.
(2) 정수형(int) 변수 num1에 15/4(몫)의 값을 대입한다.
(3) 정수형(int) 변수 num2에 Math.abs(num1)을 대입한다.
Math math; int num1=15/4; int num2=Math.abs(num1);
4. 한 반에 30명의 아이들이 있다.
나누어 줄 수 있는 딸기의 개수는 66개, 토마토의 개수는 44개이다.
각각의 아이들에게 딸기와 토마토를 각각 5개, 2개씩 나누어줘야 한다면
받을 수 있는 아이와, 받지 못하는 아이들의 수는 몇 명일까?
+모든 아이들에게 나누어주려면 몇 개가 더 필요한지 생각해보자.
(1) 변하지 않는 값들을 먼저 상수(constant)로 지정한다.
-final int를 통해, 변수 CHILD에 아이들의 수인 30을 대입한다.
-final int를 통해 변수 STRAW, TOMATO에 각각 딸기와 토마토의 수인 66,44를 대입한다.
(2) 과일을 받을 수 있는 아이의 수를 연산한다.-과일을 받을 수 있는 아이의 수를 구하는 공식은, (과일의 수/나누어줘야 하는 갯수)의 몫과 같다.
-토마토를 받을 수 있는 아이의 수: int tomato_can=TOMATO/2;
-딸기를 받을 수 있는 아이의 수: int straw_can=STRAW/5;
(3) 과일을 받지 못한 아이들의 수를 연산한다.
-과일을 받지 못한 아이들의 수=(전체 아이들의 수/과일을 받은 아이들의 수)의 몫
-토마토를 받지 못한 아이들의 수: int tomato_lack=CHILD-tomato_can
-딸기를 받지 못한 아이들의 수: int straw_lack=CHILD-straw_can
+(3) 모든 아이들에게 과일을 나누어 주려면, 앞으로 몇 개가 더 필요할까?
-앞으로 더 필요한 과일의 수=(3) 이전에 과일을 받지 못한 아이들의 수*나누어줘야 하는 과일의 수
-토마토는 몇 개가 더 필요한가?: int tomato_need=tomato_lack*2
-딸기는 몇 개가 더 필요한가?: int straw_need=straw_lack*5
final int CHILD=30; final int STRAW=66; final int TOMATO=44; int tomato_can=TOMATO/2; int straw_can=STRAW/5; int tomato_lack=CHILD-tomato_can; int straw_lack=CHILD-straw_can; System.out.println("현재 토마토를 받을 수 있는 아이는 "+ tomato_can+"명 입니다."); System.out.println("현재 딸기를 받을 수 있는 아이는 "+straw_can+"명 입니다."); System.out.println("현재 토마토를 받지 못한 아이는 "+tomato_lack +"명 입니다."); System.out.println("현재 딸기를 받지 못한 아이는 "+ straw_lack +"명 입니다."); int tomato_need=tomato_lack*2; int straw_need=straw_lack*5; System.out.println("앞으로 토마토가 " + tomato_need + "개 더 필요합니다."); System.out.println("앞으로 딸기가 "+straw_need+"개 더 필요합니다.");
성공적으로 결과가 도출되는 것을 확인할 수 있다.
728x90반응형'Java > 기본 개념 및 클래스' 카테고리의 다른 글
[Java] 10. 관계, 논리, 빠른 평가 (0) 2024.04.11 [Java] 9. 증감 연산자와 복합 대입 연산자 (0) 2024.04.11 [Java] 7. 명령 프롬프트에서 자바 파일 컴파일 하기 (0) 2024.04.10 [Java] 6. 형 변환과 형 변환의 종류 (0) 2024.04.10 [Java] 5. 상수 (0) 2024.04.10 다음글이전글이전 글이 없습니다.댓글