Q. ์์ฐ์ n์ด ์ฃผ์ด์ก์ ๋ 1๋ถํฐ n๊น์ง์ ํฉ์ ๋ฐํํ๋ ํจ์ sum()์ ๊ตฌํํ์์ค.
A1. ๋ฐ๋ณต๋ฌธ์ ์ด์ฉํ๋ ๋ฐฉ๋ฒ
for๋ฌธ ๋ด์์ i๊ฐ 1๋ถํฐ 5๊น์ง 1์ฉ ์ฆ๊ฐํ๋ฉฐ result ๋ณ์์ ๋์ ํฉ์ ์ ์ฅํ๋ค.
class Test {
public static void main(String[] args) {
System.out.println("1~5 ๊น์ง์ ํฉ๊ณ: " + sum(5));
}
public static int sum(int number) {
int result = 0;
for (int i = 1; i <= number; i++) {
result += i; // result = result + i์ ๋์ผ
}
return result;
}
}
i | +=(์ฐ์ ํ ํ ๋น) ์ฐ์ฐ ์ result | +=(์ฐ์ ํ ํ ๋น) ์ฐ์ฐ ํ result |
1 | 0 | 0+1 |
2 | 1 | 1+2 |
3 | 3 | 3+3 |
4 | 6 | 6+4 |
5 | 10 | 10+5 |
A2. ์ฌ๊ท๋ฅผ ์ด์ฉํ๋ ๋ฐฉ๋ฒ
n + ์ฌ๊ทํจ์(n-1)์ ๋ฐํํ๋ ํจ์๋ฅผ ์ฌ๊ท์ ์ผ๋ก ํธ์ถํ๋ค.
n์ด 1์ด๋ฉด ์ฌ๊ทํจ์๋ฅผ ์ข ๋ฃํ๊ณ ๊ฐ์ ๋ฐํํ๋ค.
class Test {
public static void main(String[] args) {
System.out.println("1~5 ๊น์ง์ ํฉ๊ณ: " + sum(5));
}
public static int sum(int number) {
if (number == 1) return 1;
return number + sum(number - 1);
}
}
sum(5) = 5 + 4 + 3 + 2 + 1
sum(4) = 4 + 3 + 2 + 1
sum(3) = 3 + 2 + 1
sum(2) = 2 + 1
sum(1) = 1
'๊ฐ๋ฐ > ์๋ฃ๊ตฌ์กฐ & ์๊ณ ๋ฆฌ์ฆ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์คํ์ฑํ ๋ฐฉ (Java) (0) | 2021.10.24 |
---|---|
๋ก๋์ ์ต๊ณ ์์์ ์ต์ ์์ (Java) (0) | 2021.10.24 |
์ ๊ท ์์ด๋ ์ถ์ฒ (Java) (0) | 2021.10.24 |
์ฐฝ๊ณ ๋ค๊ฐํ (Java) (0) | 2021.10.21 |
์ค์ฒฉ ๋ฐ๋ณต๋ฌธ ๋์ฒดํ๊ธฐ (0) | 2021.10.14 |
๋๊ธ