JAVA/Practice

[반복문] 연습

ITs Min 2023. 11. 22.

예제 1)

구구단

public static void main(String[] args) {
		for(int a=2;a<=9;a++){ // 곱해질 수, 정수형 변수 a를 2로 초기화
        					   // a가 9보다 작거나 같다면 a를 1씩 증가
			for(int i=1;i<=9;i++) { // 곱하는 수, 정수형 변수 i를 1로 초기화
            						// i가 9보다 작거나 같다면 i를 1씩 증가
				System.out.println(a+" x " +i+" = "+(a*i)); // 출력
                
			}
		}
	}

 

결과


 

예제 2)

a와 b사이에 있는 수들을 나열

int a=7, b=1;// 정수형 변수 a의 값을 7로, b를 1로 초기화
		for(int i=1;i<=a&&i>=b;i++) { // 정수형 변수 i를 1로 초기화 / i값이 a보다 작거나 같으면서 
        							  // b보다 크거나 같다면 실행
                                      // i에 1을 계속해서 더함
			System.out.print(i+" ");	
		}

 

결과


예제 3)

1부터 10까지의 수 중에서 홀수만 출력

for(int i=1;i<=10;i++) { // 정수형 변수 i를 1로 초기화
						 // i가 10보다 작거나 같다면
                         // 반복문 실행후 i값에 1을 더한다
			
			if(i%2==1) { // i를 2로 나눈 나머지가 1이라면
				System.out.print(i + " "); // i출력 
			}
		}

 

결과


예제 4)

i가 3부터 무한하게 2씩 증가시키면서 출력
단, i가 1000을 넘어가면 종료

while(true) { // 무한으로 반복한다고 했기 때문에 while문 사용 ()안에 항상 참인 수식
			
			
			if(i>=1000) { // 만약 i의 값이 1000보다 크거나 같다면 (★종료조건★)
				break;    // break를 사용해서 탈출
			}
			i+=2; // i의 값에 2를 계속해서 더함
			System.out.print(i + " "); // i의 값을 계속해서 출력
		}

 

결과


예제 5)

1부터 홀수를 차례대로 더해나가면서 합이 n 이상이면 그 때까지 더해진 홀수의 개수와 그 합을 출력

public static void main(String[] args) {
			
		int n=32; // n의 값을 32로 초기화
		int sum = 0; // 홀수의 합을 담는 변수 sum의 값을 0으로 초기화
		int count = 0; // 홀수의 개수를 담는 변수 count의 값을 0으로 초기화
		int i=1; // 첫 홀수인 1로 시작
		
		while(true) { // 종료조건을 만나면 끝나게끔 무한루프
			if(i%2==1) { // i의 값을 2로 나누었을 때 나머지가 1이라면 (홀수의 조건)
				sum+=i; // sum의 값에 i값을 더함
				count++; // count의 값을 1씩 증가
				i++; // i값을 1씩 증가
				if(sum>=n) { // *종료조건 sum이 n보다 크다면
					System.out.println("sum = "+(sum-i)); // sum의 값에서 마지막 i를 뺀 값을 출력
					System.out.println("count = "+(count-1)); // count의 값에서 마지막 하나를 빼고 출력					break; // 루프문 탈출
				}
				
			}
			else { // i의 값을 2로 나누었을 때 나머지가 1이 아니라면 
				i++; // i의 값만 1증가
			}
			
		}
		

	}

 

결과


예제 6)

100 보다 작은 7의 배수들을 차례로 출력하다가

10 의 배수가 출력되면 프로그램을 종료하도록 프로그램을 작성하시오.

public static void main(String[] args) {
		int a=7; // 정수형 변수 a를 7로 초기화
		for(int i=1;i<100;i++) {	//i가 100보다 작으면 i를 1씩 늘리면서 반복		
			if(i%7==0) {	// 만약 i의 값이 7로 나누어 떨어진다면
				System.out.print(i+" ");	// i값 출력
				if(i%10==0) {	// i의 값이 7로 나누어 떨어지고 10으로도 나누어 떨어진다면
					break;	// 반복문 탈출
				}
			}
		}
	}

 

결과


 

'JAVA > Practice' 카테고리의 다른 글

[배열] 버블 정렬 (Bubble sort)  (1) 2023.11.27
[배열] Random 활용  (0) 2023.11.23
[배열] 최대값 찾기  (0) 2023.11.23
[반복문] 별 찍기  (1) 2023.11.22
[기초 및 조건문]  (0) 2023.11.21

댓글

TOP

늦었다고 생각할 땐 너무 늦은 거다.