토익

자바 문제풀이2

Bordercolli 2024. 9. 1. 12:31
728x90

문제1. 두 수를 입력받고 그 합을 출력하자

package Scanner;


import java.util.Scanner;

public class Scanner1 {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);
        System.out.print("첫 번쨰 숫자를 입력하세요");
        int num1=scanner.nextInt();

        System.out.print("두 번쨰 숫자를 입력하세요");
        int num2=scanner.nextInt();
        int sum=num1+num2;
        System.out.println("두 숫자의 합="+sum);
    }
}

 

문제2. 사용자로부터 두 개의 정수를 입력받고, 더 큰 수를 출력하는 프로그램 작성

두 숫자가 같은 경우 두 숫자는 같다고 출력하면 된다.

package Scanner;


import java.util.Scanner;

public class Scanner1 {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);

        System.out.print("첫 번째 숫자를 입력하세요");
        int num1=scanner.nextInt();
        System.out.print("두 번째 숫자를 입력하세요");
        int num2=scanner.nextInt();

        if (num1>num2){
            System.out.println(num1);
        }else if(num1<num2){
            System.out.println(num2);
        }else{
            System.out.println("두 숫자가 같습니다.");
        }


    }
}

 

문제3. 반복 예제1

1. 사용자가 입력한 문자열을 그대로 출력하는 예제를 만들어보자

2. exit라는 문자가 입력되면 프로그램 종료

3. 프로그램은 반복해서 실행된다.

package Scanner;


import java.util.Scanner;

public class Scanner1 {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);

        while(true){
            System.out.print("숫자1을 입력하세요 ");
            int num1=scanner.nextInt();

            System.out.print("숫자2를 입력하세요 ");
            int num2=scanner.nextInt();

            int sum=num1+num2;
            if(sum==0){
                System.out.println("프로그램을 종료합니다");
                break;
            }else{
                System.out.println("두 숫자의 합"+sum);
            }

        }
    }
}

 

문제4. 반복 예제2

1. 첫 번째 숫자와 두 번째 숫자를 더해서 출력

2. 첫 번쨰 숫자와 두 번째 숫자 모두 0을 입력하면 프로그램을 종료한다.

3. 프로그램은 반복해서 실행한다.

package Scanner;


import java.util.Scanner;

public class Scanner1 {
    public static void main(String[] args) {
        Scanner scanner=new Scanner(System.in);

        while(true){
            System.out.print("숫자1을 입력하세요 ");
            int num1=scanner.nextInt();

            System.out.print("숫자2를 입력하세요 ");
            int num2=scanner.nextInt();

            int sum=num1+num2;
            if(sum==0){
                System.out.println("프로그램을 종료합니다");
                break;
            }else{
                System.out.println(sum);
            }

        }
    }
}

 

문제5. 반복 예제3

사용자의 입력을 받아 그 합계를 계산하는 프로그램을 작성

사용자는 한 번에 한 개의 정수를 입력할 수 있으며, 사용자가 0을 입력하면 그 프로그램은 종료된다.

이때, 프로그램이 종료될때까지 사용자가 입력한 모든 정수의 합을 출력해야한다.

package Scanner;

import java.util.Scanner;

public class Scanner1 {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        int sum=0;
        while(true){
            System.out.print("정수를 입력하세요:(0은 종료) ");
            int num=input.nextInt();
            sum+=num;
            if (num==0){
                System.out.println("프로그램을 종료합니다. 지금까지의 답은: "+sum);
                break;
            }
    }
    }
}

 

문제6. 반복예제4

이름, 나이 입력받고 출력하기

 

<실행 결과 예시>

당신의 이름을 입력하세요: 자바

당신의 나이를 입력하세요: 30

당신의 이름은 자바이고, 나이는 30살 입니다.

package Scanner;

import java.util.Scanner;

public class Scanner1 {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);

        System.out.print("당신의 이름을 입력하세요: ");
        String name=input.nextLine();

        System.out.print("당신의 나이를 입력하세요: ");
        int age=input.nextInt();

        System.out.println("당신의 이름은 "+name+"이고, 나이는"+age+"살 입니다.");

            }
    }

 

문제7. 사용자로부터 하나의 정수를 입력 받아서 이 정수가 짝수인지 홀수인지 판별하는 프로그램 

package Scanner;

import java.util.Scanner;

public class Scanner1 {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);

        System.out.print("하나의 정수를 입력하세요: ");
        int integer= input.nextInt();

        if(integer%2==0){
            System.out.println("입력한 숫자 "+integer+"는 짝수 입니다");
        }else {
            System.out.println("입력한 숫자 "+integer+"는 홀수 입니다");
        }
            }
    }

 

문제8. 음식점 주문

1. 사용자로부터 음식이름, 가격, 수량을 입력 받아서 -> 주문한 음식의 총 가격을 계산-> 출력

2. 음식의 총 가격: foodprice * foodquantity=totalprice

3. "[음식이름][수량]개를 주문하셨습니다. 총 가격은 [총 가격]입니다."

package Scanner;


import java.util.Scanner;

public class Scanner1 {
    public static void main(String[] args) {
        Scanner input = new Scanner(System.in);

        System.out.print("음식이름을 입력해주세요:");
        String foodName=input.nextLine();

        int foodPrice, sum;

        System.out.print("몇 개를 구매하시겠습니까? ");
        int foodQuantity=input.nextInt();

        if (foodName.equals("pizza")){
            foodPrice=20000;
            sum=foodPrice*foodQuantity;
            System.out.println(foodName+" "+foodQuantity+"개를 주문하셨습니다. 총 가격은 "+sum+"입니다.");
        }


            }
    }

 

문제9. 구구단 출력

사용자로부터 하나의 정수를 입력 받고, 입력 받은 정수 n의 구구단을 출력하는 프로그램 작성해보자.

package Scanner;


import java.util.Scanner;

public class Scanner1 {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);

        System.out.print("정수를 입력하세요: ");
        int num=input.nextInt();

        for(int i=1; i<10; i++){
            int mul=num*i;
            System.out.println(num+"*"+i+"="+mul);
        }
    }
}

 

문제10. 변수 값 교환

1. 변수 a=10이 들어있고, b=20이 들어있다.

2. 변수 a의 값과 변수 b의 값을 서로 바꾸자

3. 다음 코드에서 시작과 종료 부분 사이에 변수의 값을 교환하는 코드를 작성

package Scanner.ex;

public class ChangeVarEX {
    public static void main(String[] args) {
        int a=20;
        int b=10;
        int temp;

        //시작: 코드를 작성하세요
        temp=a;
        a=b;
        b=temp;
        //종료: 코드를 작성하세요

        System.out.println("a = "+a);
        System.out.println("b = "+b);
    }
}

 

 

히히

 

문제10. 사이 숫자

사용자로부터 두 개의 정수를 입력받고, 두 정수 사이의 모든 정수를 출력하는 프로그램 작성

1. 사용자에게 첫 번째 숫자를 입력 받으세요. 변수 이름은 num1

2. 사용자에게 두 번째 숫자를 입력 받으세요. 변수 이름은 num2

3. 만약 첫 번째 숫자 num1이 두 번쨰 숫자 num2보다 크면 두 숫자를 교환하세요 

-> 참고: 교환을 위해 임시 변수 사용을 고려하세요

4. num1부터 num2까지의 각 숫자를 출력

-> 단 2,3,4 이렇게 구분해서 출력

package Scanner.ex;

import java.util.Scanner;

public class ChangeVarEX {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);

        System.out.print("첫 번째 숫자를 입력하세요");
        int num1=input.nextInt();
        System.out.print("두 번째 숫자를 입력하세요");
        int num2=input.nextInt();

        if(num1>num2){
            int temp;
            temp=num1;
            num1=num2;
            num2=temp;
        }

        for(int i=num1;i<=num2;i++){
            System.out.print(i);
            if (i!=num2){
                System.out.print(",");
            }
        }
    }
}

 

문제11. 이름과 나이 반복

1. 사용자로부터 이름과 나이를 반복해서 입력 받음 -> 입력받은 이름, 나이를 출력하는 프로그램 작성

2. 사용자가 '종료'를 입력하면 프로그램 종료

package Scanner.ex;

import java.util.Scanner;

public class ChangeVarEX {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);

        while(true){
            System.out.print("이름을 입력하세요(exit를 입력하면 종료): ");
            String name=input.nextLine();

            if(name.equals("exit")){
                System.out.println("프로그램을 종료합니다.");
                break;}

            System.out.print("나이를 입력하세요: ");
            int age=input.nextInt(); //10\n이렇게 입력될때, 10만 age가 가져간다.
            input.nextLine(); //nextLine은 \n(라인)를 읽고 버린다.

            System.out.println("입력한 이름: "+name+","+" 나이: "+age);


            }
        }
    }

 

문제12. 상품 가격 계산

1. 사용자로부터 상품의 가격(price)와 수량(quantity)을 입력받고, 총 비용을 출력하는 프로그램을 작성

2. 가격과 수량을 입력 받은 후 이들의 곱을 출력 -> 출력형태: "총 비용:[곱한 결과]"

3.  -1을 입력하여 가격 입력 종료

package Scanner.ex;

import java.util.Scanner;

public class ChangeVarEX {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);

        while(true){
            System.out.print("상품의 가격을 입력하세요 (-1을 입력하면 종료): ");
            int price=input.nextInt();

            if (price==-1){
                System.out.println("프로그램을 종료합니다.");
                break;
            }

            System.out.print("구매하려는 수량을 입력하세요: ");
            int quantity=input.nextInt();

            System.out.println("총 비용 :" +price*quantity);
            input.nextLine();
        }
        }
    }

 

문제13. 입력한 숫자의 합계와 평균

1. 사용자로부터 여러 개의 숫자를 입력 받고, 그 숫자들의 합계/ 평균을 계산

2. 사용자는 숫자를 입력하고, 마지막에는 -1을 입력하여 숫자 입력을 종료

3. 모든 숫자의 입력이 끝난 후에는 sum, average를 출력

4. 평균은 소수점 아래까지 계산

 

package Scanner.ex;

import javax.print.attribute.standard.PageRanges;
import java.util.Scanner;

public class ChangeVarEX {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        int sum=0, count=1;
        double average=0;
        while(true){
            System.out.print("숫자를 입력하세요(-1은 종료) :");
            int num=input.nextInt();
            if (num == -1) {
                System.out.println("프로그램을 종료합니다");
                System.out.println("입력하신 숫자의 합계는"+sum+" 평균은 "+average);
                break;
            }
            sum+=num;
            average=(double)sum/count;
            count++;
            input.nextLine();
        }
        }
    }

 

문제14. 입력한 숫자의 합계와 평균

1. 사용자로부터 여러 개의 숫자를 입력 받고, 그 숫자들의 합계/ 평균을 계산

2. 사용자는 숫자를 입력하고, 마지막에는 -1을 입력하여 숫자 입력을 종료

3. 모든 숫자의 입력이 끝난 후에는 sum, average를 출력

4. 평균은 소수점 아래까지 계산

package Scanner.ex;

import javax.print.attribute.standard.PageRanges;
import java.util.Scanner;

public class ChangeVarEX {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);

        int sum = 0, count=0;
        int input=0;

        System.out.println("숫자를 입력하세요. 입력을 중단하려면 -1을 입력하세요: ");

        while ((input = scanner.nextInt()) != -1) {
            sum+=input;
            count++;
        }
        double average=(double) sum/count;
    }
    }

 

문제15. 상품 구매

1. 사용자로부터 상품 정보(상품명, 가격, 수량)을 입력받고, 이들의 총 가격을 출력하는 프로그램을 작성

2. 사용자는 여러 상품을 추가하고, 결제할 수 있으며 프로그램을 언제든지 종료할 수 있다.

3. 사용자에게 다음 세 가지 옵션을 제공해야 한다.

 1: 상품 입력, 2: 결제, 3: 프로그램 종료, 옵션은 정수로 입력 받으며 옵션을 저장하는 변수 이름은 option

4. 상품 입력 옵션을 선택하면 사용자에게 상품명과 가격, 수량을 입력

5. 결제 옵션을 선택하면 총 비용을 출력 후 총 비용을 0으로 초기화(사용자가 총 비용을 확인하고 결제를 완료했다고 가정, 따라서 다음 사용자를 위해 비용을 다시 0으로 초기화)

6. 프로그램 종료 옵션을 선택하면, "프로그램을 종료합니다." 라는 메시지를 출력하고 프로그램 종료

package Scanner.ex;

import javax.print.attribute.standard.PageRanges;
import java.util.Scanner;

public class ChangeVarEX {
    public static void main(String[] args) {
        Scanner input=new Scanner(System.in);
        int option=0, price, quantity, sum=0;
        String productName;
        int culmulativeSum=0;

        while((option=input.nextInt())!=3){
            input.nextLine();

            if (option == 1) {
                System.out.print("상품명을 입력하세요: ");
                productName=input.nextLine();
                System.out.print("상품의 가격을 입력하세요: ");
                price=input.nextInt();
                System.out.print("구매수량을 입력하세요: ");
                quantity=input.nextInt();

                sum=price*quantity;
                culmulativeSum+=sum;

                System.out.println("상품명: "+productName+" 가격:"+price+" 수량:"+quantity+"합계: "+sum);
                input.nextLine();
            }

            if (option == 2) {
                System.out.println("총 비용: "+culmulativeSum);
                sum=0;
            }


            }
        System.out.println("프로그램을 종료합니다.");
        }
    }

오늘도 문풀 완료

'토익' 카테고리의 다른 글

자바문풀4  (1) 2024.09.03
자바 문풀 3  (1) 2024.09.02
8.25 토익 후기  (0) 2024.08.26
토익 문법 정리2(서아쌤 6시간)  (0) 2024.08.19
토익 문법 정리(서아쌤 6시간)  (0) 2024.08.18