자바스크립트 별 출력, 입력된 수 중 최대값 최소값 출력 소스코드가 실행...

자바스크립트 별 출력, 입력된 수 중 최대값 최소값 출력 소스코드가 실행...

작성일 2021.11.30댓글 1건
    게시물 수정 , 삭제는 로그인 필요

아래의 소스코드는 별 출력 소스코드에요. 근데 실행하면 프롬포트까지만 나오고 다음에는 실행이 안됩니다. 어디에 버그가 있는걸까요? 도와주세요 ㅠㅠ

<!doctype html>
<html><head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 <title>별 문자 출력하기</title>
    <script>
   function printstar(n){
  for(var i=1;i<=m;i++){
    for(var k=0;k<i;k++){
       document.write("*");
    }
    document.write("<br>");}
    for(var j=m;j>=1;j--){
    for(var w=0;w<j;w--){
       document.write("*");
    }
    document.write("<br>");}
 }
     
    </script></head>
<body>
<h2>별 문자 출력하기</h2><hr>
<script>
var n=prompt("정수를 입력하세요","0");
var m=parseInt(n);
 if(isNaN(m) || m<o || m%1 != 0){
     document.write("입력 오류입니다.");}
printstar(n);

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


두번째로 입력된 수를 그대로,역순으로 출력하고 최대값,최소값을 출력하는 소스코드입니다. 이것은 프롬포트조차 나오지 않습니다. 왜 그럴까요? 제발 도와주세요 ㅠㅠ

<!doctype html>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
 <title>입력받은 정수들의 최대값,최소값 출력</title></head>
<body>
<h2>정수 5개 입력받아 최대값,최소값 출력</h2><hr>
<script type="text/javascript" charset="utf-8">
for(var i=0,i=<4,i++){
 var r=prompt("정수 입력","0");
 var m=parseInt(r)
 if(isNaN(m)||m=<0||m%1!=0){
     alert("입력 오류입니다.")
     return; }
    var any= new Array(5);
 any[i]=m}
</script>
<h4>입력된 수의 배열</h4><br>
<script>
for(var r=0,r=<4,r++){
 document.write(any[r];)
 }
</script><hr>
<h4>역순으로 재정렬된 배열</h4><br>
<script>
for(var k=4,k=>0,k--){
 document.write(any[k]);
}
</script><hr>
<h4>입력된 수의 최대값</h4><br>
<script>
function getmax(){
 var max=any[0];
 for(var i=1,i<any.length,i++){
    if(max<any[i]){max=any[i];}
 }
 document.write(max);
}
</script><hr>
<h4>입력된 수의 최소값</h4><br>
<script>
function getmin(){
 var min=any[0];
 for(var i=1,i<any.length,i++){
    if(min>any[i]){
    min=any[i];}
 }
 document.write(min);
}
</script>
</body>
</html>



#자바스크립트 별찍기 #자바스크립트 별점 #자바스크립트 별찍기 다이아몬드 #자바스크립트 별찍기 공백 #자바스크립트 별찍기 function #자바스크립트 별점 소스 #자바스크립트 별찍기 트리 #자바스크립트 별찍기 모래시계 #자바스크립트 별만들기 #자바스크립트 별표

profile_image 익명 작성일 -

첫번째

<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>별 문자 출력하기</title> <script> function printstar(m) { for (var i = 1; i <= m; i++) { for (var k = 0; k < i; k++) { document.write("*"); } document.write("<br>"); } for (var j = m; j >= 1; j--) { for (var w = 0; w < j; w++) { document.write("*"); } document.write("<br>"); } } </script> </head> <body> <h2>별 문자 출력하기</h2> <hr /> <script> var n = prompt("정수를 입력하세요", "0"); var m = parseInt(n); if (isNaN(m) || m < 0 || m % 1 != 0) { document.write("입력 오류입니다."); } else { printstar(m); } </script> </body> </html>

입력값 확인하는 곳에 m<o 로 되어있어요. 알파벳'o'와 숫자'0'이 키보드에서 위아래로 붙어 있으니 조심하시고,

위의 두번째 역순으로 출력하는 for문에서 안쪽 for문에 w++ 해야하는데 w-- 하셨네요.

증가해야 하는데 감소를 하니 무한 루프 입니다.

두번째... 문제가 많네요. 기본적인 문법이 제대로 지켜지지 않은...

<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>입력받은 정수들의 최대값,최소값 출력</title> </head> <body> <h2>정수 5개 입력받아 최대값,최소값 출력</h2> <hr /> <script type="text/javascript" charset="utf-8"> var any = new Array(5); for (var i = 0; i <= 4; i++) { var r = prompt("정수 입력", "0"); var m = parseInt(r); if (isNaN(m) || m < 0 || m % 1 != 0) { alert("입력 오류입니다."); // return; } any[i] = m; } </script> <h4>입력된 수의 배열</h4> <br /> <script> for (var r = 0; r <= 4; r++) { document.write(any[r] + ":"); } </script> <hr /> <h4>역순으로 재정렬된 배열</h4> <br /> <script> for (var k = 4; k >= 0; k--) { document.write(any[k] + ":"); } </script> <hr /> <h4>입력된 수의 최대값</h4> <br /> <script> function getmax(any) { var max = any[0]; for (var i = 1; i < any.length; i++) { if (max < any[i]) { max = any[i]; } } document.write(max); } getmax(any); </script> <hr /> <h4>입력된 수의 최소값</h4> <br /> <script> function getmin(any) { var min = any[0]; for (var i = 1; i < any.length; i++) { if (min > any[i]) { min = any[i]; } } document.write(min); } getmin(any); </script> </body> </html>

지적할게 너무 많아서...

일단 문장 뒤에 ';' 세미콜론 빼먹은 곳이 많아요.

비교문중에 => =< 이런식으로 쓴곳이 있는데, 등호는 뒷부분으로 나와야해요.

<= >= 이런식으로요. 기초적인 부분에서 오류가 나니 페이지가 시작도 하지 않는 것입니다.

입력 확인 부분에 return 을 넣으면 그부분에서 해당블럭을 빠져나옵니다.

return의 사용법을 다시 확인해주세요.

배열을 선언을 for문 안쪽에 넣으면 계속 신규 생성되기때문에 마지막 입력값밖에 남지 않습니다.

필요한 경우가 아니라면 배열이나 변수는 반복문 밖에서 미리 선언하고 사용하세요.

최대 최소값 출력부분도 함수를 선언해서 작성하셨으면 함수를 호출해서 사용하셔야합니다.

선언만 해놓으면 실행이 안돼죠. 그리고 함수 안에서는 함수 밖의 변수나 배열을 참조할수 없습니다.

함수에 파라메터로 넘겨줘야 참조 가능합니다.

결과적으로 기본적인 javascript 문법을 먼저 공부하셔야 할것같습니다.

힘내세요 :)

배열에 저장 된 정수 중 최대값출력

... cout << "배열 크기 입력: "; cin >> j; int *i = new int[j]... 최대값출력하는 동작을 할텐데요.. 이 코드는... // 의미는 없어요..실행시킬 때 보기 좋은 것...

자바스크립트 코드

... 소스 오류부터 잡아야 하겠네요. ^^ 자바스크립트에서 Function 은 function 처럼 소문자로 사용하셔야 합니다. 그리고 콘솔창에 Hi 를 출력해...

자바 소스코드 질문.

... 소스코드는 이미지와 같은 결과를 출력하는 코드인데요.. 제가 작성중인 [네이버]와 [검색] 버튼 사이에 [ ] 사용자 입력...