2017-02-27 5 views
1

ユーザ入力の順番を最低から最高まで並べ替え、自分のIDに印刷する必要があります。ユーザ入力を最低から最高まで並べ替え

配列のsort()メソッドを使用せずにn個の整数をソートするソートアルゴリズムを実装します。

ソートされた配列を出力に出力します。

<!DOCTYPE html> 
<html> 

<head> 
<title>User Input, Sort and Find!</title> 

<style> 

</style> 
</head> 

<body> 
<h2>Enter 4 numbers user!</h2> 
<p id="myprint"></p> 

<button onclick="userInput()">Input your Numbers!</button> 
<button onclick="searchInput()">Find an inputed number in your array!  </button> 
<script> 
var numbers = []; 

function userInput() { 
for(var i = 0; i < 4; i++){ 
    var num = prompt("Enter a number 1 at a time, from 1-9 until prompts ask you 4 times:"); 
    if (isNaN(num)) { 
    alert("Enter a number!"); 
    --i; // reset the counter for amount of numbers entered 
    } 
    if(!isNaN(num)) { 
     if(num % 1 != 0){ 
     alert("Enter a whole number!") 
     --i; // reset the counter for amount of numbers entered 
     }else{ 
     numbers.push(num); 
     } 
    } 
} 
document.getElementById("myprint").innerHTML = "Your numbers are" + numbers; 
//Sort the array and print numbers in inner html 
function bubbleSort(numbers) { 
    var length = numbers.length; 
    for (var i = (length - 1); i >= 0; i--) { 
     for (var j = (length - i); j > 0; j--) { 
      if (numbers[j] < numbers[j - 1]) { 
       var nmbr = numbers[j]; 
       numbers[j] = numbers[j - 1]; 
       numbers[j - 1] = nmbr; 
      } 
     } 
    } 
} 
function searchInput() { 

} 
} 
</script> 

</body> 
</html> 
+1

ですか? – JohanP

+0

現在のコードは実行時に実際に何をしますか?示されたコードでは、実際に 'bubbleSort()'を呼び出すことはありません。 – nnnnnn

答えて

1

実際にはbublesort関数を呼び出す必要があり、その関数が結果を返す必要があることを除いて、コードは機能しているようです。 `のArray.sort()`許されないのはなぜここ

<body> 
<h2>Enter 4 numbers user!</h2> 
<p id="myprint"></p> 

<button onclick="userInput()">Input your Numbers!</button> 
<button onclick="searchInput()">Find an inputed number in your array!  </button> 
<script> 
var numbers = []; 

function userInput() { 
for(var i = 0; i < 4; i++){ 
    var num = prompt("Enter a number 1 at a time, from 1-9 until prompts ask you 4 times:"); 
    if (isNaN(num)) { 
    alert("Enter a number!"); 
    --i; // reset the counter for amount of numbers entered 
    } 
    if(!isNaN(num)) { 
     if(num % 1 != 0){ 
     alert("Enter a whole number!") 
     --i; // reset the counter for amount of numbers entered 
     }else{ 
     numbers.push(num); 
     } 
    } 
} 

numbers = bubbleSort(numbers); 

document.getElementById("myprint").innerHTML = "Your numbers are" + numbers; 
//Sort the array and print numbers in inner html 
function bubbleSort(numbers) { 
    var length = numbers.length; 
    for (var i = (length - 1); i >= 0; i--) { 
     for (var j = (length - i); j > 0; j--) { 
      if (numbers[j] < numbers[j - 1]) { 
       var nmbr = numbers[j]; 
       numbers[j] = numbers[j - 1]; 
       numbers[j - 1] = nmbr; 
      } 
     } 
    } 
    return numbers; 
} 
function searchInput() { 

} 
} 
</script> 

</body> 

fiddle that works

+1

ありがとう、私はそれが笑に気付かなかったとは信じられません。私は疲れました。 –

+0

私たちすべてに起こりますが、心配はありません。 :) – Paul

関連する問題