본문 바로가기
Language/JAVA

[JAVA]수열합계 구하기 알고리즘(do~while문)

by 바까 2020. 5. 6.
반응형

정보처리 기사 실기시험에 자주 출제 되는 수열 합계 구하기 문제풀어보기.

문제1. (수열1)1+2+3+4+...+100까지의 합계 구하기

[변수]

i : 1씩 증가되는 숫자가 저장될 변수, 즉 i 는 1,2,3,...,100 까지 차례로 변경된다.
J :  i가 누적되어 저장될 변수, 즉 1+2+3+4+...+100 까지의 값이 저장된다.

[실행결과]
i = 100, j = 5050

문제에서 주어지는 순서도의 빈칸을 다 채운 뒤 봐보면 다음과 같다.

변수 i는 100까지 증가시켜하고 증가되는 값들이 차곡차곡 변수 J에 누적되어야한다.

 

<순서도>

 

<디버깅표> 

 

결과를 우선 말하자면 do ~ while문을 사용하여 풀어야 하는 문제이다.

do~while문은 자주 쓰이지 않지만 이같은 정보처리기사에선 정형화된 문제기 때문에,

do ~ while 문을 이용해서 문제를 풀면 된다.

위에와 같은 순서도에선 do~while문을 사용하고 while문을 사용하고 싶다면 순서도가 바뀐다.


<소스코드>

package java_Exam;

public class Ex01 {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		//문제1. (수열1)1+2+3+4+...+100까지의 합계 구하기
		int i=0;
		int J=0;
		
		do {
			i++;
			J+=i;
				
		}while(i<100);
		System.out.println("i="+i+", J="+J);
	}

}

 

<결과화면>

 

반응형

댓글