PGR21.com
이전 질문 게시판은 새 글 쓰기를 막았습니다. [질문 게시판]을 이용바랍니다.
Date 2009/06/10 13:23:16
Name 밀가리
Subject 아주 기초적인 자바스크립트 질문이요..
자바중 prime을 사용해 소수를 구하려고 합니다.

<html>
<head>
<title>500이하의 소수 구하기!</title>
</head>
<body>
<script language=javascript>
var i;
var j;
var prime = true;
var max=500;

i=1;
while (i < max ) {
        j=2;
        while (j<i) {
                if (i%j==0) {
                        prime = false;
                }
                j++;
        }
        if (prime == true) document.writeln(i);
        prime = true;
        i++;

}


</script>
</body>
</html>



괜찮은거 같은데 조교가 몇군데 틀렸다고 고쳐오라고 하네요. 가르켜 주지는 않고.... 자바 생초보인지라 각종 강좌를 봐도 틀린점을 못찾겠습니다. 조금만 도와주세요!
좋은 하루 되시길 바랍니다!

통합규정 1.3 이용안내 인용

"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.
법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
레이니선
09/06/10 13:33
수정 아이콘
아무리 살펴봐도 문법상의 오류는 찾을길 없군요.
알고리즘상의 문제를 지적당하신거라면 사실 저한테 짜라고 해도 저렇게 짤것이기 때문에 그또한 문제점을 찾지는 못하였습니다.

다만, while 루프를 for 를써서 break; 구문으로 조금의(!) 성능향상이 있을을 꾀할수 있을것 같습니다.

그리고 여담으로 javascript 와 java 와는 별개의 것입니다.^^;
09/06/10 13:36
수정 아이콘
일단 1은 소수가 아닙니다. i는 2부터 시작하셔야 합니다.

i%j가 0이면 그것은 소수가 아니기 때문에 루프를 더 돌 필요도 없습니다. 검출즉시 break;를 걸어 탈출 하셔야 합니다.

물론 prime = false;다음에 말이죠.

문법상으론 이 정도면 될거 같고

JS 본질로 들어가겠습니다.

.js로 써서 끌어쓰시던지 혹은 내부 html이나 jsp파일을 통해서 끌어오신다고 쳐도

가급적이면 저 logic부분은 function name()
...
식으로 처리하신 다음에 src=prime.js 라던지 <a href=javascript:prime()> 식으로 처리하시는 편이 나을것 같습니다.
09/06/10 16:23
수정 아이콘
다시 짜오라고 한건 정말 무식한 방법이기 때문입니다.

소수냐 아니냐만 구하면 되는건데 저렇게 다 계산할 필요가 없습니다.
2로 나눠서 나머지가 0 이 그냥 빠져나오면 됩니다.

그리고 두번째가 2로 나눈 다음은 4 이상의 2의 배수로 나눌 필요가 없다는 것입니다.
2로 나눠서 나머지가 0 아닌데 2의 배수로 나눠서 나머지가 0 이 되는 수는 없습니다.
그런걸 로직으로 다 제외하고 나눠질 수보다 작은 소수만으로로 나눠서 값을 구하셔야 합니다.

로직상으로는 틀린 부분은 없지만 효율성에서의 지적을 한 것 같네요.
목록 삭게로! 맨위로
번호 제목 이름 날짜 조회
57286 자취하면서 해먹을만한 반찬이나 요리에 대한 질문입니다. [20] 단하나의별4868 09/06/10 4868
57285 웅진의 플레이오프 진출 가능성 [3] 언제나남규리1841 09/06/10 1841
57284 아버지가 새차로 소나타를 사진다고 하네요~ [11] 래토닝2181 09/06/10 2181
57282 적분하나만 질문드리겠습니다 [2] 기다리다2478 09/06/10 2478
57281 닉네임 변경은 왜 안하나요?? 설마 6월초에 끝났나요?? [2] 강마에1929 09/06/10 1929
57280 방금있었던 이제동 vs 김정우 선수 경기 질문입니다 [9] 히히히2630 09/06/10 2630
57279 아주 기초적인 자바스크립트 질문이요.. [3] 밀가리2359 09/06/10 2359
57278 신발 세탁하는 법 알려주세요... [3] 본호라이즌2535 09/06/10 2535
57277 판님 댓글이 있는 글을 수배합니다. [6] 기사도2701 09/06/10 2701
57276 컴터 업그레이드 질문입니다. [3] KNU백1494 09/06/10 1494
57275 팝송 제목 질문 드립니다. [2] 마티니1770 09/06/10 1770
57274 최근 분위기가 좋은 스페인, 이유는 무엇일까요? [18] Surrender2124 09/06/10 2124
57273 노트북을 포맷했는데 드라이버를 못찾겟어요 . [3] 짝복2081 09/06/10 2081
57272 [건의] 상단 메뉴의 게임단 홈페이지 링크 관련 [2] 라이디스1677 09/06/10 1677
57271 삭제에 대한 공감대가 필요한 것 같습니다. [29] 王非好信主1609 09/06/10 1609
57270 남자 청바지.. 부츠컷이 인기있나요? [19] 꿀빵4015 09/06/10 4015
57269 PGR 직장인분들 저축에 관해서.. [8] 달려라투신아~2041 09/06/10 2041
57268 남자 혼자 술집에서 술먹는게 좀 그런가요?^^;; [11] 카스트로폴리11018 09/06/10 11018
57267 꿈을 꾸었는데요 [1] 야간알바1518 09/06/10 1518
57265 직장인 용돈 말인데요.. [21] 브랜드뉴2347 09/06/10 2347
57263 마냥 은행에만 둘 수 없는 돈. 어떻게 관리할까요 [4] 트라좀1506 09/06/10 1506
57261 정말죄송한데 재무관리 문제 하나 질문합니다. 김간지1523 09/06/10 1523
57260 곰클 외국인 해설자분의 근황은!? ace_creat1834 09/06/10 1834
목록 이전 다음
댓글

+ : 최근 6시간내에 달린 댓글
+ : 최근 12시간내에 달린 댓글
맨 위로