갈림길 이정표

[4. 조건문과 반복문] 반복문 problem 1~3 본문

Programming Language/Java 마스터하기(feat. 이것이 자바다)

[4. 조건문과 반복문] 반복문 problem 1~3

이몽뇽 2020. 7. 19. 23:25
package pack1;

public class Test7_problem1 {
	
	public static void main(String[] args) {
		//문제 1. 1~100사이의 숫자 중 3의 배수이나 2의 배수가 아닌 수를 출력하고, 그 합과 건수 출력
		System.out.println("----problem1----");
		int w = 1;
		int sum = 0;
		int num = 0;
		System.out.print("3의 배수이나 2의 배수가 아닌 수: ");
		System.out.println();
		while(w <= 100) {
			if(w%3 == 0 && w%2 != 0) {
				System.out.print(w + " ");
				sum += w;
				num++;
			}
			w++;
		}
		System.out.println();
		System.out.println("총 합: " + sum);
		System.out.println("갯수: " + num);
	
	}

}
package pack1;

public class Test7_problem2 {

	public static void main(String[] args) {
		//문제 2. -1, 3, -5, 7, -9, 11, ... , 99까지의 합?
//				System.out.println("----problem2----");
//				int q = 1;
//				int sum1 = 0;
////				int sum2 = 0;
//				while (q<=99) {
//					if(((q-1)/2)%2 == 0) {
//						int p = (-1) * q;
//						sum1 += p;
//					}else {
//						sum1 += q;
//					}
//					q += 2;
//				}
//				System.out.println("합: " + sum1);
				
				System.out.println("----problem2----");
				int q = 0;
				int sum1 = 0;
				while (q<=99) {
					if(((q+1)/2)%2 != 0) {
						int p = (-1) * (q+1);
						sum1 += p;
					}else {
						sum1 += (q+1);
					}
					q += 2;
				}
				System.out.println("합: " + sum1);
				
			
//			
	}

}


package pack1;

import java.util.Scanner;

public class Test7_problem3 {

	public static void main(String[] args) {
		//문제 3. 키보드로 숫자 입력: 5
		//		5까지의 합 출력
		//		계속할까요?(1/0) -> 1이면 계속 0이면 작업 끝
		System.out.println("----problem3----");
		
		int start = 1;
		int sum = 0;
		while(true) {
			Scanner cs = new Scanner(System.in);
			System.out.print("1~? 까지의 합: ");
			int fini = cs.nextInt();
			
			while(start<=fini) {
				sum += start;
				start++;
				}
			System.out.println("1~" + fini + " 까지의 합은: " + sum);
			System.out.println("다시 할래?" + "(1: 응, 0: 아니)");
			
			Scanner cs1 = new Scanner(System.in);
			System.out.print("대답: ");
			int deci = cs1.nextInt();
				if(deci == 1 || deci != 0) {		//== 중요
					while(deci != 1 || deci !=0) {
						System.out.println("무한루프나 먹어라");
						Scanner cs2 = new Scanner(System.in);
					}
					continue;				
				}else { 		//== 중요 (=: 대입, ==: 일치)
					System.out.println("감사합니다");
					break;
				} 
			}
		System.out.println("프로그램 종료");
	}

}
​
Comments