안녕하세요. 시작하는 코딩러 찬이입니다.
이번부터는 여러가지 예제를 푸는 시간을 가져보도록 하겠습니다!
오늘 풀어볼 예제는 <자바의 정석> 예제풀이입니다.
출처 : 자바의 정석 4장
문제 1 :
1+(1+2)+(1+2+3+4)+(1+2+3+4+5)+...+(1+2+3+4+5+6+7+8+9+10)의 결과를 계산하시오.
public class Main01 {
public static void main(String[] args) {
int sum = 0;
int total = 0;
for (int i = 1; i < 11; i++) {
sum += i;
total += sum;
}
System.out.println(total);
}
}
///실행결과
220
문제 2 :
1부터 20까지의 정수 중에서 2 또는 3의 배수가 아닌 수의 총합을 구하시오.
public class Main02 {
public static void main(String[] args) {
int sum = 0;
for(int i = 1; i <= 20; i++) {
if(i % 2 != 0 && i % 3 != 0) {
sum += i;
}
}
System.out.println(sum);
}
}
/// 실행결과
73
문제 3 : 다음의 for문을 while문으로 변경하시오.
/*
for(int i=0;i<=10;i++) {
for(int j=0;j<=i;j++)
System.out.print("*");
System.out.println();
}
*/
public class Main03 {
public static void main(String[] args) {
int i = 0;
while (i <= 10) {
int j = 0;
while (j <= i) {
System.out.print("*");
j++;
}
System.out.println("");
i++;
}
}
}
//실행결과
*
**
***
****
*****
******
*******
********
*********
**********
***********
문제 4 :
두 개의 주사위를 던졌을 때, 눈의 합이 6이 되는 모든 경우의 수를 출력하는 프로그램을 작성하시오.
public class Main04 {
public static void main(String[] args) {
for (int i = 1; i <= 6; i++) {
for (int j = 1; j <= 6; j++) {
if (i + j == 6) {
System.out.println(i + " + " + j + " = " + (i + j));
}
}
}
}
}
//실행결과
1 + 5 = 6
2 + 4 = 6
3 + 3 = 6
4 + 2 = 6
5 + 1 = 6
문제 5 :
방정식 2x+4y=10의 모든 해를 구하시오. 단, x와 y는 정수이고 각각의 범위는 0<=x<=10, 0<=y<=10 이다
public class Main03 {
public static void main(String[] args) {
for(int x = 0; x <= 10; x++) {
for(int y = 0; y <= 10; y++) {
if(2*x+4*y == 10) {
System.out.println("x = " + x +", y = " + y );
}
}
}
System.out.println();
}
}
//실행결과
x = 1, y = 2
x = 3, y = 1
x = 5, y = 0
오늘은~~~
여기까지!