diff --git a/MissingNumber.zip b/MissingNumber.zip new file mode 100644 index 0000000..189435b Binary files /dev/null and b/MissingNumber.zip differ diff --git a/findmissingnumber.html b/findmissingnumber.html new file mode 100644 index 0000000..5554ae8 --- /dev/null +++ b/findmissingnumber.html @@ -0,0 +1,45 @@ + + + + + + + Find Missing Number + + + + +
+ +

Select a text file to find missing number

+

+ 1) Each new line will contain a set of sequential numbers with one number missing.
+ 2) Each series will be comma delimited and in a random order. +

+
+ Select a text file: + +
+ + + + + \ No newline at end of file diff --git a/myJS.js b/myJS.js new file mode 100644 index 0000000..e211536 --- /dev/null +++ b/myJS.js @@ -0,0 +1,59 @@ +// JavaScript source code +var number_array = []; +var validFileExtensions = [".txt"]; +function find() { + var textfile = document.getElementById('textfile'); + var showfile = document.getElementById('showfile'); + var file = textfile.files[0]; + var textType = /text.*/; + if (hasExtension('textfile', validFileExtensions) ){ + var reader = new FileReader(); + reader.onload = function (e) { + showfile.innerText = reader.result; + var numbers = reader.result.toString().split("\n"); + var number_list, missing_number,missing_string=""; + for (var i = 0; i < numbers.length; i++) { + number_list = numbers[i].split(","); + if (number_list.length > 0) { + number_array[i] = number_list; + missing_number = findmissing(number_array[i]); + missing_string += missing_number +"\n"; + } + + } + document.getElementById("showmissing").innerText = missing_string + //alert(number_array.length) + } + reader.readAsText(file); + + document.getElementById("result").style.display = ""; + } else { + showfile.innerText = "Please select a text file!" + } + +} + +function findmissing(array) { + var size, max, min, sum_all=0,sum=0, i; + max = Math.max.apply(null, array); + min = Math.min.apply(null, array); + size = array.length; + sum_all = (size+1) * (min + max) / 2; + for( i=0;i