cww9512   4년 전

컴파일했을떄 배열값에 수가 안더해지고 전부 기본값인 0으로 나옵니다.

디버그해본 결과 27행의 if문에 진입을 못하는 것 같은데 이유를 도저히 모르겠어요 ㅠ

밑에는 27행의 if문안에System.out.println(String.valueOf(sum).charAt(i));  //i인덱스값 (i번째글자)
                                  System.out.println(i+" "+j);                                     //i와j가 잘 올라가는지 확인

추가후 출력결과입니다.

입력 150 266 427

(sum 17037300 으로 초기화 )

1 0 0 /1 0 1 /1 0 2/ 1 0 3/ 1 0 4 /1 0 5/ 1 0 6/ 1 0 7/ 1 0 8 /1 0 9 /

7 1 0/ 7 1 1/ 7 1 2/ 7 1 3 /7 1 4 /7 1 5 /7 1 6/ 7 1 7/ 7 1 8/ 7 1 9/ 

0 2 0 /0 2 1 /0 2 2/ 0 2 3/ 0 2 4/ 0 2 5/ 0 2 6/ 0 2 7/ 0 2 8/ 0 2 9/

..... 

으로 별 문제없이 연산되는 걸로보이나

위 출력의 x y z 에서 x와 z가 같으면 num[j]에 1씩 추가가되어야되는데 

배열값에 1씩 추가가 안되는거보면

if문에서 비교가 안되는걸로 보입니다.

혹시 비교하는 코드가 잘못되었나요?

비교코드:if(String.valueOf(sum).charAt(i)==j)

nahwasa   4년 전

'0' 과 0은 같지 않습니다.

'1'과 '1'도 마찬가지죠!

char와 숫자를 비교하실땐

char c = '1';

if (c-'0' == 1)

이런 방식을 취해주셔야 합니다.

댓글을 작성하려면 로그인해야 합니다.