for
package com.kh.chap02_loopingStatement;
import java.util.Random;
import java.util.Scanner;
public class A_for {
//
public void testFor() {
for(int i = 0; i <= 5 ; i++) {
System.out.println(i +"번째 반복문 수행중...");
}
}
public void testFor2() {
//정수를 하나 입력 받아 그 수가 양수일 때만 그 수의 구구단을 출력하게 하고,
//양수가 아니면 "반드시 1~9 사이의 양수를 입력하여야 합니다" 출력
Scanner sc = new Scanner(System.in);
System.out.print("정수 입력: ");
int dan = sc.nextInt();
if(dan > 0 && dan < 10) {
/*System.out.println(dan + " * " + 1 + " = " + (dan * 1));
System.out.println(dan + " * " + 2 + " = " + (dan * 2));
System.out.println(dan + " * " + 3 + " = " + (dan * 3));
System.out.println(dan + " * " + 4 + " = " + (dan * 4));
System.out.println(dan + " * " + 5 + " = " + (dan * 5));
System.out.println(dan + " * " + 6 + " = " + (dan * 6));
System.out.println(dan + " * " + 7 + " = " + (dan * 7));
System.out.println(dan + " * " + 8 + " = " + (dan * 8));
System.out.println(dan + " * " + 9 + " = " + (dan * 9));*/
for(int su = 1; su <= 9; su++) {
System.out.println(dan + " * " + su + " = " + (dan * su));
}
}else {
System.out.println("반드시 1~9 사이의 양수를 입력해야 합니다.");
}
}
public void testFor3() {
//1부터 100사이의 임의의 난수까지의 정수들의 합계를 구하여 출력
int random = (int)(Math.random() * 100) + 1;
int sum = 0;
for(int i = 1; i <= random; i++) {
sum += i;
}
System.out.println("1부터 " + random + "까지의 정수들의 합계 : " + sum );
}
public void testFor4() {
//정수 두 개를 입력 받아 작은 수부터 큰 수까지의 합계를 구하여 출력하세요.
Scanner sc = new Scanner(System.in);
System.out.print("첫 번째 정수 : ");
int num1 = sc.nextInt();
System.out.print("두 번째 정수 : ");
int num2 = sc.nextInt();
int sum = 0;
int max, min;
if(num1 >= num2) {
max = num1;
min = num2;
}else {
max = num2;
min = num1;
}
for(int i = min; i <= max; i++) {
sum += i;
}
System.out.println(min + "에서 " + max + "까지의 정수들의 합 : " + sum);
}
public void testFor5() {
//for문 안에 for문을 사용할 수 있다.
//예 : 구구단 2단부터 9단까지 출력
//전체를 반복하는 for문
for(int dan = 2; dan < 10; dan++) {
//구구단 한 단을 출력하는 for문
for(int su = 1; su < 10; su++) {
System.out.println(dan + " * " + su + " = " + (dan*su));
}
System.out.println();
}
}
public void testFor6() {
//아날로그 시계 출력
for(int hour = 0; hour < 12; hour++) { //12시가 되면 0시
for(int min = 0; min < 60; min++) {
System.out.println(hour + "시" + min + "분");
}
System.out.println();
}
}
public void testFor7() {
Scanner sc = new Scanner(System.in);
System.out.print("출력할 줄 수 : ");
int row = sc.nextInt();
for(int i = 1; i <= row; i++) {
for(int c =1; c <= 5; c++) {
System.out.print("*");
}
System.out.println();
}
}
public void testFor8() {
//한 줄에 별표 문자를 입력한 줄 수와 칸 수만큼 입력
//단, 줄 수와 칸 수가 일치하는 위치에는 줄 번호에 대한 정수가 출력
/*
* 1*****
* *2****
* **3***
* ***4**
* ****5*
* *****6
* */
Scanner sc = new Scanner(System.in);
System.out.print("출력할 줄 수 : ");
int row = sc.nextInt();
System.out.print("입력될 칸 수 : ");
int col = sc.nextInt();
for(int r = 1; r <= row; r++) {
for(int c =1; c <= col; c++) {
if(r == c) {
System.out.print(r);
}else {
System.out.print("*");
}
}
System.out.println();
}
}
public void testForPyramid() {
Scanner sc = new Scanner(System.in);
System.out.print("피라미드를 만들 기호를 넣으세요 : ");
String str = sc.nextLine();
System.out.print("원하는 크기(줄 수)를 입력하세요 : ");
int row = sc.nextInt(); //row = 4
for(int i = 1; i <= row; i++) { //줄 카운트 i = 1, 2, 3
for(int j = 1; j <= row-i; j++) { //공백 반복 후
System.out.print(" ");
}
for(int k = 0; k < i * 2 -1 ; k++) { //기호 반복 출력
System.out.print(str);
}
System.out.println();
}
}
}
int random = (int)(Math.random() * 100) + 1;
while
package com.kh.chap02_loopingStatement;
import java.util.Scanner;
public class B_while {
public void testWhile() {
int i = 0;
while(i <= 5) { //무한루프 : true <-> false : 에러
System.out.println(i + "번째 반복문 수행중...");
i++; // i 증가식 빼먹지 말기!
}
}
public void testWhile2() {
//문자열을 입력받아 인덱스별로 문자를 출력
Scanner sc = new Scanner(System.in);
System.out.print("문자열 입력 : ");
String str = sc.nextLine(); // banana 6(0~5)
int index = 0;
while(index < str.length()) { // index <= str.length() 0~6 : 에러!
char ch = str.charAt(index);
System.out.println(index + " : " + ch);
index++;
}
}
public void testWhile3() {
//1부터 입력받은 수 까지의 정수들의 합
System.out.print("정수 입력 : ");
int num = new Scanner(System.in).nextInt();
int i = 1, sum = 0;
while(i <= num) {
sum += i;
if(i != num) {
System.out.print(i + " + ");
}else {
System.out.print(i + " = ");
}
i++;
}
System.out.print(sum);
}
public void testWhile4() {
//while문을 이용하여 구구단을 2단부터 9단까지 출력하세요
int dan = 2;
while(dan <= 9) {
int su = 1;
while(su <= 9) {
System.out.println(dan + " * " + su + " = " + (dan * su));
su++;
}
System.out.println();
dan++;
}
}
public void testWhile5() {
//줄 수와 칸 수를 입력받아 칸 수만큼의 '*'을 줄 수만큼 출력
//단, 줄 수와 칸 수가 같으면 줄 수에 해당하는 정수 출력
System.out.print("줄 수 입력 : ");
int row = new Scanner(System.in).nextInt();
System.out.print("칸 수 입력 : ");
int col = new Scanner(System.in).nextInt();
int r = 1;
while(r <= row) {
int c = 1;
while(c <= col) {
if(r == c) System.out.print(r);
else System.out.print("*");
c++;
}
System.out.println();
r++;
}
}
}
do - while
package com.kh.chap02_loopingStatement;
import java.util.Scanner;
public class C_doWhile {
public void testDoWhile() {
//키보드로 영어 문자열 값을 입력 받아 출력 반복 진행
Scanner sc = new Scanner(System.in);
String str = "";
do {
System.out.print("문자열 입력 : ");
str = sc.nextLine();
System.out.println("str : " + str);
}while(!str.equals("exit")); //exit라고 입력하면 끝
}
public void testDoWhile2() {
Scanner sc = new Scanner(System.in);
String str = "";
do {
System.out.print("문자열 입력 : ");
str = sc.nextLine();
if(str.equals("exit")) {
break; //분기문 : 자기가 속해있는 반복문을 빠져나간다.
}
System.out.println("str : " + str);
}while(true);
}
}
!str.equals("exit")
'JAVA > 이론 정리 및 예제' 카테고리의 다른 글
[JAVA/자바] #3_4 실습문제 (0) | 2021.09.05 |
---|---|
[JAVA/자바] #3_3 분기문 / 예제 (0) | 2021.09.05 |
[JAVA/자바] #3_1 조건문 / 예제 (0) | 2021.09.05 |
[JAVA/자바] #3_0 제어문 / beforeTest (0) | 2021.09.05 |
[JAVA/자바] #2_2 연산자 실습 문제 (0) | 2021.09.03 |