728x90
반응형
package chapter3;
import java.util.Scanner;
/**
* 두 정수를 입력받아 큰 수를 작은 수로 나눈 몫과 나머지를 출력하는 프로그램을 만들어 보자.
* 임의의 두 정수 a, b에 대하여 ((a+b) + |a-b|)/2는 큰 수, ((a+b) - |a-b|)/2는 작은 수이다. 절대값을 반환하는 메소드는 Math.abs(숫자)이다.
* 만약 -3의 절대값을 알아보고 싶으면 Math.abs(-3)이라고 쓰면 3이 반환된다. 이것을 이용하여 만들어보자.
* 어떤 수를 0으로 나누는 것은 수학적으로 성립하지 않으므로 0을 입력하지 않는다고 가정하고 프로그램을 작성.
*/
public class Ass1 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("첫 번째 숫자를 입력하세요: ");
int A = scanner.nextInt();
System.out.print("두 번째 숫자를 입력하세요: ");
int B = scanner.nextInt();
scanner.close();
int Big = ((A+B) + Math.abs(A-B)) / 2;
int Small = ((A+B) - Math.abs(A-B) ) /2;
int quo = Big / Small; //몫
int rem = Big % Small; //나머지
System.out.println("큰 수를 작은 수로 나눈 몫은" + quo + " 이고, 나머지는" + rem + " 이다.");
}
}
package chapter3;
import java.util.Scanner;
/**
* 메트로폴리스(거대도시)는 다음과 같은 2가지 조건 중 하나를 만족하여야 한다고 가정한다.
* 어떤 도시가 메트로폴리스인지를 알아보는 프로그램을 작성하여 보자.(삼항연산자 사용)
* 1. 한 나라의 수도이고, 인구가 100만 이상이어야 한다.
* 2. 연 소득이 1억 이상이 인구가 50만 이상이어야 한다.
*
*/
public class Ass2 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("수도입니까?(수도 : 1, 수도아님: 0)");
int A = scanner.nextInt();
System.out.print("총 인구는?(단위 : 만)");
int popul = scanner.nextInt();
boolean populC_1 = (popul >= 50) ? true : false;
boolean populC_2 = (popul >= 100) ? true : false;
System.out.print("연소득이 1억 이상인 인구는?(단위 : 만)");
int income = scanner.nextInt();
boolean incomeC = (income >= 50) ? true : false;
scanner.close();
if(populC_1==true && incomeC==true) System.out.println("이 도시는 메트로폴리스입니다.");
else if(populC_2==true && A ==1) System.out.println("이 도시는 메트로폴리스입니다.");
else System.out.println("이 도시는 메트로폴리스가 아닙니다.");
}
}
package chapter3;
import java.util.Scanner;
/**
* 입력 연도가 윤년인지 아닌지 확인하는 프로그램을 작성해보자.
* 윤년의 조건은 다음과 같다고 가정한다.
* 윤년은 4의 배수이어야 하고, 100의 배수는 아니어야 한다.
* 또한 400의 배수는 무조건 윤년이 된다.
*
*/
public class Ass3 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("윤년인지를 확인할 연도를 입력하세요: ");
int N = scanner.nextInt();
scanner.close();
if((N%4==0)&& !(N%100==0) ) System.out.println(N +"년은 윤년입니다.");
else if(N%400 == 0)System.out.println(N +"년은 윤년입니다.");
else System.out.println(N + "년은 윤년이 아닙니다.");
}
}
반응형
'language > java 과제' 카테고리의 다른 글
2. [java] BaseBallGame 만들기 (0) | 2021.06.10 |
---|---|
1. [java] 변수와 시스템 입력 이용하기 (0) | 2021.06.10 |