โ ๋ฌธ์
8์๋ฆฌ ์ ์๋ฅผ ์ ๋ ฅ๋ฐ์ ๋ฐ๋ณต๋ฌธ์ ํ์ฉํ์ฌ ์ ๋ ฅ๋ฐ์ ์ ์์ ํฉ์ ๊ตฌํ์ฌ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
โ ์ฝ๋
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.print("์ ์ ์
๋ ฅ : ");
int num = sc.nextInt();
int result = 0;
for (int i = 0; i < 8; i++) {
result += num % 10;
num /= 10;
}
System.out.println("ํฉ์ " + result + "์
๋๋ค.");
sc.close();
}
}
โ ์ถ๋ก ๊ณผ์
๋ด๊ฐ ์ฒ์์ ์๊ฐํด๋ธ ๋ฐฉ๋ฒ์ 8์นธ์ง๋ฆฌ ๋ฐฐ์ด์ ํ๋ ์ ์ธํ๋ ๊ฒ์ด์๋ค. ๊ทธ๋์ ์ ๋ ฅ๋ฐ์ ์ซ์๋ฅผ ํ๋์ฉ ์ชผ๊ฐ์ ์นธ์ ์ง์ด ๋ฃ๊ณ for๋ฌธ์ ๋๋ ค ๋ฐฐ์ด ์์๋ฅผ ๊บผ๋ด ์ค๋ฉด์ ๋์ ํฉ์ ์์ผ์ฃผ๋ฉฐ ๋ณ์์ ์ ์ฅํ๋ ๊ฒ์ด์๋๋ฐ ์ ์๊ฐํด๋ณด๋๊น ๊ตณ์ด ๋ฐฐ์ด์ ์ ์ธํด ์ค ํ์๊ฐ ์๋ ๋ฌธ์ ์๋ค
๋ด๊ฐ ์ฒ์ ์๊ฐํ ๋ฐฉ๋ฒ๋๋ก ์ฝ๋๋ฅผ ์ฐ๋ ค๋ฉด splitNumberIntoArray ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ฃผ์ด์ง ์ซ์ ๋ฌธ์์ด์ ๊ฐ ์ซ์๋ก ๋ถ๋ฆฌํ์ฌ ๋ฐฐ์ด์ ์ ์ฅํด ์ค์ผ ํ๋ค. ์ด ๋ฉ์๋๋ ๋ฌธ์์ด์ ๋ฐ๋ณตํ์ฌ ๊ฐ ๋ฌธ์(์ซ์)๋ฅผ Character.getNumericValue ๋ฉ์๋๋ฅผ ์ฌ์ฉํ์ฌ ์ ์๋ก ๋ณํํ ํ ๋ฐฐ์ด์ ์ถ๊ฐ์์ผ์ฃผ๋ ๊ฒ์ด์๋ค. ํ์ง๋ง ๋ฉ์๋ ์์ฒด๋ ์์ํ๊ณ ๊ตณ์ด ๋ฐฐ์ด๊น์ง ์ ์ธํด์ค ํ์๋ ์๊ธฐ ๋๋ฌธ์ ๋ค๋ฅธ ๋ฐฉ๋ฒ์ ์๊ฐํด ๋ณด๊ฒ ๋์๋ค.
๊ฒฐ๊ตญ ์ฃผ์ด์ง ์ซ์๋ฅผ 10์ผ๋ก ๋๋ ๋๋จธ์ง๊ฐ์ ๋ณ์์ ๋์ ์ํค๊ณ , ๋์ ์ด ๋๋๋ฉด ์ซ์๋ฅผ 10์ผ๋ก ๋๋ ๋ชซ์ผ๋ก ๋๊ฐ์ ๊ณผ์ ์8๋ฒ ๋ฐ๋ณตํ๋ฉด ๊ฒฐ๊ตญ ๋ชจ๋ ์๋ฆฟ์์ ์ซ์๋ฅผ ๋ํ ๊ฐ์ ๊ตฌํ ์ ์๋ค.