JAVA

Test048 반복문 while문(6)

2020. 9. 3. 03:34

※ 1/2 + 2/3 + 3/4 + 4/5 + 5/6 + ... + 9/10 의 연산 결과를 출력하는 프로그램을 구현한다.

 실행 예)


 연산 결과 : xxx (← 실수 기반 연산 결과)
 계속하려면 아무 키나 누르세요...

 1   2    3   4                 ...     9
  |   |    |      |                        |
  |   |    |      |                        |
 n   |    |      |                        |
 1/2 + 2/3 + 3/4  + 4/5   ...    9/10
  |        |         |       |       |         |
 n        |         |       |       |         |
  |        |         |       |       ...        10



public class Test048
{
	public static void main(String[] args)
	{
		/*
		double i=1;
		double sum = 0;

		while(i < 10)
		{
			sum += (i / (i + 1));
			i++;
		}
		System.out.println("연산 결과 : " + sum);
		*/

		// 주요 변수 선언 및 초기화
		int n = 0;				//-- 1부터 1씩 증가하게 될 변수
		double sum = 0;			//-- 누적합을 담을 변수(나눗셈 연산 결과 실수 형)
		
		// 연산 및 처리(반복문 구성)
		while (n<9)	// 0 1 2 3 4 5 6 7 8
		{
			// 증감식 구성
			//-- 최종적으로 반복문의 조건을 무너뜨리는 열쇠가 되는 구문
			n++;	// 1 2 3 4 5 6 7 8 9

			sum += (double)n/(n+1);
			//-- 정수 기반 나눗셈 연산은 몫을 반환하기 때문에
			//   실수 기반 연산이 수행될 수 있도록 처리하기 위해서
			//	 나눗셈 연산자를 중심으로 피연산자 중 하나를
			//   실수 형태로 만들어 준 상황

		}

		// 결과 출력
		System.out.printf("연산 결과 : %f", sum);

	}
}

 

Test047 반복문 while문(5)

2020. 9. 3. 03:29

※ 1부터 100까지 정수의 합을 구하되, 10의 배수가 될 때마다... 결과를 출력하는 프로그램을 구현한다.

 실행 예)
 1 ~ 10 까지의 합 : xx
 1 ~ 20 까지의 합 : xxx
 1 ~ 30 까지의 합 : xxx
            :
 1 ~ 100 까지의 합 : xxxx
 계속하려면 아무 키나 누르세요...


public class Test047
{
	public static void main(String[] args)
	{
		int n=1;
		int sum=0;

		while(n <= 100)
		{
			sum += n;
			if(n % 10 == 0)
			{
				System.out.println("1부터" + n + " 까지의 합 : " + sum);
			}
			n++;
		}
	}
}

실행 결과

/ 실행 결과
/*
1부터10 까지의 합 : 55
1부터20 까지의 합 : 210
1부터30 까지의 합 : 465
1부터40 까지의 합 : 820
1부터50 까지의 합 : 1275
1부터60 까지의 합 : 1830
1부터70 까지의 합 : 2485
1부터80 까지의 합 : 3240
1부터90 까지의 합 : 4095
1부터100 까지의 합 : 5050
계속하려면 아무 키나 누르십시오 . . .
*/

'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글

Test049 반복문 while문(7)  (0) 2020.09.03
Test048 반복문 while문(6)  (0) 2020.09.03
Test046 반복문 while문(4)  (0) 2020.09.03
Test045 반복문 while문(3)  (0) 2020.09.03
Test044 반복문 while문(2)  (0) 2020.09.03

Test046 반복문 while문(4)

2020. 9. 3. 03:26

※ 아래와 같은 프로그램을 while을 사용하여 구현해라

 

 실행 예)
 1부터 100까지 정수의 합 : xxxx
 1부터 100까지 짝수의 합 : xxxx 
 1부터 100까지 홀수의 합 : xxxx
 계속하려면 아무 키나 누르세요



public class Test046
{
	public static void main(String[] args)
	{
		// 주요 변수 선언
		int n = 0;
		int evenSum = 0;
		int oddSum = 0;

		// 연산 및 처리
		while(++n < 100)
		{
			oddSum+=n;
			n++;
			evenSum+=n;
		}

		// 결과 출력
		System.out.println("1부터 100까지 정수의 합 :" + (oddSum+evenSum));
		System.out.println("1부터 100까지 짝수의 합 :" + evenSum);
		System.out.println("1부터 100까지 홀수의 합 :" + oddSum);
	}
}

// 실행 결과
/*
1부터 100까지 정수의 합 :5050
1부터 100까지 짝수의 합 :2550
1부터 100까지 홀수의 합 :2500
계속하려면 아무 키나 누르십시오 . . .
*/

'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글

Test048 반복문 while문(6)  (0) 2020.09.03
Test047 반복문 while문(5)  (0) 2020.09.03
Test045 반복문 while문(3)  (0) 2020.09.03
Test044 반복문 while문(2)  (0) 2020.09.03
Test043 반복문 while문(1)  (0) 2020.09.03

Test045 반복문 while문(3)

2020. 9. 3. 03:24

※ 1부터 100까지의 정수 중에서 짝수들의 합과 홀수들의 합을 따로 구분하여 계산한다. 그리고 그 결과값을 출력하는 프로그램을 구현한다. 단, 반복문은 while 문을 사용할 수 있도록 하며 조건 구문은 if 조건문을 사용하여 작성할 수 있도록 한다.

 실행 예)
 1부터 100 까지의 정수중
 짝수의 합 : 2550
 홀수의 합 : 2550
 계속하려면 아무 키나 누르세요...


방법 ①  

public class Test045
{
	public static void main(String[] args)
	{
		int evenSum = 0;
		int oddSum = 0;
		int i = 1;

		while(i <= 100)
		{
			if(i%2==1)
				oddSum+=i;
			else
				evenSum+=i;
			i++;
		}
		System.out.println("1 부터 100 까지의 정수중");
		System.out.println("짝수의 합 : " + evenSum);
		System.out.println("홀수의 합 : " + oddSum);
	}
}

방법 ②

		int evenSum = 0;
		int oddSum = 0;
		int i=0;
		while(++i<100)
		{
			oddSum += i;
			i++;
			evenSum += i;
		}
		System.out.println("1 부터 100 까지의 정수중");
		System.out.println("짝수의 합 : " + evenSum);
		System.out.println("홀수의 합 : " + oddSum);

방법 ③

 

		// 주요 변수 선언
		int n=1;		//-- 1부터 100까지 1씩 증가할 변수
		int even = 0;	//-- 짝수들의 누적합을 담아낼 변수
		int odd = 0;	//-- 홀수들의 누적합을 담아낼 변수
		

		// 연산 및 처리(반복문 구성 → 홀수짝수 여부에 따른 분기)
		while(n <= 100)
		{
			if(n % 2 == 0)		//-- 짝수인지 판별한 후 합을 누적
				even += n;
			else if(n % 2 != 0)	// 홀수인지 판별한 후 합을 누적
				odd += n;
			else
			{
				System.out.println("판별 불가 데이터");
				return; //-- 메소드 종료 → main() 메소드 종료 → 프로그램 종료
			}
			n++;		//-- 증감식 → 반복문의 조건을 깨뜨리게 될 구문
		}


		// 결과 출력
		System.out.println("1 부터 100 까지의 정수중");
		System.out.println("짝수의 합 : " + even);
		System.out.println("홀수의 합 : " + odd);

실행 결과

/ 실행 결과
/*
1부터 100 까지의 정수중
짝수의 합 : 2550
홀수의 합 : 2550
계속하려면 아무 키나 누르세요...
*/

'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글

Test047 반복문 while문(5)  (0) 2020.09.03
Test046 반복문 while문(4)  (0) 2020.09.03
Test044 반복문 while문(2)  (0) 2020.09.03
Test043 반복문 while문(1)  (0) 2020.09.03
Test042 조건문 switch문(4)  (0) 2020.09.03

Test044 반복문 while문(2)

2020. 9. 3. 03:19

※ 1 부터 100 까지의 정수 중에서  짝수들의 합을 계산하여 결과를 출력하는 프로그램을 구현한다.
   단, 조건문을 사용하지 않도록 하며. while 반복문을 활용하여 해결할 수 있도록 한다.

 실행 예) 
 1 부터 100까지의 수 중 짝수의 합 : xxx
 계속하려면 아무 키나 누르세요...



public class Test044
{
	public static void main(String[] args)
	{
		
		int i = 0;
		int sum = 0;
		while(i <= 100)
		{
			sum+=i;
			i+=2;
		}
		System.out.println("1 부터 100까지의 수 중 짝수의 합 : " + sum);
			
	}
}

// 실행 결과
/*
1 부터 100까지의 수 중 짝수의 합 : 2550
계속하려면 아무 키나 누르십시오 . . .
*/

'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글

Test046 반복문 while문(4)  (0) 2020.09.03
Test045 반복문 while문(3)  (0) 2020.09.03
Test043 반복문 while문(1)  (0) 2020.09.03
Test042 조건문 switch문(4)  (0) 2020.09.03
Test041 조건문 switch문(3)  (0) 2020.09.03

Test043 반복문 while문(1)

2020. 9. 3. 03:17

○ 반복문의 개요

 주어진 조건이 "참" 인 경우 일정한 영역의 문장들을 반복 수행하다가 조건식이 거짓이 되는 순간이 오면, 반복 수행    을 중단하는 문장이다.

이러한 반복문에는 "while", "do~while", "for"문 등이 있으며 반복문의 제어를 위해 "break, "continue" 문을 사용하는 경우가 있다. 


○ while 문

조건식을 먼저 비교하여 조건식의 처리 결과가 참인 경우, 특정 영역을 반복 수행하는 문장으로 반복 횟수가 정해 있지 않은 경우나 반복 횟수가 비교적 많은 경우 주로 사용한다. while 문은 조건이 맞지 않은 경우 반복은 커녕 단 한 번도 실행되지 않을 수 있다. 

 


○ while 문의 형식 및 구조

   while(조건식)  
   {  
          실행문;  
   }  

※ 1 부터 100까지의 합을 계산하여 결과를 출력하는 프로그램을 작성한다. 단, while 반복문을 사용한다.

 실행 예)
 1부터 100까지의 합 : 5050
 계속하려면 아무 키나 누르세요...


public class Test043
{
	public static void main(String[] args)
	{
    	// 방법 ①
		/*
		int n = 0;
		while (n <= 10)
		{
			System.out.println("n = " + n);
			n++;
		}
		*/
        // 방법 ②
		/*
		int n = 0;
		while (n <= 10)
		{
			n++;
			System.out.println("n = " + n);
		}
		*/
        // 방법 ③        
		/*
		int n = 1;
		while (n < 10)
		{
			n++;
			System.out.println("n = " + n);
		}
		*/
        // 방법 ④        
		/*
		int n = 0;
		while (n++ <= 10)
		{
			System.out.println("n = " + ++n);
		}
		*/
		
        // 방법 ⑤
		/*
		int i = 1;
		int sum = 0;
		while(i<=100)
		{
			sum+=i;
			i++;
		}
		System.out.println("1부터 100까지의 합 : "+sum);
		*/
        // 방법 ⑥		
		/*
		int sum=0;
		int i = 0;
		while(i < 100)
		{
			i++;
			sum+=i;
		}
		System.out.println("1부터 100까지의 합 : "+sum);
		*/
        // 방법 ⑦        
		/*
		int sum=0;
		int i = 0;
		while(i++ < 100)
		{
			sum+=i;
		}
		System.out.println("1부터 100까지의 합 : "+sum);
		*/
        
        // 방법 ⑧

		// ※ 문제 인식 및 분석
		//    1. 추력 구문이 반복문의 영역 밖에 위치해야 한다.
		//	  2. 1부터 1씩 증가할 변수와 누적합을 담을 변수
		//		 이렇게 두 개의 변수가 필요하다.

		// 1부터 차례로 담아 1씩 증가하는 변수 선언 및 초기화
		int n = 1;

		// 누적합을 계산하여 담아낼 변수 선언 및 초기화
		int sum = 0;

		// 연산 및 처리(반복문 구성)
		while(n<=100)
		{
			// sum을 n만큼 증가시켜라~!!!
			sum += n;

			// n이 1씩 증가해 나가는 연산 필요~!!!
			n++;
		}

		// 결과 출력(반복문 영역 밖에 위치)
		//-- 실행 예에서 최종 결과값이 한 번 출력되기 때문...
		//   즉, 연산은 반복하되 출력은 한 번만~!!!
		System.out.println("1 부터 100까지의 합: " + sum);
	}
}

※ 실행 결과

// 실행 결과
/*
1 부터 100까지의 합: 5050
계속하려면 아무 키나 누르세요...
*/

'JAVA > 자바 기본 프로그래밍' 카테고리의 다른 글

Test045 반복문 while문(3)  (0) 2020.09.03
Test044 반복문 while문(2)  (0) 2020.09.03
Test042 조건문 switch문(4)  (0) 2020.09.03
Test041 조건문 switch문(3)  (0) 2020.09.03
Test040 조건문 switch문(2)  (0) 2020.09.03

+ Recent posts