Помогите написать программу
Задача №1.
С клавиатуры вводится 3 числа.Вычислить и вывести на экран сумму 2-х больших из них. Задача №2. С клавиатуры вводится массив состоящий из 10 элементов-преобразовать его записав все элементы в обратном порядке.Измененный массив вывести на экран. Откликнувшимся Спасибо!! |
Задача 1:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Задача 1</title> </head> <body> <script type="text/javascript"> var digit1 = Number(prompt('Введите первое число')), digit2 = Number(prompt('Введите первое число')), digit3 = Number(prompt('Введите первое число')); if(digit1 > digit3 && digit2 > digit3) { document.write(digit1 + digit2); } else if(digit1 > digit2 && digit3 > digit2) { document.write(digit1 + digit3); } else if (digit2 > digit1 && digit3 > digit1) { document.write(digit2 + digit3); } //alert(digit1); </script> </body> </html> |
Задача: 2
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>Задача 1</title> </head> <body> <script type="text/javascript"> var mas = [], masElem, i, i_plus = 1; for(i = 0; i <= 9; i += 1) { masElem = prompt('Введите ' + i_plus + ' элемент масива'); mas.push(masElem); i_plus += 1; } document.write(mas.reverse()); </script> </body> </html> |
Спасибо большое.
|
Забавно: школярские задачки и школярские же ответы к ним.
Зато препод не придерётся.) |
Цитата:
PS: чтобы примеры можно было запустить, нужно добавить run ([html run]) |
я бы сделал первую задачу так
<div></div> <script> window.onload = function () { var div = document.body.children[0]; function cn(a, b) { if (a < b) { return 1; } else { return -1; } } var mas = []; var num; var len = prompt('Введите количество вводимых чисел (больше 1)', 3); while (len == '' || len.search(/\S/g) == -1 || isNaN(len) == true || len <= 1) { len = prompt('Было введено не число или число <= 1. Попробуйте ввести число ещё раз'); } for (var i = 1; i <= len; i++) { num = prompt('Введите ' + i + '-е число') while (num == '' || num.search(/\S/g) == -1 || isNaN(num) == true) { num = prompt('Было введено не число.\nПопробуйте ещё раз ввести ' + i + '-е число'); } mas.push(Number(num)); div.innerHTML += i + '-e число: ' + mas[i-1] + ';<br>' } mas.sort(cn); div.innerHTML += 'cумма двух наибольших: ' + (mas[0] + mas[1]) + ';' } </script> |
Цитата:
1. Ввод в цикле, пихаем в массив. 2. Сортируем массив 3. Удаляем лишние элементы 4. Складываем Вторая: сразу записывать в обратном порядке. |
Цитата:
не, я не шутил, не считая проверок, алгоритм такой, только без 3 пункта, так как элементы массива уже отсортированы в порядке убывания |
Цитата:
|
Часовой пояс GMT +3, время: 13:34. |