2015 IT 웹 기반 개발자과정/JAVA
JAVA 반복제어문2 - 형성평가6~A 정올
by 한여름밤의코딩
2015. 10. 24.
//6번 문제
import java.util.Scanner;
public class ex1 {
public static void main(String[] args) {
// 두 개의 정수를 입력받아 두 정수 사이(두 정수를 포함)에 3의 배수이거나
// 5의 배수인 수들의 합과 평균을 출력하는 프로그램을 작성하시오.
Scanner sc = new Scanner(System.in);
int sum =0, cnt=0, num1 = 0, num2 =0;
System.out.println("두 개의 정수를 입력하세요");
num1 = sc.nextInt();
num2 = sc.nextInt();
if (num1 <0||num2<0) {
System.out.println("입력값이 올바르지 않습니다.");
System.out.println("프로그램 종료합니다.");
System.exit(0);
}
if(num1>num2){
for(;num2<=num1;num2++){
if(num2%3==0 || num2%5==0){
sum += num2;
cnt++;
}
}//for end
}else if(num2>num1){
for(;num1<=num2;num1++){
if(num1%3==0 || num1%5==0){
sum += num1;
cnt++;
}
}//for end
}else if(num2 == num1){
sum = num2;
cnt++;
} //if end
System.out.println("합계는 "+sum+"입니다");
System.out.println("평균은 "+(double)(sum)/cnt+"입니다");
}
}
//7번 문제
import java.util.Scanner;
public class ex2 {
public static void main(String[] args) {
// 한 개의 자연수를 입력받아 그 수의 배수를 차례로
// 10개 출력하는 프로그램을 작성하시오.
Scanner sc = new Scanner(System.in);
int num = 0;
System.out.println("한 개의 자연수를 입력하세요");
num = sc.nextInt();
if (num < 0) {
System.out.println("잘못된 값을 입력하셨습니다.");
System.out.println("프로그램 종료합니다.");
System.exit(0);
}//if end
System.out.println(num+"의 배수 10개는 : ");
for (int i = 1; i < 11; i++) {
System.out.print(num*i+" ");
}//for end
}
}
//8번 문제
import java.util.Scanner;
public class ex3 {
public static void main(String[] args) {
// 행과 열의 수를 입력받아 다음과 같이 출력하는 프로그램을 작성하시오.
입력 : 3 4
1 2 3 4
2 4 6 8
3 6 9 12
Scanner sc = new Scanner(System.in);
int row = 0, col=0;
System.out.println("행의 수를 입력하세요");
col = sc.nextInt();
System.out.println("열의 수를 입력하세요");
row = sc.nextInt();
if (row <= 0 || col <= 0) {
System.out.println("잘못된 값을 입력하셨습니다.");
System.out.println("프로그램 종료합니다.");
System.exit(0);
}//if end
for (int i = 1; i <= row; i++) {
for (int j = 1; j <= col; j++) {
System.out.print(i*j+" ");
}//inner for end
System.out.println(" ");
}//outer for end
}
}
//9번 문제
import java.util.Scanner;
public class ex4 {
public static void main(String[] args) {
// 정수를 입력받아 다음과 같이 순서쌍을 출력하는 프로그램을 작성하시오.
입력 : 4
(1, 1) (1, 2) (1, 3) (1, 4)
(2, 1) (2, 2) (2, 3) (2, 4)
(3, 1) (3, 2) (3, 3) (3, 4)
(4, 1) (4, 2) (4, 3) (4, 4)
Scanner sc = new Scanner(System.in);
int num=0;
System.out.println("정수를 입력하세요");
num = sc.nextInt();
if (num <= 0) {
System.out.println("잘못된 값을 입력하셨습니다.");
System.out.println("프로그램 종료합니다.");
System.exit(0);
}//if end
for (int i = 1; i <= num; i++) {
for (int j = 1; j <= num; j++) {
System.out.print("("+i+", "+j+") ");
}//inner for end
System.out.println(" ");
}//outer for end
}
}
//10번 문제
import java.util.Scanner;
public class ex5 {
public static void main(String[] args) {
// 2부터 9까지의 수 중 2개를 입력받아 입력받은 수 사이의 구구단을 출력하는 프로그램을 작성하시오.
// 단 반드시 먼저 입력된 수의 구구단부터 아래의 형식에 맞게 출력하여야 한다.
// 구구단 사이의 공백은 3칸이다
입력 : 5 3
5 * 1 = 5 4 * 1 = 4 3 * 1 = 3
5 * 2 = 10 4 * 2 = 8 3 * 2 = 6
5 * 3 = 15 4 * 3 = 12 3 * 3 = 9
5 * 4 = 20 4 * 4 = 16 3 * 4 = 12
5 * 5 = 25 4 * 5 = 20 3 * 5 = 15
5 * 6 = 30 4 * 6 = 24 3 * 6 = 18
5 * 7 = 35 4 * 7 = 28 3 * 7 = 21
5 * 8 = 40 4 * 8 = 32 3 * 8 = 24
5 * 9 = 45 4 * 9 = 36 3 * 9 = 27
Scanner sc = new Scanner(System.in);
int num1=0, num2=0;
System.out.println("서로 다른 두 개의 정수를 입력하세요");
num1 = sc.nextInt();
num2 = sc.nextInt();
if (num1 <= 0 ||num2 <= 0||num1==num2) {
System.out.println("잘못된 값을 입력하셨습니다.");
System.out.println("프로그램 종료합니다.");
System.exit(0);
}//if end
for (int i = 1; i < 10; i++) {
if(num1>num2){
for (int j=num1; j >= num2; j--) {
System.out.print(j+" * "+i+" = "+(i*j)+"\t");
}//inner for end
}else if(num2>num1){
for (int j=num2; j >= num1; j--) {
System.out.print(j+" * "+i+" = "+(i*j)+"\t");
}//inner for end
System.out.println(" ");
}//outer for end
}
}
}