공부하는 히욤이

[기초다지기] : 반복제어문1 - 자가진단 본문

Algorithm/Jungol

[기초다지기] : 반복제어문1 - 자가진단

히욤이 2019. 2. 25. 23:52

536 : 반복제어문1 - 자가진단1

제한시간: 1000 ms    메모리제한: 0 MB
해결횟수: 8085 회    시도횟수: 14676 회   



1부터 15까지 차례로 출력하는 프로그램을 작성하시오. while문을 이용하세요.







1 2 3 4 5 6 7 8 9 10 11 12 13 14 15



int 변수를 선언하고 초기값으로 1을 대입한다.




1
2
3
4
5
6
7
8
9
10
11
12
13
 
public class Main{
 
    public static void main(String[] args) {
        int i = 1;
        while (i<16) {
            System.out.print(i + " ");
            i++;
        }
    }
 
}
 
cs











537 : 반복제어문1 - 자가진단2

제한시간: 1000 ms    메모리제한: 0 MB
해결횟수: 7561 회    시도횟수: 14096 회   



100 이하의 양의 정수만 입력된다. while 문을 이용하여 1부터 입력받은 정수까지의 합을 구하여 출력하는 프로그램을 작성하시오.







10
55






1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import java.util.Scanner;
 
public class Main{
 
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int i = 1;
        int sum = 0;
        
        while (i<=n) {
            sum +=i;
            i++;
        }
        System.out.print(sum);
    }
 
}
 
cs









538 : 반복제어문1 - 자가진단3

제한시간: 1000 ms    메모리제한: 0 MB
해결횟수: 6727 회    시도횟수: 20279 회   



한 개의 정수를 입력받아 양수(positive integer)인지 음수(negative number)인지 출력하는 작업을 반복하다가 0이 입력되면 종료하는 프로그램을 작성하시오.

* 입출력예의 진한글씨는 출력값입니다.​







number? 10
positive integer
number? -10
negative number
number? 0





1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import java.util.Scanner;
 
public class Main{
 
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        while (true) {
            System.out.print("number? ");
            int n = sc.nextInt();
            if (n>0) {
                System.out.println("positive integer");
            } else if (n<0) {
                System.out.println("negative number");
            } 
            
            if (n ==0) {
                break;
            }
            
        }
    
    }
 
}
 
cs










539 : 반복제어문1 - 자가진단4

제한시간: 1000 ms    메모리제한: 0 MB
해결횟수: 6517 회    시도횟수: 15863 회   



정수를 계속 입력받다가 100 이상의 수가 입력이 되면 마지막 입력된 수를 포함하여 합계와 평균을 출력하는 프로그램을 작성하시오.

(평균은 반올림하여 소수 첫째자리까지 출력한다.)







1 2 3 4 5 6 7 8 9 10 100
155
14.1





1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import java.util.Scanner;
 
public class Main{
 
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int sum = 0;
        float cnt =0;
        
        while (true) {
            int n = sc.nextInt();
            sum+=n;
            cnt++;
            
            if (n>=100) {
                System.out.println(sum);
                System.out.println(Math.round(sum/cnt*10)/10.0);
            }
        }
    
    }
 
}
 
cs









540 : 반복제어문1 - 자가진단5

제한시간: 1000 ms    메모리제한: 0 MB
해결횟수: 5851 회    시도횟수: 9720 회   



정수를 입력받아서 3의 배수가 아닌 경우에는 아무 작업도 하지 않고 3의 배수인 경우에는 3으로 나눈몫을 출력하는 작업을 반복하다가 -1이 입력되면 종료하는 프로그램을 작성하시오.

* 입출력예의 진한 글씨는 실행값이다.







5
12
4
21
7
100
-1



3의 배수는 3으로 나눈 나머지가 0이다.






1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import java.util.Scanner;
 
public class Main{
 
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n;
        
        while (true) {
            n = sc.nextInt();
            if (n%3 ==0) {
                System.out.println(n/3);
            } else  if (n==-1)  {
                break;
            } else{
                
                continue;
            }
        
        }
    
    }
 
}
 
cs





633 : 반복제어문1 - 자가진단6

제한시간: 1000 ms    메모리제한: 128 MB
해결횟수: 3791 회    시도횟수: 17992 회   



아래와 같이 나라 이름을 출력하고 숫자를 입력받아 해당하는 나라의 수도를 출력하는 작업을 반복하다가 해당하는 번호 이외의 숫자가 입력되면 "none"라고 출력한 후 종료하는 프로그램을 작성하시오.

* 각 나라의 수도 : 
대한민국 = 서울(Seoul)
미국 = 워싱턴(Washington)
일본 = 동경(Tokyo)
중국 = 북경(Beijing)

* 입출력시 모양은 "입·출력예"와 같이 하시오.​







1. Korea
2. USA
3. Japan
4. China
number? 1

Seoul

1. Korea
2. USA
3. Japan
4. China
number? 5

none







1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
import java.util.Scanner;
 
public class Main{
 
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
 
        while (true) {
            System.out.println("1. Korea");
            System.out.println("2. USA");
            System.out.println("3. Japan");
            System.out.println("4. China");
            System.out.print("number? ");
            int n =sc.nextInt();
            System.out.println();
            
            if (n ==1) {
                System.out.println("Seoul");
            } else if (n==2) {
                System.out.println("Washington");
 
            } else if (n==3) {
                System.out.println("Tokyo");
 
            } else if (n==4) {
                System.out.println("Beijing");
 
            } else {
                System.out.println("none");
                break;
            }
            System.out.println();
        }
    }
 
}
 
cs