안녕하세요 코북입니다. 이 문제는 두 가지 방식으로 풀어봤습니다. 첫 번째는 다음과 같이 for문 안에서 변수를 두 가지 사용하여 구하는 방법이고, 두 번째는 for문 안에 하나의 변수와 if문을 사용하여 구하는 방법입니다.
1번 풀이
public class Java05 {
public static void main(String[] args) {
int plus = 0;
int minus = 0;
for(int i=1, j=2 ; i<100 ; i+=2,j+=2)
{
System.out.print(i+" ");
System.out.print(-j+" ");
plus += i;
minus -= j;
}
int sum = plus+minus;
System.out.println();
System.out.println("결과 : "+sum);
}
}
2번 풀이
public class Java05_2 {
public static void main(String[] args) {
int sum = 0;
for(int i=1; i<101; i++)
{
if(i%2==1)
{
System.out.print(i+" ");
sum += i;
}
else
{
System.out.print(-i+" ");
sum -= i;
}
}
System.out.println();
System.out.println("결과 : "+sum);
}
}
배운 점
두 가지 규칙이 반복 되는 경우, 변수를 두 개 선언하여 해결하는 방법뿐만 아니라 변수를 한 개 설정한 후 if문을 통해 두 가지 경우의 수로 나누어 해결하는 방법이 있다는 것을 배웠습니다.
'알고리즘' 카테고리의 다른 글
[Java] 가까운 거리 찾기 (1차원) (0) | 2022.02.08 |
---|---|
[Java]수열 n번째 항까지 출력 (0) | 2022.02.01 |
[Java]소인수분해 (0) | 2022.01.25 |
[Java]팩토리얼 - 재귀 함수 (0) | 2022.01.24 |
[Java]최대 공약수, 최소 공배수 구하기(feat.유클리드 호제법) (0) | 2022.01.23 |