Report 3
자바의 정석 기초편 1권, P125~128을 사용합니다.
//4-1. 다음의 문장들을 조건식으로 표현해보세요.
//int형 변수 x가 10보다 크고 20보다 작을 때 true인 조건식
//char형 변수 ch가 공백이나 탭이 아닐 때 true인 조건식
//char형 변수 ch가 'x' 또는 'X'일 때 true인 조건식
//char형 변수 ch가 숫자('0'~'9')일 때 true인 조건식
//char형 변수 ch가 영문자(대문자 또는 소문자)일 때 true인 조건식
//int형 변수 year가 400으로 나눠떨어지거나 또는 4로 나눠떨어지고 100으로 나눠떨어지지 않을때 true인 조건식
//boolean형 변수 powerOn이 false일 때 true인 조건식
//문자열 참조변수 str이 "yes"일 때 true인 조건식
//4-2. 1부터 20까지의 정수중에서 2 또는 3의 배수가 아닌 수의 총합을 구하세요.
class Exercise4_2 {
public static void main(String[] args) {
int sum = 0;
/*빈 칸*/
System.out.println("sum="+sum);
}
}
//4-3. 1+(1+2)+(1+2+3)+(1+2+3+4)+...+(1+2+3+...+10)의 결과를 계산하세요.
class Exercise4_3 {
public static void main(String[] args) {
int sum = 0;
int totalSum = 0;
/*빈 칸*/
System.out.println("totalSum="+totalSum);
}
}
//4-4. 1+(-2)+3+(-4)+...과 같은 식으로 계속 더해나갔을 때,
//몇까지 더해야 총합이 100 이상이 되는지 구하세요.
class Exercise4_4 {
public static void main(String[] args) {
int sum = 0; // 총합을 저장할 변수
int s = 1; // 값의 부호를 바꿔주는데 사용할 변수
int num = 0;
/*빈 칸*/
System.out.println("num="+num);
System.out.println("sum="+sum);
}
}
//4-5. 다음의 for문을 while문으로 변경하세요.
public class Exercise4_5 {
public static void main(String[] args) {
for(int i=0; i<=10; i++) {
for(int j=0; j<=i; j++)
System.out.print("*");
System.out.println();
}
}//end of main
} // end of class
//4-6. 두 개의 주사위를 던졌을 때, 눈의 합이 6이 되는 모든 경우의 수를 출력하는 프로그램을 작성하세요.
class Exercise4_6 {
public static void main(String[] args) {
/*빈 칸*/
}
}
//4-7. 숫자로 이루어진 문자열 str이 있을 때, 각 자리의 합을 더한 결과를 출력하는 코드를 완성하세요.
//만일 문자열이 "12345"라면, ‘1+2+3+4+5’의 결과인 15를 출력이 출력되어야 합니다.
class Exercise4_7 {
public static void main(String[] args) {
String str = "12345";
int sum = 0;
for (int i = 0; i < str.length(); i++) {
/*빈 칸*/
}
System.out.println("sum=" + sum);
}
}//예상 결과 : sum=15
//4-8. Math.random()을 이용해서 1부터 6 사이의 임의의 정수를 변수 value에 저장하는 코드를 완성하세요.
class Exercise4_8{
public static void main(String[] args){
int value = (/*빈 칸*/);
System.out.println("value:"+value);
}
}
//4-9. int 타입의 변수 num이 있을 때, 각 자리의 합을 더한 결과를 출력하는 코드를 완성하세요.
//만일 변수 num의 값이 12345라면, ‘1+2+3+4+5’의 결과인 15를 출력하세요.
//문자열로 변환하지 말고 숫자로만 처리하세요.
public class Exercise4_9 {
public static void main(String[] args) {
int num = 12345;
int sum = 0;
/*빈 칸*/
System.out.println("sum="+sum);
}
}//예상 결과 : sum=15
//4-10. 다음은 숫자맞추기 게임을 작성한 것이다. 1과 100사이의 값을 반복적으로 입력해서
//컴퓨터가 생각한 값을 맞추면 게임이 끝난다.
//사용자가 값을 입력하면, 컴퓨터는 자신이 생각한 값과 비교해서 결과를 알려준다.
//사용자가 컴퓨터가 생각한 숫자를 맞추면 게임이 끝나고 몇 번 만에 숫자를 맞췄는지 알려준다.
class Exercise4_10 {
public static void main(String[] args) {
// 1~100사이의 임의의 값을 얻어서 answer에 저장한다.
int answer = /*빈 칸*/;
int input = 0; //사용자입력을 저장할 공간
int count = 0; //시도횟수를 세기위한 변수
// 화면으로 부터 사용자입력을 받기 위해서 Scanner클래스 사용
java.util.Scanner s = new java.util.Scanner(System.in);
do {
count++;
System.out.print("1과 100사이의 값을 입력하세요 : ");
input = s.nextInt(); //입력받은 값을 변수 input에 저장한다.
/*빈 칸*/
} while(true); //무한반복문
} // end of main
} // end of class
//예상 결과
//1과 100사이의 값을 입력하세요 : 50
//더 큰 수를 입력하세요.
//1과 100사이의 값을 입력하세요 : 75
//더 큰 수를 입력하세요.
//1과 100사이의 값을 입력하세요 : 87
//더 작은 수를 입력하세요.
//1과 100사이의 값을 입력하세요 : 80
//더 작은 수를 입력하세요.
//1과 100사이의 값을 입력하세요 : 77
//더 작은 수를 입력하세요.
//1과 100사이의 값을 입력하세요 : 76
//맞혔습니다.
//시도횟수는 6번입니다.
Last updated