본문 바로가기
Java

자바기초 # 017. while 반복문 - 1부터 10까지 합, 합이 100을 넘을때 i 값 구하는프로그램(2)

by Smart Factory in 2020 2021. 7. 25.
728x90
반응형

안녕하세요. 스마트팩토리입니다. 
지난 시간에이어서 1부터 10까지 합을 구하는 방법을 while문을 통해서 알아보겠습니다. 

1. while문

가. 1부터 10까지 구하는 프로그램, 합이 100을 넘었을때 i 값구하기

 (1)whie(true)

while 조건식이 true면 항상 실행을 하게 됩니다. 조건이 무조건 참이란 의미니그대로 실행을 합니다. 
1부터 더해지는 값을 더 출력하기 위해서 while문 안 if문에 i 와 sum을 출력하게 했습니다. 

제한 조건이 있어서 wihile문을 벗어났을때 다시 한번 i 값과 sum 값을 출력하여 sum이 100을 넘긴 i값을 확실히 알 수 있게 했습니다. 

if - else 문 에서 break 를 사용하여 sum이 100을 넘겼을때 if문을 나가도록 설정하였습니다. 

while문 안에 증감식인 i++의 위치는 if 문 안에 있어도 되고 밖에 있어도 됩니다. if 문 밖에 놓을때와 그렇지 않을때 값에 차이가 있는지 꼭 확인할 필요가 있습니다. 

package operation;

public class Ex01_04while {

public static void main(String[] args) {
int i=1,sum=0;
while(true ) {
sum+=i;
if(sum<=100) {
System.out.println(" i= "+ i+",sum= "+sum );
i++;}
 else break;
}
     System.out.println(" i= "+ i+",sum= "+(sum+i));      
         }
      }

i++의 위치를  if문 밖에 놓아도 값은 동일합니다. 

 (2)whie(true)

while 조건을 true 대신에 while(sum<=100)로 했습니다. if 절과 동일하게 말이지요.

package operation;

public class Ex01_04while {

public static void main(String[] args) {
int i=1,sum=0;
while(sum<=100) {
sum+=i;
if(sum<=100) {
System.out.println(" i= "+ i+",sum= "+sum );
    }
else break;
i++;}
     System.out.println(" i= "+ i+",sum= "+(sum+i));      
         }
      }

 

나. 1부터 10까지 구하는 프로그램에서  합이 50을 넘었을때 i 값구하기

1부터 10까지 합 중에서 누적함이 50을 넘길때 전후로 출력하는 프로그램입니다. 숫자를 변경만 해주면 됩니다. 
기존 조건에서 sum<=100을  sum<=50으로 말이지요.

package operation;

public class Ex01_04while {

public static void main(String[] args) {
int i=1,sum=0;
while(sum<=50) {
sum+=i;
if(sum<=50) {
System.out.println(" i= "+ i+",sum= "+sum );
    }
else break;
i++;}
     System.out.println(" i= "+ i+",sum= "+(sum+i));      
         }
      }

조건식의 수치만 변경하면 다양한 코딩을 만들 수 있습니다. 서서히 기본기를 익히다 보면 서서히 중급, 고급으로 넘어갈 날이 오지 않을까 싶습니다. 아직은 기초 단계지만 말이지요.

 

728x90
반응형

댓글