Показать сообщение отдельно
  #1 (permalink)  
Старый 24.04.2019, 13:12
Новичок на форуме
Отправить личное сообщение для DowL_HH4 Посмотреть профиль Найти все сообщения от DowL_HH4
 
Регистрация: 24.04.2019
Сообщений: 1

Найти минимальное положительное число
Привет всем, есть [spoiler=Задача]Задается количество элементов массива не более 100. Программа должна запросить столько чисел у пользователя. Элементами массива будут целые числа от -1000 то 1000. Если введено количество меньше 1, то количество элементов считается равным 10, а элементы заполняются случайными числами.
Найти минимальное положительное число. Это число нужно выделить. Если таких чисел несколько, выделить все.[/spoiler]
Есть код к подобной задаче, только он ищет числа оканчивающиеся на 8. Никак не могу понять, где и как изменить алгоритм и на какой. Спасибо.
<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<title>WUT?!</title>
		<script>
			function one(x) 
			{
				document.getElementById("in").innerHTML = "";
				document.getElementById("input").innerHTML = "";
				document.getElementById("out").innerHTML = "";
				var length = x >= 1 ? x <= 100 ? x : 100 : 10;
				var mass1 = []; 
				var mass2 = []; 
				if(x < 1)
				{
					for(var i = 0, k = 0; i < length; i++)
					{
						mass1[i] = getRandom(-1000, 1000);
						if( (mass1[i] % 10 == 8)  && (mass1[i] > 0)  && (mass1[i] % 2 == 0) )
						{
							mass2[k] = mass1[i];
							k++;
						}
					}		
					if(mass2.length == 0)
					{
						for(var i = 0; i < length; i++) document.getElementById("in").innerHTML += mass1[i] + "</br>";
						document.getElementById("out").innerHTML = "Не найдено подходящих элементов";
					}
					else
					{
						var min = mass2[0];
						for(var i = 0; i < mass2.length; i++)
						{
							if(mass2[i] < min)
							{
								min = mass2[i];
							}
						}
						for(var i = 0; i < length; i++){
							if(mass1[i] == min)
								document.getElementById("in").innerHTML += "<span style=" + "background-color:red" + ">" + mass1[i] + "</SPAN>" + "</br>";
							else document.getElementById("in").innerHTML += mass1[i] + "</br>";
						}
						document.getElementById("out").innerHTML = "Минимальное положительное число': " + min;
					}
				}
				else
				{
					createInputs(length);
				}
			}
			function two(x) 
			{
				document.getElementById("in").innerHTML = "";
				document.getElementById("out").innerHTML = "";
				var mass1 = []; 
				var mass2 = []; 
				for(var i = 0, k = 0; i < x; i++)
				{
					mass1[i] = Number(document.getElementById("in" + i).value);
					if( (mass1[i] % 10 == 8)  && (mass1[i] > 0)  && (mass1[i] % 2 == 0) )
					{
						mass2[k] = mass1[i];
						k++;
					}
				}
				if(mass2.length == 0)
				{
					for(var i = 0; i < x; i++) document.getElementById("in").innerHTML += mass1[i] + "</br>";
					document.getElementById("out").innerHTML = "Не найдено подходящих элементов";
				}
				else
				{
					var min = mass2[0];
					for(var i = 0; i < mass2.length; i++)
					{
						if(mass2[i] < min)
						{
							min = mass2[i];
						}
					}
					for(var i = 0; i < x; i++){
						if(mass1[i] == min)
							document.getElementById("in").innerHTML += "<span style=" + "background-color:red" + ">" + mass1[i] + "</SPAN>" + "</br>";
						else document.getElementById("in").innerHTML += mass1[i] + "</br>";
					}
					document.getElementById("out").innerHTML = "Минимальное положительное число: " + min;
				}		
			}
			function getRandom(min, max)
			{
			  return Math.floor(Math.random() * (max - min) + min);
			}

			function createInputs(count)
			{
				var result = "<form onsubmit=\"two(" + count + ");return false\">";
				for (var i = 0; i < count; i++)
				{
					result += "<input type='text' id='in"+i+"' /><br />";
				}
				result +="<input type=\"submit\" value=\"Сгенерировать\"></form>";
				document.getElementById("input").innerHTML = result;
			}
		</script>
	</head>
	<body>
		<form onsubmit="one(length.value);return false" style =" display : inline">
			<label>X</label>
			<input type="number" name="length" size=3 value=-1 required>
			<input type="submit" value="Сгенерировать ">
			<p id="in"></p>
			<p id="out"></p>
		</form>
		<div id="input"></div>
	</body>
</html>
Ответить с цитированием