[Java] 실습과제2_반복문

유진·2023년 7월 18일

문제 안내

패키지 : edu.kh.control.practice
실행 클래스 : Run2
기능 작성 클래스 : LoopPractice

실습문제1

메소드명 : public void practice1(){}
사용자로부터 한 개의 값을 입력 받아 1부터 그 숫자까지의 숫자들을 모두 출력하세요.
단, 입력한 수는 1보다 크거나 같아야 합니다.
만일 1 미만의 숫자가 입력됐다면 "1 이상의 숫자를 입력해주세요"를 출력하세요.

ex.
1이상의 숫자를 입력하세요 : 4
1 2 3 4
1이상의 숫자를 입력하세요 : 0
1 이상의 숫자를 입력해주세요.
package edu.kh.control.practice;

import java.util.Scanner;

public class LoopPractice {
	
	Scanner sc = new Scanner(System.in);
	
	public void practice1() {
		
		System.out.print("1이상의 숫자를 입력하세요 : ");
		int num = sc.nextInt();
		
		if(num < 1) {
			System.out.println("1 이상의 숫자를 입력해주세요.");
		} else {
			for (int i = 1; i <= num; i++) {
				System.out.print(i + " ");
			}
		}
	}

실습문제2

메소드명 : public void practice2(){}
사용자로부터 한 개의 값을 입력 받아 1부터 그 숫자까지의 모든 숫자를 거꾸로 출력하세요.
단, 입력한 수는 1보다 크거나 같아야 합니다.

ex.
1이상의 숫자를 입력하세요 : 4
4 3 2 1
1이상의 숫자를 입력하세요 : 0
1 이상의 숫자를 입력해주세요.
package edu.kh.control.practice;

import java.util.Scanner;

public class LoopPractice {
	
	Scanner sc = new Scanner(System.in);
	
	public void practice2() {
		
		System.out.print("1이상의 숫자를 입력하세요 : ");
		int num = sc.nextInt();
		
		if(num >= 1) {
			for(int i = num; i >= 1; i--) {
				System.out.print(i + " ");
			}
		} else {
			System.out.println("1 이상의 숫자를 입력해주세요.");
		}
	}

실습문제3

메소드명 : public void practice3(){}
1부터 사용자에게 입력 받은 수까지의 정수들의 합을 for문을 이용하여 출력하세요.

ex.
정수를 하나 입력하세요 : 8
1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 = 36
package edu.kh.control.practice;

import java.util.Scanner;

public class LoopPractice {
	
	Scanner sc = new Scanner(System.in);
	
	public void practice3() {
		
		System.out.print("정수를 하나 입력하세요 : ");
		int num = sc.nextInt();
		
		int sum = 0;
		
		for(int i = 1; i <= num; i++) {
			if (i == 1) {
				System.out.print(i);
			} else {
				System.out.print(" + " + i);
			}
			sum += i;
		}
		
		System.out.println(" = " + sum);
	}

실습문제4

메소드명 : public void practice4(){}
사용자로부터 두 개의 값을 입력 받아 그 사이의 숫자를 모두 출력하세요.
만일 1 미만의 숫자가 입력됐다면 "1 이상의 숫자를 입력해주세요"를 출력하세요.

ex.
첫 번째 숫자 : 8
두 번째 숫자 : 4
4 5 6 7 8
ex.
첫 번째 숫자 : 4
두 번째 숫자 : 8
4 5 6 7 8
ex.
첫 번째 숫자 : 9
두 번째 숫자 : 0
1 이상의 숫자를 입력해주세요.
package edu.kh.control.practice;

import java.util.Scanner;

public class LoopPractice {
	
	Scanner sc = new Scanner(System.in);
	
	public void practice4() {
		
		System.out.print("첫 번재 숫자 : ");
		int fn = sc.nextInt();
		
		System.out.print("두 번재 숫자 : ");
		int sn = sc.nextInt();
		
		if(fn < 1 || sn < 1) {
			System.out.println("1 이상의 숫자를 입력해주세요");
		} else {
			if(fn > sn) {
				for(int i = sn; i <= fn; i++) {
					System.out.print(i + " ");
				}
			} else {
				for(int i = fn; i <= sn; i++) {
					System.out.print(i + " ");
				}
			}
		}
	}

실습문제5

메소드명 : public void practice5(){}
사용자로부터 입력 받은 숫자의 단을 출력하세요.

ex.
숫자 : 4
===== 4단 =====
4 * 1 = 4
4 * 2 = 8
4 * 3 = 12
4 * 4 = 16
4 * 5 = 20
4 * 6 = 24
4 * 7 = 28
4 * 8 = 32
4 * 9 = 36
package edu.kh.control.practice;

import java.util.Scanner;

public class LoopPractice {
	
	Scanner sc = new Scanner(System.in);
	
	public void practice5() {
		
		System.out.print("숫자 : ");
		int num = sc.nextInt();
		
		System.out.printf("===== %d단 =====\n", num);
		
		for(int i = 1; i <= 9; i++) {
			System.out.printf("%d * %d = %d\n", num, i, num * i);
		}
	}

1개의 댓글

comment-user-thumbnail
2023년 7월 18일

좋은 글 감사합니다!

답글 달기