7 [인강] 자바의정석 ch04
Machine translation — switch to KO for the original.
| 임의의 정수 만들기 //난수
0.0 <= Math.random() < 1.0 //double 값을 반환
n 원하는 개발 값
(int)0.0*n+1 < = (int)(Math.random()*n)+1 < (int)1.0*n+1
// 0은 난수가 아님
int num = 0;
System.out.println((int)(Math.random()*11)-5); // -5 <=x < 6
| for문 //반복횟수를 알 때 적합
for(int i=1;i<=5;i++) { // 초기화, 조건식, 증감식 //모두 생략가능, true 무한반복문
System.out.println("I can do it");
}
int=1 //scope 범위 좁을수록 확인 범위가 줄어드므로 좋음, 변수선언부터 끝가지 적용
int sum = 0; //합계 저장을 위한 변수
for(int i=1, i<=5; i++) {
sum += 1; //sum=sum+i;
System.out.printf("1부터 %2d까지의 합: %2d%n", i, sum);
}
| 중첩 for문
for(int i=2;i<=9;i++) {
for(int j=1;j<=9;j++) {
System.out.println(i+"*"+j+"="+(i*j));
}
System.out.println(); //줄바꿈
}
//구구단코드, 안쪽 j 실행 후 i 실행
| while문, do-while문
조건을 만족시키는 동안 블럭 {}을 반복 - 반복횟수를 모를 때
for문과 교환가능
for(int i=1;i<=10;i++) {
System.out.println(i);
}
↕
int i=1;
while(i<=10) {
System.out.println(i);
i++;
}
i--!=0 //0이 아니면 i의 초기화값에서 1씩 차감
sum += ++i; //증가한 i를 기존 sum에 누계
int num = 0, sum = 0;
System.out.print ("숫자를 입력하세요. (예:1235)>");
Scanner scanner = new Scanner(System.in);
String tmp = scanner.nextLine(); //화면으로 입력받은 내용 tmp에 저장
num = Integer.parseInt(tmp); // 입력받은 문자열(tmp)을 int로 변환 숫자 num에 저장
While(num!=0) {
sum += num%10;
System.out.printf("sum=%3d num=%d%n", sum, num);
num /= 10; //num=num/10;
}
System.out.println("각 자리수의 합:"+sum);
// 각 자리수의 합을 더하는 방법
int input = 0, answer = 0;
answer = (int)(Math.round()*100)+1;
Scanner scanner = new Scanner(System.in);
do {
System.out.print("1과 100사이의 정수를 입력하세요.>");
input = scanner.nextInt();
if(input>answer) {
System.out.println("더 작은 수로 다시 시도해보세요.");
} else if (input System.out.println("더 큰 수로 다시 시도해보세요."); } } while(input!=answer); System.out.println("정답입니다."); // 사이 수 맞추기, while문의 중복을 해결 | break문 swith문이나 반복문을 빠져나오는 과정에서 사용 while(true)과 for( ; ;) 동일 int sum = 0; int i = 0; while(true) { //무한반복문 if(sum>100) break; ++i; sum += i; } System.out.println("i=" +1); System.out.println("sum="+sum); continue문 만족하는 경우 다음 반복으로 건너뜀 //3의 배수를 제외한 숫자 구하기 | 이름붙은 반복문 하나 이상의 반복문을 벗어나기 break Loop1; //for문/while문 이름을 적어주면 여러개 반복문을 벗어날 수 있음 square 제곱 square root 제곱근
Loop1: for (int i=2; i<=9; i++)
Comments
No comments yet. Be the first!
319 posts in 테크
- 368Supabase 프로젝트 복사하기 (Restore to a New Project)NEW
- 341Migrating from Permanent Access Tokens to Token Exchange — Why Order Matters
- 326Startup & Product Glossary: Terms Every Solo Founder Should Know
- 325Context Management — How I Do It Now
- 324Claude Code Routines vs Cowork Schedule — What's the Difference?