안녕하세요. 첫 게시물을 자바 코딩 연습 일지로 시작하게되었습니다.
이미 진행한 적 있는 실습이지만 다시 복습해가면서 상기시켜보려합니다.
실습문제 1번)
두 정수를 입력받아 합을 구하여 출력하는 프로그램을 작성하라. 키보드 입력은 Scanner 클래스를 이용하라.
package Java_Essential;
import java.util.Scanner;
public class Lesson_1 {
public static void main(String[] args)
{
Scanner Bascket = new Scanner(System.in); // 사용자로부터 데이터를 입력받는다.
System.out.print("두 정수를 입력해주세요 !! "); // 두 정수를 입력받도록 도움말을 프린트한다.
int a = Bascket.nextInt(); // 바구니에 입력받은 정수 하나를 넣는다.
int b = Bascket.nextInt(); // 바구니에 입력받은 두번째 정수를 넣는다.
int sum = a+b; // 두 수를 더해 sum에 입력한다.
System.out.println(a+" + "+b+ " 은 " +sum); // a,b,sum 순서로 출력하지만 중간 +를 문자로 출력한다.
Bascket.close(); // 모든 작업이 끝났으면 실행을 마무리한다.
}
}
출력)
실습문제 2번)
한 층의 높이가 5m일 때, 건물이 몇 층인지 입력받아 높이를 출력하라.
package Java_Essential;
import java.util.Scanner;
public class Lesson_2 {
public static void main(String[] args)
{
Scanner height = new Scanner(System.in); // 사용자로부터 데이터를 입력받는다.
System.out.print("건물이 몇 층인지 입력해주세요 = "); // 건물 높이를 입력받도록 도움말을 프린트한다.
int a = height.nextInt(); // 입력받은 정수 하나를 넣는다.
int Building = 5; // 한 층의 높이는 5m
int result = a * Building; // 두 수를 연산함.
System.out.println("입력하신 건물의 층 수는 = "+a+ "층 입니다.");
System.out.println("따라서 건물의 높이는 = "+result+ "m 입니다.");
height.close(); // 모든 작업이 끝났으면 실행을 마무리한다.
}
}
출력)
실습문제 4번)
2차원 평면에서 하나의 직사각형은 두 점으로 표현된다. (50,50)과 (100,100)의 두 점으로 이루어진 사각형이 있을때, 입력 값 (x,y)를 받아 이 직사각형 안에 있는지를 판별하는 프로그램을 작성하라.
package Java_Essential;
import java.util.Scanner;
public class Lesson_4 {
public static void main(String[] args)
{
Scanner scanner = new Scanner(System.in); // 사용자로부터 데이터를 입력받는다.
System.out.print("점 (x,y)의 좌표를 입력하세요>> ");
int x = scanner.nextInt();
int y = scanner.nextInt();
if (x > 50 && x < 100 && y > 50 && y < 100)
{
System.out.print("점("+x+","+y+")은 (50,50)과 (100,100)의 '사각형 내'에 있습니다.");
}
else
System.out.print("점("+x+","+y+")은 (50,50)과 (100,100)의 '사각형 밖'에 있습니다.");
scanner.close(); // 모든 작업이 끝났으면 실행을 마무리한다.
}
}
출력)
실습문제 6번)
돈의 액수를 입력받아 오만원권, 만원권, 천원권, 500원짜리 동전, 100원짜리 동전, 10원짜리 동전, 1원짜리 동전 각 몇 개로 변환되는지 출력하라. (Scanner, if문 연습)
package Java_Essential;
import java.util.Scanner;
public class Lesson_6 {
public static void main(String[] args)
{
Scanner scanner = new Scanner(System.in); // 사용자로부터 데이터를 입력받는다.
System.out.print("돈의 액수를 입력하세요>> ");
int money = scanner.nextInt();
int sum = 0;
if (money % 50000 != 0)
{
sum = money / 50000;
System.out.print("5만원권은 "+sum+"장, ");
money = money - (sum * 50000);
sum = money / 10000;
System.out.print("1만원권은 "+sum+"장, ");
money = money - (sum * 10000);
sum = money / 1000;
System.out.print("천원권은 "+sum+"장, ");
money = money - (sum * 1000);
sum = money / 500;
System.out.print("500원은 "+sum+"개, ");
money = money - (sum * 500);
sum = money / 100;
System.out.print("100원은 "+sum+"개, ");
money = money - (sum * 100);
sum = money / 10;
System.out.print("10원은 "+sum+"개, ");
money = money - (sum * 10);
sum = money / 1;
System.out.print("1원은 "+sum+"개, ");
money = money - (sum * 1);
}
else
{
sum = money / 50000;
System.out.print("5만원권만 "+sum+"장 입니다.");
}
scanner.close(); // 모든 작업이 끝났으면 실행을 마무리한다.
}
}
출력)
실습문제 8번)
음료수 종류와 잔 수를 입력받으면 가격을 알려주는 프로그램을 작성하라.(if문 or switch문 활용)
package Java_Essential;
import java.util.Scanner;
public class Lesson_8 {
public static void main(String[] args)
{
Scanner scanner = new Scanner(System.in); // 사용자로부터 데이터를 입력받는다.
System.out.print("커피를 주문하세요.>> ");
String coffee = scanner.next(); // String은 next()로 입력받는다.
int num = scanner.nextInt();
if (coffee.equals("에스프레소"))
{
System.out.println("주문하신 커피는 "+coffee+","+num+"잔이며,");
num *= 2000;
System.out.println("가격은"+num+"원 입니다.");
}
else if (coffee.equals("아메리카노"))
{
System.out.println("주문하신 커피는 "+coffee+","+num+"잔이며,");
num *= 2500;
System.out.println("가격은"+num+"원 입니다.");
}
else if (coffee.equals("카푸치노"))
{
System.out.println("주문하신 커피는 "+coffee+","+num+"잔이며,");
num *= 3000;
System.out.println("가격은"+num+"원 입니다.");
}
else if (coffee.equals("카페라떼"))
{
System.out.println("주문하신 커피는 "+coffee+", "+num+"잔이며,");
num *= 3500;
System.out.println("가격은 "+num+"원 입니다.");
}
else
{
System.out.print("주문하신 메뉴는 없습니다.");
}
scanner.close(); // 모든 작업이 끝났으면 실행을 마무리한다.
}
}
출력)
실습문제 10번)
실습 문제 8번을 변형해보자. 에스프레소의 경우 10잔 이상을 주문하면 가격의 5%를 할인해준다.
package Java_Essential;
import java.util.Scanner;
public class Lesson_10 {
public static void main(String[] args)
{
Scanner scanner = new Scanner(System.in); // 사용자로부터 데이터를 입력받는다.
System.out.print("커피를 주문하세요.>> ");
String coffee = scanner.next(); // String은 next()로 입력받는다.
int num = scanner.nextInt();
if (coffee.equals("에스프레소") && num > 9)
{
System.out.println("주문하신 커피는 "+coffee+","+num+"잔이며,");
num *= 2000 - (2000 * 5/100); // 5%할인 수식
System.out.println("가격은 5% 할인되어 "+num+"원 입니다.");
}
else if (coffee.equals("에스프레소"))
{
System.out.println("주문하신 커피는 "+coffee+","+num+"잔이며,");
num *= 2000;
System.out.println("가격은"+num+"원 입니다.");
}
else if (coffee.equals("아메리카노"))
{
System.out.println("주문하신 커피는 "+coffee+","+num+"잔이며,");
num *= 2500;
System.out.println("가격은"+num+"원 입니다.");
}
else if (coffee.equals("카푸치노"))
{
System.out.println("주문하신 커피는 "+coffee+","+num+"잔이며,");
num *= 3000;
System.out.println("가격은"+num+"원 입니다.");
}
else if (coffee.equals("카페라떼"))
{
System.out.println("주문하신 커피는 "+coffee+", "+num+"잔이며,");
num *= 3500;
System.out.println("가격은 "+num+"원 입니다.");
}
else
{
System.out.print("주문하신 메뉴는 없습니다.");
}
scanner.close(); // 모든 작업이 끝났으면 실행을 마무리한다.
}
}
출력)
실습해본 결과 시간이 좀 소요됐지만, 자바의 기본적인 문법구조를 이해하고, 가볍게 응용할 수 있었던 문제였습니다.
실습을 진행하며 조금 더 쉬운 문법을 고려해보기도 하고, 주어진 조건에 따라 코딩을 바꾸기도 해봤습니다.
긴 글 봐주셔서 감사합니다.
'Programming > Java_자바' 카테고리의 다른 글
[JAVA 기초] 대중교통 이용 프로그램 만들기 (0) | 2021.12.08 |
---|---|
[JAVA 기초] 생성자 (0) | 2021.12.08 |
[JAVA 기초] (2, 8, 10,16) 진수 별 표현 방식 및 출력 (0) | 2021.12.06 |
[JAVA 에센셜] 자바 코딩 연습_챕터4_실습문제 (0) | 2021.04.06 |
[JAVA 에센셜] 자바 코딩 연습_챕터3_실습문제 (0) | 2021.03.31 |