Link
08-25 08:47
Tags
- 자바 다차원 배열
- JAVA Parameter
- JAVA 자동판매기
- JAVA 데이터타입
- 프로그래머스 자바
- JAVA ObjArray
- 자바 NullPointer
- java 변수
- 자바 1대1
- JAVA Aray
- eclipse
- 자바 필드값 초기화
- 자바 1대1 관계클래스
- JAVA 연습예제
- Java
- 자바 연산자
- 자바 메서드 매개변수
- 자바 1대다관계
- java 연산자
- JAVA NULL
- JAVA 메소드
- Java switch
- JAVA 클래스 구성
- JAVA MultiParam
- JAVA 메소드 리턴
- 개발 로드맵
- ChatGPT 번역
- 리액트 네이티브
- 자바 객체형 배열처리
- 자바 생성자
Archives
- Today
- Total
보기보기 개발 블로그
eclipse / 자바 반복문(for 문) 본문
안녕하세요
이번 포스팅에선 이전 글에서 다룬 자바의 switch 문 이후
자바의 반복문 중 하나인 for 문에 대하여 알아보겠습니다.
eclipse / 자바 switch 문
안녕하세요 이번 포스팅에선 이전에 알아본 자바의 분기 조건문(else if) 처리 이후 자바의 또 다른 조건문인 switch문 에 대해 알아 보겠습니다. eclipse / 자바 분기 조건문 처리(if, else if) 안녕하세
stackbok.tistory.com
package javaexp.a04_process;
public class A04_For {
public static void main(String[] args) {
// TODO Auto-generated method stub
/*
1. 중괄호 블록 내용을 반복적으로 실행할 때, 사용된다.
2. 종류
for문 : 반복 step에 변수를 사용할 필요가 있을 때 사용된다.
cf) 배열 데이터에서 단위 데이터를 반복적으로 사용할 때, 활용된다.
while문 : 반복 블럭에서 특정 입력데이터에 의해 변경이 되어 반복을
중단할 때 주로 사용된다.
do{}while문 : 반복할 내용을 일단 한번은 수행하고 입력데이터에 의한
반복여부를 처리할 때, 주로 사용된다.
# for문
1) 기본 형식
for(초기화식1;조건식2;증감식4){
실행문3
}
초기화식1 : 생략해도 되는데, 주로 초기값을 설정할 때, 사용한다.
해당 반복문 block에서 사용할 초기값을 선언한다.
이 초기화식은 한번만 호출되어 사용한다.
ex) for (int cnt=1;;){} 지역변수로 초기값 선언
ex) int cnt =1; // 전역변수로 초기값 선언
for(;cnt<=10;;cnt++){}
Systenm.out.println("현재 카운트변수: "+cnt);
조건식2 : 반복 block을 다시 수행시켜줄 조건을 설정한다.
보통 boolean(true/false)을 설정하는 것이 일반적이다.
ex) for(;cnt<=25;){} 반복을 수행할 조건
실행문3 : 실제 반복이 일어나는 구문을 말한다.
증감식4 : 초기화식에 의해 초기화된 변수를 증가/감소 시켜준다.
ex) for(;;cnt++){} for(;;cnt+=3){}
for(;;cnt--){} for(;;cnt-=){}
처리 프로세스 순서 : 초기화식 ==> 조건식 ==> 실행문 ==> 증감식
==> 조건식 ==> 실행문 ==> 증감식
cf) for(;;) {} : 생략하면 while 문과 동일하다.
*/
for(int cnt=1;cnt<=10;cnt++) {
System.out.println("카운트: "+cnt);
}
// ex1) 5~25까지 출력
// ex) 100~120까지 출력
for(int cnt1=5;cnt1<=25;cnt1++) {
System.out.println("카운트: "+cnt1);
}
for(int cnt2=100;cnt2<=120;cnt2++) {
System.out.println("카운트: "+cnt2);
}
/*
# 반복문 처리 연습 단계
1. 기본 구성요소 연습
1) 초기값, 반복 조건 연습
2) 증감연산자 연습
cnt++, cnt--, cnt+=2, cnt-=3
3) 출력할 내용에 대한 연습
System.out.println() : 줄바꿈 있이 처리
System.out.print() : 줄바꿈 없이 처리
System.out.println("\t"); : 탭간격 처리
System.out.println("\n"); : 줄바꿈 처리
// cf) System,.out.printf(""): 특정 데이터의 형식(크기)
* 특정한 형식으로 데이터 출력하세요
2. 반복문 밖에 외부 변수를 통한 처리(전역변수/지역변수)
1) 지정된 변수 설정과 반복문의 변수와 혼합하여 출력하기..
ex) 구구단의 단수, 1~10까지 반복변수, 혼합하여 구구단 출력
2) 누적 데이터 처리
합산할 변수 선언
변수를 통해 누적 처리 데이터 출력
cf) 개체변수, 메서드변수에 영향을 미쳐서 지역/ 전역변수로 처리할 수 있다.
3. 반복문과 조건문을 혼합하여 처리하기
1) 반복문 안에 조건을 넣어 특정한 경우에 출력 또는 연산 처리하기
산술연산자(+,-,*,/,%) 특히 %(나머지값)을 활용하면 프로그램을
보다 효율적으로 조건처리를 할 수 있다
ex) 1~10 출력 내용 중에 짝수만 출력하기
ex) 합산된 값이 20일때 출력하기
ex) 1~100 출력하되 5단위로 줄바꿈 처리하기
ex) 1~20까지 합산을 하되 마지막에는 =을 표기하기
1 + 2 + 3 .... + 20 = @@@
2) 조건문으로 특정한 경우 break와 continue를 통해서 프로세스를 제어 하기
ex) 구구단에서 5인 경우에 중단 처리하기
4. 반복문에서 반복문을 활용하기
*/
System.out.println("# 5씩 증가 #");
for(int cnt=1; cnt<=100; cnt+=5) {
System.out.println(cnt);
}
System.out.println("# 2씩 감소 #");
// 감소는 큰 데이터가 작은데이터로 변해가는 과정
for(int cnt=10; cnt>0; cnt-=2) {
System.out.println(cnt);
}
// * 증가와 감소에 따라서 반복 조건의 부호를 변경시켜야한다. (주의)
// ex1) 10~50까지 3씩 증가 처리 출력하세요
for(int cnt=10; cnt<=50; cnt+=3) {
System.out.println(cnt);
}
// ex2) 10부터 0까지 카운트다운 처리하세요.
for(int cnt=10; cnt>=0; cnt--) {
System.out.println(cnt);
}
// ex3) 100부터 70까지 5씩 감소 처리 출력하세요
for(int cnt=100; cnt>=70; cnt-=5) {
System.out.println(cnt);
}
// ex4) 50부터 -20까지 4씩 감소 처리 출력하세요
for(int cnt=50; cnt>=-20; cnt-=4) {
System.out.println(cnt);
}
}
}
package javaexp.a04_process;
public class A05_For {
public static void main(String[] args) {
// TODO Auto-generated method stub
/*
# 출력할 내용에 대한 연습
System.out.println() : 줄바꿈 있이 처리
System.out.print() : 줄바꿈 없이 처리
System.out.println("\t"); : 탭간격 처리
System.out.println("\n"); : 줄바꿈 처리
* 특정한 형식으로 데이터를 출력하세요
*/
for(int cnt=1; cnt<=10; cnt++) {
System.out.println("안녕하세요!!"+cnt);
}
for(int cnt=1; cnt<=10; cnt++) {
System.out.print("안녕하세요!!"+cnt);
}
for(int cnt=1; cnt<=10; cnt++) {
System.out.println(",");
}
for(int cnt=1; cnt<=10; cnt++) {
System.out.print(cnt+"\t");
}
System.out.println();
// # 아래와 같이 여러가지 형식으로 화면에 출력하세요
// ex1) 1 + 2 + .... 10 + 를 출력하세요
for(int cnt=1; cnt<=10; cnt++) {
System.out.print(cnt+" + ");
}
System.out.println();
// ex2) ^^ 100 ^^ 99 ^^ .... 90 을 출력하세요
for(int cnt=100; cnt>=90; cnt--) {
System.out.print(" ^^ "+cnt);
}
System.out.println();
// 구구단에서 숫자 5를 활용하여 다음과 같이 나타내세요
// 5 * 1 = 5
// 5 * 2 = 10
// 5 * 3 = 15
// ..
for(int cnt=1; cnt<=9; cnt++) {
System.out.println("5 * 1 = "+ (cnt*5));
}
// ex4) 1) I love you ! ♥ ♥ 2) I love you ! ♥ ♥ 3) I love you ! ♥ ♥ 4) I love you ! ♥ ♥
for(int cnt=1; cnt<=4; cnt++) {
System.out.print(cnt+") I love you ! ♥ ♥ ");
}
System.out.println();
// ex5) 100 - 90 - 80 - 70 - 60 - 50
for(int cnt=100; cnt>=50; cnt-=10) {
System.out.print(cnt+" - ");
}
System.out.println();
/*
# 반복문 밖에 외부 변수를 통한 처리
1) 지정된 변수 설정과 반복문의 변수와 혼합하여 출력하기..
ex) 구구단의 단수, 1~10까지 반복변수, 혼합하여 구구단 출력
2) 누적 데이터 처리
합산할 변수 선언
변수를 통해 누적 처리 데이터 출력
*/
int sum = 0; // 반복문 밖의 전역변수 설정
for(int cnt=1; cnt<=10;cnt++) {
int sum01 = 0;
sum01+=cnt;
sum+=cnt;
System.out.print("합산1:"+sum01+"\t");
System.out.println("합산2:"+sum);
}
int grade = 7;
for(int cnt = 1; cnt<=9;cnt++) {
System.out.println(grade+" X "+cnt+" = "+(grade*cnt));
}
// 김밥 한개당 2500으로 첫번째 날째는 1개를 판매, 두번째 날짜는 2개를 판매... 10일 동안 판매된 김밥을 출력하고
// 판매액을 프로그램적으로 구하세요.
int kimbap = 2500;
int totSell = 0;
for(int date=1; date<=10;date++) {
int dateTot = kimbap*date;
System.out.println(date+"째날 판매 금액:"+dateTot);
totSell +=dateTot;
}
System.out.println("총 판매금액:"+totSell);
// 지역 변수 : 반복문 안에 선언 초기화되는 변수 - date, dateTot
// 전역 변수 : 반복문 밖에서 반복문 안에 데이터를 처리할 수 있는 변수 - kimbap, totSell
// # 아래 내용을 지역 변수와 전역 변수를 활용하여 처리하세요..
// ex1) 1~20까지 합을 출력하세요..
int sum01= 0;
for(int cnt=1 ; cnt<=20; cnt++) {
sum01+=cnt;
}
System.out.println(sum);
// ex2) 2 + 4 + 6 + .. 10 + 의 합을 출력 (출력 형식도 처리)하세요..
int sum02= 0;
for(int cnt=2; cnt<=10; cnt+=2) {
System.out.print(cnt+" + ");
sum02+=cnt;
}
System.out.println("총합 ="+sum02);
// ex3) 짜장면 가격이 5000일때, 1~10그릇까지 가격을 출력하세요
// @@그릇 @@@원
int jjajang=5000;
for(int cnt=1; cnt<=10;cnt++) {
System.out.println(cnt+"그릇 "+(jjajang*cnt)+"원");
}
// ex4) 100에서 1/4로 4회 누적해서 나눈 값을 아래의 형식으로 출력하세요
// 1회 100 25
// 2회 25 6.22222
// 3회 ...
// 4회 ...
int num01=100;
double nanum=0.25;
for(int cnt=1; cnt<=4; cnt++) {
System.out.println(cnt+"회"+"\t"+"\t"+(num01*nanum/cnt)+"\t");
}
}
}
package javaexp.a04_process;
public class A06_For {
public static void main(String[] args) {
// TODO Auto-generated method stub
/*
# 반복문에 조건문 사용
1. 여러가지 조건 사용 형식
1) 비교연산(==,!=,>=,<=,>,<), 논리식(!, &&, ||), equals()
2) 연산자 +, -, *, /, %
ex) 짝수인 경우 if(cnt%2==0)
n 1 2 3 4 5 6 7 8 9
n%3 1 2 0 1 2 0 1 2 3
2. 조건문 사용시 처리하는 중단 형식
1) break;
2) continue;
*/
// 반복문과 연산식의 사용
// ex) 1~100까지 숫자 중에 10~20까지만 출력을 제외하고 출력 처리 하세요
for(int cnt=1; cnt<=100;cnt++) {
if(!(cnt>=10 && cnt<=20)) { // cnt<10 || cnt>20
System.out.print(cnt+",");
}
}
System.out.println();
// ex) 1~20의 숫자 중에 짝수만 출력하세요.. 합산은 1~20까지 처리하세요..
int tot = 0;
for(int cnt=1;cnt<=20;cnt++) {
tot+=cnt;
if(cnt%2==0) {
System.out.print(cnt+" ");
}
}
System.out.println("\n1~20까지 합:"+tot);
// 100~90까지 합산을 아래의 형식으로 하고 최종적으로 결과를 처리하세요
// 100 + 99 + ... 90 = @@(합산결과)
tot = 0;
for(int cnt=100; cnt>=90;cnt--) {
System.out.print(cnt);
if(cnt!=90) {
System.out.print(" + ");
}else {
System.out.print(" = ");
}
tot+=cnt;
}
System.out.println(tot);
// ex1) 100에서 90까지 아래의 형식으로 처리하여 뺀 최종 결과값을 출력하세요
// 100 - 99 - 98 ...90 =@@@
tot=0;
for(int cnt=100; cnt>=90;cnt--) {
System.out.print(cnt);
if(cnt!=90) {
System.out.print(" - ");
}else {
System.out.print(" =");
}
tot-=cnt;
}
// ex2) 1~ 100까지 출력하되 조건물을 이용하여 5단위로 줄바꿈 출력 하세요
// 1 2 3 4 5
// 6 7 8 9 10
// ...
// 96 97 98 99 100
for(int cnt=1; cnt<=100; cnt++) {
if(cnt%5==0) {
System.out.println(cnt+"\t");
}else {
System.out.print(cnt+"\t");
}
}
// ex3) 1~10까지 해당 수가 홀인지 짝인지 표시 하세요..
// 1(홀), 2(짝), 3(홀),...10(짝)
for(int cnt=1;cnt<=10;cnt++) {
if (cnt!=10) {
if(cnt%2==0) {
System.out.print(cnt+"(짝), ");
}else {
System.out.print(cnt+"(홀), ");
}
}else {
System.out.println(cnt+"(짝)");
}
}
}
}
자바에서의 반복문을 알아보았습니다
감사합니다.
'Java' 카테고리의 다른 글
eclipse / 자바 이중 반복문 (0) | 2023.03.17 |
---|---|
eclipse / 자바 break , continue 문 (0) | 2023.03.17 |
eclipse / 자바 switch 문 (0) | 2023.03.17 |
eclipse / 자바 분기 조건문 처리(if, else if) (0) | 2023.03.17 |
eclipse / 자바 코드 실행 흐름 , 제어문의 종류 (0) | 2023.03.17 |