1. 조건문의 3가지 종류를 나열하고 설명하시오. |
조건문은 if, else if, else 총 3가지로
if는 조건식이 참이면 if 안의 내용을 출력하고 조건이 거짓이라면 출력하지 말라는 뜻이다.
else는 조건이 A or B를 수행할 때 else문을 사용한다. (if문의 조건이 거짓일 경우 출력해주는 값)
else if는 if문의 결과 값이 3가지 형식으로 나눠질 때 사용한다.
예문)
90점 이상은 A를 (if)
80점 이상은 B를 (else if)
그 이외는 C학점을 (else)
2. 국어:80 수학:80 영어:60 // 총점과 평균을 출력하고, 평균에 따른 수우미양가를 출력하시오. (if문, else if문 활용) |
// 파일이름 : Assignment1_if
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : 국어:80 수학:80 영어:60
// 총점과 평균을 출력하고, 평균에 따른 수우미양가를 출력하시오.
public class Assignment1_if {
public static void main(String[] args) {
int math = 80;
int english = 80;
int korea = 80;
int sum = math + english + korea;
int avg = sum / 3;
System.out.println("당신의 총점은 " + sum + "이고" + " 당신의 평균은 " + avg + "입니다");
if (avg > 90) {
System.out.println(" 당신은 수입니다.");
} else if (avg > 80) {
System.out.println(" 당신은 우입니다.");
} else if (avg > 70) {
System.out.println(" 당신은 미입니다.");
} else if (avg > 60) {
System.out.println(" 당신은 양입니다.");
} else if (avg > 50) {
System.out.println(" 당신은 가입니다.");
}
}
}
// 결과
// 당신의 총점은 240이고 당신의 평균은 80입니다
// 당신은 미입니다.
3.-80, 33 ,55 = 최대값을 출력하시오. (if, else if, else문 활용) |
// 파일이름 : Assignment1_if2
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 :-80, 33 ,55 = 최대값을 출력하시오.
public class Assignment1_if2 {
public static void main(String[] args) {
int a = -80;
int b = 33;
int c = 55;
int max;
if (a >= b && a >= c) {
max = a;
} else if (b >= a && b >= c) {
max = b;
} else {
max = c;
}
System.out.println("최댓값은 " + max + "입니다.");
}
}
// 결과
// 최댓값은 55입니다.
4.switch 문에서 '걸어서 하늘까지' 를 설명하시오. |
5.- int num = -10 을 할당후 해당 정수에 대한 절대값을 출력하는 프로그램을 작성하시오. |
// 파일이름 : Assignment1_absolute
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : .- int num = -10 을 할당후 해당 정수에 대한 절대값을 출력하는 프로그램을 작성하시오.
public class Assignment1_absolute {
public static void main(String[] args) {
int num = -10;
System.out.println("설정 정수값 : " + num);
System.out.println("절대값 출력 : " + Math.abs(num));
}
}
// 결과
// 설정 정수값 : -10
// 절대값 출력 : 10
6.반복문에서 while 문과 do while 문의 차이는? |
while은 조건이 맞다면 반복문을 바로 실행하는 반면
do while은 조건문 앞에 실행할 내용이 있다면 한번 실행하고 조건문에 들어간다는 뜻이다.
7.for 문에서 for 문이 실행되는 순서를 설명하시오. |
for문은 초기화식을 먼저 진행 후 조건식을 거쳐서 조건식이 맞다면 실행문장을 진행 후 증감식을 처리한다.
만약 조건식이 거짓이라면 for문을 종료한다.
8. 구구단을 출력하는 프로그램을 만드시오.(while 문 사용할것) |
// 파일이름 : While_assignment1_x.java
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : 구구단을 출력하는 프로그램을 만드시오.(이중 while문)
public class While_assignment1_x {
public static void main(String[] args) {
int i = 1;
int j = 1;
while (i <= 9) {
while (j <= 9) {
System.out.println(i + "*" + j + "은" + (i * j) + "이다.");
j++;
}
j = 1; //초기화 값을 넣기.
i++;
}
}
}
// 결과
// 1*1은1이다.
// 1*2은2이다. ~반복
// 2*1은2이다. ~반복
조건을 2번 넣을 경우 while같은 경우에는 이중 while문을 사용하면 된다.
9.1부터 100까지의 합을 구하시오. (for문 활용) |
// 파일이름 : While_assignment2.java
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : 1부터 100까지의 합을 구하시오.
public class While_assignment2 {
public static void main(String[] args) {
int sum = 0;
for (int i=1; i <= 100; i++) {
sum+=i;
}
System.out.println("1부터 100까지의 합 = " + sum);
}
}
// 결과
// 1부터 100까지의 합 = 5050
for문 안에서 sysout을 선언할 경우 문자열을 반복하니 수식 그대로 적는다.
그리고 for문에서 나와서 sum을 선언해준다.
10.1부터 100까지의 홀수들의 합을 구하시오. (for, if문 활용) |
// 파일이름 : for_assignment21.java
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : 1부터 100까지의 합을 구하시오. (홀수)
public class for_assignment21 {
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i <= 100; i++) {
if (i % 2 == 1) {
sum += i;
}
}
System.out.println("1부터 100까지의 합 = " + sum);
}
}
// 결과
// 1부터 100까지의 홀수의 합 = 2500
if라는 조건문을 밖에다 쓰는게 아니라 1~100을 구하는 규칙 안에
조건을 부여해주는 것이기에 안에 넣어준다.
11.반복문에서의 break 와 continue 를 설명하시오. |
break는 반복문을 멈추라는 뜻이고 continue는 계속 진행하라는 뜻이다.
12. - 1과 1000 사이의 숫자중 3의 배수 이자 5의 배수인 첫번재 수는? (for문, if문, break 활용) |
// 파일이름 : for_assignment21.java
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : 1과 1000 사이의 숫자중 3의 배수 이자 5의 배수인 첫번재 수는?
public class for_assignment21 {
public static void main(String[] args) {
for (int i = 1; i <= 1000; i++) {
if ((i % 3 == 0) && (i % 5 == 0)) {
System.out.print(i + " ");
break;
}
}
}
}
// 결과
// 15
첫번째 수를 구하기 위해서는 한번만 실행하게 break로 멈춰줘야 한다.
13. - 1과 1000 사이의 숫자중 2의 배수 이자 3의 배수인 수는 모두 몇개인가? (for, if문) |
// 파일이름 : for_assignment21.java
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : 1과 1000 사이의 숫자중 2의 배수이자 3의 배수인 수는 모두 몇개인가?
public class for_assignment21 {
public static void main(String[] args) {
int count=0;
for (int i = 1; i <= 1000; i++) {
if ((i % 2 == 0) && (i % 3 == 0)) {
count++;
}
}
System.out.println(count);
}
}
// 결과
// 166
카운트를 조건부 안에서 세주고 조건부에 나와서 sysout으로 표현한다
14.화폐매수 구하기? (if문) |
// 파일이름 : Assignment1_for2
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : 126500 의 금액을 한국화폐으로 바꾸었을 때 각각 몇 개의 화폐가 필요한지 계산해서 출력하라.
public class Assignment1_for2 {
public static void main(String[] args) {
int balance = 126500;
int count_5m = 0;
int count_1m = 0;
int count_5s = 0;
int count_1s = 0;
int count_5 = 0;
int count_1 = 0;
if (balance >= 50000) {
count_5m = balance/50000;
balance -= count_5m * 50000; // 이게 없으면 차감 처리가 안됨.
}
if (balance >= 10000) {
count_1m = balance/10000;
balance -= count_1m * 10000;
}
if (balance >= 5000) {
count_5s = balance/5000;
balance -= count_5s * 5000;
}
if (balance >= 1000) {
count_1s = balance/1000;
balance -= count_1s * 1000;
}
if (balance >= 500) {
count_5 = balance/500;
balance -= count_5 * 500;
}
if (balance >= 100) {
count_1 = balance/100;
balance -= count_1 * 100;
}
System.out.println("오만원 : "+ count_5m + " 장");
System.out.println("만원 : "+ count_1m + " 장");
System.out.println("오천원 : "+ count_5s + " 장");
System.out.println("1천원 : "+ count_1s + " 장");
System.out.println("5벡원 : "+ count_5 + " 개");
System.out.println("1백원 : "+ count_1 + " 개");
}
}
// 결과
// 오만원 : 2 장
// 만원 : 2 장
// 오천원 : 1 장
// 1천원 : 1 장
// 5벡원 : 1 개
// 1백원 : 0 개
해당 원리는 조건문인 if문을 활용해서 그 전 데이터가 누적되는 원리를 이용한 것이다.
일단 총 금액, 조건별로 count 해줄 것들을 int화 시켜준다.
그 후 조건문에서는 총값이 5만원보다 높다면 count 개수를 세주고
* 개수 공식 : 총값 / 조건부(50000원)
데이터가 누적될 수 있도록 차감 수식을 넣어준다.
그 후 반복후 조건문을 나와 개수 표현문을 넣어준다.
15. 90, 70 100 세 수중 max (삼항연산자를) 활용하여 값을 구하시오. |
// 파일이름 : Assignment1_if3
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : 90, 70 100 세 수중 max (삼항연산자를) 활용하여 값을 구하시오.
public class Assignment1_if3 {
public static void main(String[] args) {
int num1 = 90;
int num2 = 70;
int num3 = 100;
int max = 0;
max = ( num1 > num2 ? num1 : num2) > num3?
(num1>num2 ? num1 : num2):num3 ;
System.out.println(max);
}
}
// 결과
// 100
조건 ? : (num1 > num2 ? num1 : num2) > num3 ?
참일 때 : (num1>num2 ? num1 : num2) :
거짓일 때 : num3
삼항 연산자를 이용한다는 것은 참과 거짓 중 어느 것을 할당한지 표현하는 식으로
삼항 연산자가 2번 있는 이유는 num1, num2에 대한 참과 거짓이 필요하기 때문에
이런식으로 진행한 것이다.
16.반복문 3가지의 무한루프 만드는 방법은? |
반복문에 조건에 ;;, true를 넣어준다.
do while의 경우에도 do while(true)로 실시한다.
17.구구단 출력을 하시오. (2중 for문) |
// 파일이름 : Assignment1_for2
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : 구구단을 출력하는 과정
public class Assignment1_for2 {
public static void main(String[] args) {
for (int i = 1; i < 10; i++) {
for (int j = 1; j < 10; j++) {
System.out.println(i + "*" + j + "=" + i * j);
}
System.out.println();
}
}
}
// 결과
// 1x1=1
// 1x2=2 .. 2x1=2
18.짝수단만 찍으시오. (for,if,for문) |
// 파일이름 : Assignment1_for_if1
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : 구구단 2의 배수만을 출력하는 과정
public class Assignment1_for_if1 {
public static void main(String[] args) {
for (int i = 2; i < 10; i++) {
if (i % 2 != 0)
continue;
for (int j = 1; j < 10; j++) {
System.out.println(i + "x" + j + "=" + i * j);
}
System.out.println();
}
}
}
// 결과
// 2x1=2
// 2x2=4 .. 4x1=4
19.3의 배수인 단만 출력하시오.(3.6.9단만 출력) (for,if,for문) |
// 파일이름 : For1_assignment1.java
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : 3.6.9단만 출력
public class For1_assignment1 {
public static void main(String[] args) {
for (int i = 1; i <= 9; i++) {
if ((i % 3) != 0)
continue;
for (int j = 1; j <= 9; j++) {
System.out.println(i +"*"+j+"="+(i*j));
System.out.println();
}
}
}
}
// 결과
// 3*1=3 .. 3*2=6
// 6*1=6 .. 6*2=12
// 9*1=9 .. 9*2=18
20. 5*5 별을 출력하는 프로그램을 만드시오. (2중 포문) |
// 파일이름 : Assignment2_for1
// 작성자 : 박지인
// 작성일 : 2022년 10월 27일
// 목 적 : 5*5 별을 출력하는 프로그램을 만드시오.
public class Assignment2_for1 {
public static void main(String[] args) {
System.out.println("<1>");
for (int i = 1; i <= 5; i++) {
for (int j = 1; j <= 5; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
// 결과
//<1>
//*****
//*****
21. 정방향 별 계단을 출력하는 프로그램을 만드시오. (2중 포문) |
// 파일이름 : Assignment2_for1
// 작성자 : 박지인
// 작성일 : 2022년 10월 28일
// 목 적 : 정방향 별 계단을 출력하는 프로그램을 만드시오.
public class Assignment2_for1 {
public static void main(String[] args) {
System.out.println("<2>");
for (int i = 1; i <= 5; i++) {
for (int j = 1; j <= i; j++) {
System.out.print("*");
}
System.out.println();
}
}
}
// 결과
//<2>
//*
//**
* 참고 사이트 |
'JAVA개념 시작하기' 카테고리의 다른 글
JAVA 6일차 - 클래스와 인스턴스 (0) | 2022.10.31 |
---|---|
Java 5일차 - 1주일 치 정리 (변수~메소드) (0) | 2022.10.31 |
JAVA 3일차 - 상수와 형 변환 & 연산자 (0) | 2022.10.26 |
JAVA 2일차 - 자료형 (0) | 2022.10.25 |
JAVA 1일차 - HelloWorld, 명령어, 컴파일, JAVA언어 창시자, JDK (0) | 2022.10.24 |