
public static void main(String[] args) {
int score = (int) (Math.random()*20) + 81;
String grade;
System.out.println("점수 : " + score);
if(score >=90) {
if(score>=95) {
grade = "A+";
} else {
grade = "A";
}
} else {
if (score>=85) {
grade = "B+";
} else {
grade = "B";
}
}
System.out.println("학점 : " + grade);
}
Math.random() >> 0~1 임의의 실수 리턴
→ 0 <= Math.random() < 1
public static void main(String[] args) {
int num = (int) (Math.random()*6) +1;
switch(num) {
case 1 :
System.out.println("1번이 나왔습니다.");
break;
case 2 :
System.out.println("2번이 나왔습니다.");
break;
case 3 :
System.out.println("3번이 나왔습니다.");
break;
case 4 :
System.out.println("4번이 나왔습니다.");
break;
case 5 :
System.out.println("5번이 나왔습니다.");
break;
default :
System.out.println("6번이 나왔습니다.");
break;
}
}
✅default는 꼭 들어갈 필요없음(생략가능)
public static void main(String[] args) {
int time = (int)(Math.random()*4) +8;
System.out.println("[현재시간:"+ time+"시]");
switch(time) {
case 8:
System.out.println("출근합니다");
case 9:
System.out.println("회의를 합니다");
case 10:
System.out.println("업무를 봅니다");
default:
System.out.println("외근을 나갑니다");
}
}
✅ default문 사용시 결과는 두 개가 나옴 (위 구문에서)
[현재시간:10시]
✅ A 케이스에도, a 케이스에도 동일한 결과문이 리턴되면 좋겠다
case 'A':
case 'a':
public static void main(String[] args) {
char grade = 'B';
switch(grade) {
case 'A':
case 'a':
System.out.println("우수회원입니다");
break;
case 'B':
case 'b':
System.out.println("일반회원입니다");
break;
default:
System.out.println("손님입니다");
}
}
✅for : 반복 횟수를 알 때 사용
✅while : 반복 횟수를 모를 때 사용
이라고 생각하면 이해하기 쉽다.
public static void main(String[] args) {
int sum = 0;
for (int i=1; i<=100; i++) {
sum = sum + i;
}
System.out.println(i); >> error! i 때문에.
}
public static void main(String[] args) throws IOException {
boolean run = true;
int currentSpeed= 0;
int keyCode = 0;
while (run) {
if (keyCode != 13&& keyCode!=10) {
System.out.println("----------------");
System.out.println("1.증속 | 2.감속|3.중지");
System.out.println("----------------");
System.out.print("선택:");
}
keyCode = System.in.read();
if (keyCode == 49) {
currentSpeed++;
System.out.println("현재속도 ="+ currentSpeed);
} else if (keyCode == 50) {
currentSpeed --;
System.out.println("현재속도 =" + currentSpeed);
} else if (keyCode ==51) {
run = false;
System.out.println("프로그램을 종료합니다");
}
}
}`

public static void main(String[] args) throws IOException {
System.out.println("메시지를 입력하세요");
System.out.println("프로그램을 종료하려면 q를 입력하세요");
System.out.println(">");
Scanner scanner = new Scanner(System.in);
String inputString;
do {
inputString = scanner.nextLine();
System.out.println(inputString);
} while (! inputString.equals( "q"));
}

public static void main(String[] args){
Outter: for(char upper='A'; upper <='Z'; upper ++) {
for(char lower='a'; upper <='z'; lower ++) {
System.out.println(upper + "_" + lower);
if (lower == 'g') {
break Outter;
}
}
}
}
for (int i =1; i<=10; i++{
if(i%2 !=0) {
continue;
}
System.out.println(i);
}
}
↑ 홀수는 System.out.println구문 자체가 실행 안함.
다른 블록이어도 그 밑은 수행하지 않게 되는 것!
❓❓❓❓❓❓❓❓❓❓
public static void main(String[] args) {
//1부터 100까지 3의 배수의 총합을 구하라.
int sum = 0;
for (int i =0; i < 101; i++) {
if ( i%3 ==0) {
sum += i;
}
}
System.out.println(sum);
}
public static void main(String[] args) {
//1부터 100까지 3의 배수의 총합을 구하라.
int sum = 0;
for (int i =0; i < 101; i++) {
if ( (i&3) !=0) {
continue;
}
sum += i;
}
System.out.println(sum);
}
왜 두 번째 꺼는 틀린답이 나오는지????????????????
연습문제1) while문과 math.random() 메소드를 잉요해 두개의 주사위를 던졌을 떄 나오는 눈을 출력하고, 눈의 합이 5가 아니면 계속 주사위를 던지고, 눈의 합이 5이면 실행을 멈추는 코드를 작성해보세요.
boolean run = true;
while (run) {
int su1 = (int) ((Math.random()*6) + 1);
int su2 = (int) ((Math.random()*6) + 1);
if (su1 + su2 == 5) {
System.out.println(su1 + "," + su2);
run = false;
} else {
System.out.println(su1 + "," + su2);
}
}
연습문제2)
public static void main(String[] args) {
boolean run = true;
int money =0;
Scanner scanner = new Scanner(System.in);
while(run) {
System.out.println("----------");
System.out.println("1.예금|2.출금|3.잔고|4.종료");
System.out.println("----------");
System.out.print("선택>");
int su = scanner.nextInt();
switch (su) {
case 1 :
System.out.print("예금액>");
int inputMoney = scanner.nextInt();
money += inputMoney;
break;
case 2 :
System.out.print("출금액>");
int outputMoney = scanner.nextInt();
money -= outputMoney;
break;
case 3 :
System.out.print("잔고>" + money);
break;
case 4 :
System.out.print("프로그램 종료");
run = false;
}
}
}
❓❓❓❓❓❓❓❓❓❓ 왜 switch에는 꼭 break를 써야하는지?
안 쓰면 그럼 swith를 쓰는 의미가 없잖아???!!!ㅠㅠㅠㅠㅠ