-
배열,while,for문JAVA 2021. 7. 21. 22:07
배열
1차원 배열
타입이 같은 둘 이상의 데이터를 저장할 수 있다.
int[] ref = new int[5];
(int ref[] = new int[5]; //이 순서도 가능은 하다)
//길이가 5인 배열
위의 배열은 0번부터 4번까지 5개이다 >> ref[0], ref[1], ref[2], ref[3], ref[4]
길이는 ref.length; 로 알 수 있다.
123456789101112131415161718192021222324252627package chapter2;import java.util.Scanner;public static void ex5() {Scanner scan = new Scanner(System.in);// scan.nextInt(); 키보드를 통해 입력받는 정수// int n1, n2, n3, n4, n5, n6, n7, n8, n9, n10;int[] arr = new int[10];for (int i = 0; i < 10; i++) {System.out.print("정수를 입력하세요.>>");arr[i] = scan.nextInt(); // 키보드를 입력}// total, average 구하기int total = 0;int average;for (int i = 0; i < 10; i++) {total += arr[i];}System.out.println("합계: " + total);average = total / arr.length;System.out.println("평균: " + average);}cs
while문
while ( 반복조건 ) { 반복영역 }
1:반복 시퀀스
2:반복 조건
3.반복 증감 크기
123456789101112131415161718192021222324package chapter2;public class WhileFor {public static void ex1() {//n이 0보다 클 동안 반복해 문장 호출하기int n = 5;while(n > 0 ) {System.out.println("주말 잘 보내셨나요?" + n);n--;}//1~100 까지 더한 값 알아보기int num = 0;int total = 0 ; //합계while (num <= 100) {total += num;System.out.println(num + " : " + total);num++;}System.out.println("1부터 100까지 합?" + total);}cs
do ~ while문
do { 반복영역 } while ( 반복조건 )
조건문을 만나기 전에 한번은 꼭 실행할 수 있음.
12345678public static void ex2() {int num = 5;do {System.out.println("반복시퀀스" + num);num++;} while (num < 5);}cs 5보다 작을 때 까지, 이미 조건탈락이지만 한번은 먼저 실행됨.
for 문
가장 많이 사용하는 반복문
for ( 초기화식; 조건식; 증감식 ) { 수행문; }
1234567891011121314151617181920212223public static void ex3() {for (int i = 0; i < 10; i++) {System.out.println("반복횟수" + i);}// 1~100에서 2의 배수의 합계를 구해 주세요.int total = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {total += i;}}System.out.println("1~100에서 2의 배수의 합: " + total);// 1부터 5씩증가int total2 = 0;for (int i = 1; i <= 100; i += 5) {total2 += i;System.out.println(total2);}}cs
중첩반복문
for ( 초기화식; 조건식; 증감식 )
{ for ( 초기화식; 조건식; 증감식 ) { 수행문; }
수행문; }
123456789101112131415161718192021222324252627282930313233343536373839404142public static void ex4() {// 2단을 출력하시오.for (int i = 1; i < 10; i++) {System.out.println(2 + "*" + i + "=" + (2 * i));}//중첩반복문이란for (int j = 1; j < 4; j++) {System.out.println("외부반복시퀀스" + j);for (int i = 1; i < 4; i++) {System.out.println("내부반복시퀀스" + i + "안녕");}}// 2단부터 9단까지 출력하시오.for (int dan = 2; dan < 10; dan++) {System.out.println("------------------");for (int i = 1; i < 10; i++) {System.out.println(dan + "*" + i + "=" + (dan * i));}}// 3단과 7단만 출력하시오.for (int dan = 2; dan < 10; dan++) {if (dan == 3 || dan == 7) {System.out.println("------------------"); //for문 밑에 쓰면 2~9까지 점선이 나와서 여러개 찍힘for (int i = 1; i < 10; i++) {System.out.println(dan + "*" + i + "=" + (dan * i));}}}// 3의 배수단만 출력하시오.for (int dan = 2; dan < 10; dan++) {if (dan % 3 == 0) {System.out.println("------------------");for (int i = 1; i < 10; i++) {System.out.println(dan + "*" + i + "=" + (dan * i));}}}}cs } } }
break와 continue
123456789101112131415161718192021222324252627public static void ex6() {// 6단까지 출력되다가 6단은 for문 조건을 수행하고 breakfor (int dan = 2; dan < 10; dan++) {if (dan == 6) {System.out.println("------------------"); // for문 밑에 쓰면 2~9까지 점선이 나와서 여러개 찍힘for (int i = 1; i < 10; i++) {System.out.println(dan + "*" + i + "=" + (dan * i));}break;}System.out.println("dan" + dan);}// if 3단이면 그대로 증감식으로 continue, 수행식은 하지 않는다.for (int dan = 2; dan < 10; dan++) {if (dan == 3) {continue;}System.out.println("------------------"); // for문 밑에 쓰면 2~9까지 점선이 나와서 여러개 찍힘for (int i = 1; i < 10; i++) {System.out.println(dan + "*" + i + "=" + (dan * i));}System.out.println("dan" + dan);}}cs 반복문 연습문제 3개
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051// 연습문제 1: 1~100 중 홀수 합계, 짝수 합계를 출력하세요.public static void ex7() {int oddAvr = 0;int evenAvr = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {evenAvr += i;} else {oddAvr += i;}}System.out.println("짝수합계: " + evenAvr);System.out.println("홀수합계: " + oddAvr);}// 연습문제 2: 밑의 그림처럼 출력하세요// *****// ****// ***// **// *public static void ex8() {int star = 5;for (int i = 0; i < 5; i++) {for (int j = 0; j < star; j++) {System.out.print("*");}star--;System.out.println();}}// 연습문제 3: 두개의 주사위의 두눈의 합이 6이 되는 모든 경우의 수를 출력하세요.public static void ex9() {for(int i = 1; i < 7; i++) {for(int j = 1; j < 7; j++) {if(i+j == 6) {System.out.println(i + "+" + j + "=" + (i+j));}else {continue;}}}}cs 'JAVA' 카테고리의 다른 글
static main, 접근제한자, 싱글톤정의 (0) 2021.07.22 java 및 객체의 정의 (0) 2021.07.22 클래스,메서드정의 (0) 2021.07.21 2-3차원배열,향상된for문 (0) 2021.07.21 [java] 변수,변수형,연산자,if문 (0) 2021.07.21