2022년 9월 23일 금요일 개발일지
2022. 9. 23. 09:36 - DoosanBaek
오전 9시 ~ 오전 9시 30분 기본 언어 공부 발제 회의 참석
오전 9시 30분~ 10시30분
기본 언어 Java 환경 셋팅
java 환경설정 , java 설치, intellij 설정, Ultimate 버전으로 구매, intellij 설치, 폰트 변경, D2coding 폰트설치 및 변경
Java 과제
Q. 다음 코드를 실행하면 출력 결과로 5를 기대했는데 4가 출력되었습니다. 어디서 잘못 작성된 것일까요?
int var1=5;
int var2=2;
double var3=var1/var2;
int var4=(int)(var3*var2);
System.out.println(var4);
위의 코드에서 var1 / var2 를 했을때 double var 3 은 2가 나온다.
5의 결과가 나오기 위해서는
double var3 = (double) var1 / var 2;
double var3 = (double) var1 / var2;
이렇게 변경하고 System.out.println(var3); 으로 출력하면 var3이 2.5가 출력되는것을 알수 있다.
public class Hello {
public static void main(String[] args) {
int var1 = 5;
int var2 = 2;
double var3 = (double) var1 / var2;
int var4 = (int)(var3*var2);
System.out.println(var4);
}
}
var 3에 2.5가 들어가고
var3*var2의 결과인 5가 var4에 들어가서
System.out.println(var4) 출력시 5가 출력되게 된다.
02. 다음 코드를 실행했을 때 출력 결과는 무엇입니까? ( 증감연산자에 대해 알아보세요!)
public class Question02 {
public static void main(String[] args) {
int x=10;
int y=20;
int z = (++x) + (y--);
System.out.println(z);
}
}
답안: 31이 출력됩니다.
03. while문과 Math.random() 메소드를 이용해서 2개의 주사위를 던졌을 때 나오는 눈을 (눈1, 눈2) 형태로 출력하고, 눈의 합이 5가 아니면 계속 주사위를 던지고, 눈의 합이 5이면 실행을 멈추는 코드를 작성해보세요. 눈의 합이 5가 되는 조합은 (1,4), (4,1), (2,3), (3,2)입니다.
-> while 조건문을 이용해서 무조건 true 안에 들어가도록 하고,
public class Question03 {
public static void main(String[] args) {
while (true) {
}
}
}
숫자 두개 저장되는 변수 num1, num2 를 선언 한다.
정수니까 int 를 붙이고 Math.random() 소수점으로 나오므로 (int) 를 붙여 int로 강제 형변환 한다.
Math.random() 소수점으로 0~1 사이를 출력하기 때문에 *6을하고
+1을 하면 1~6의 숫자가 출력된다.
int num1 = (int) (Math.random() *6) +1;
int num2 = (int) (Math.random()*6) +1;
if 조건문을 사용해서 두개의 변수를 더한 값이 5가되면 break로 빠저나오게 한다.
if(num1 + num2 == 5) {
System.out.println("끝");
break ;
}
답안 코드:
public class Question03 {
public static void main(String[] args) {
System.out.println("시작!");
while (true) {
int num1 = (int) (Math.random() *6) + 1;
int num2 = (int) (Math.random() *6) + 1;
System.out.println("(" + num1 + "," + num2 + ")");
if(num1 + num2 == 5) {
System.out.println("끝");
break ;
}
}
}
}
'TIL' 카테고리의 다른 글
배달프렌드 사용자 분석 (0) | 2022.12.10 |
---|---|
2022-12-06 today- I learned (0) | 2022.12.06 |
AWS EC2에 Redis server 설치하기 (우분투에 레디스 서버 설치하기) (0) | 2022.11.11 |
컬렉션 프레임워크 (1) | 2022.09.26 |
22.09.19~ 22.09.22 미니 프로젝트 회고 (0) | 2022.09.22 |
2022년 9월 22일 목요일 개발일지 (0) | 2022.09.22 |
2022년 9월 21일 개발일지 (0) | 2022.09.21 |
2022-09-20 화요일 (0) | 2022.09.20 |