Javascript.RU

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

Вычисление наибольшего.
Только начинаю учить JS. Столкнулся с учебным заданием вычисление наибольшего числа из 3. Все получилось, сам себе усложнил добавил 4-е, и уже не получается, показывает неверный ответ.

var x = +prompt ('первое');
var y = +prompt ('второе');
var z = +prompt ('третье');

if ((x > y) && (x > z)) {res = x;}

else { if (y > z) {res = y} else {res = z}}

alert (res);

</script>

Ввел 4-е число и поставил такое решение :

var x = +prompt ('первое');
var y = +prompt ('второе');
var z = +prompt ('третье');
var a = +prompt ('четвертое');

if ((x > y) && (x > z) && (x > a)) {res = x;}

else {{if (y > z) {res = y;} else {res = z}} {if (z > a) {res = z;} else {res = a;}}}

alert (res);

И результаты через раз, неверные! Помогите, кто поймет!
Ответить с цитированием
  #2 (permalink)  
Старый 10.12.2017, 13:53
Кандидат Javascript-наук
Отправить личное сообщение для Lion777 Посмотреть профиль Найти все сообщения от Lion777
 
Регистрация: 04.11.2017
Сообщений: 117

Супер код
arrNum = [];

arrNum.push(prompt('Первое'));
arrNum.push(prompt('Второе'));
arrNum.push(prompt('Третье'));
arrNum.push(prompt('Четвертое'));

maxNum = Math.max(...arrNum);
alert('Максимальное число из введенных: ' + maxNum);
Ответить с цитированием
  #3 (permalink)  
Старый 10.12.2017, 14:12
Новичок на форуме
Отправить личное сообщение для Начинающий Посмотреть профиль Найти все сообщения от Начинающий
 
Регистрация: 10.12.2017
Сообщений: 5

Спасибо! Действительно супер-код. гораздо лаконичнее. Будем учить!
Ответить с цитированием
  #4 (permalink)  
Старый 10.12.2017, 15:41
Новичок на форуме
Отправить личное сообщение для Начинающий Посмотреть профиль Найти все сообщения от Начинающий
 
Регистрация: 10.12.2017
Сообщений: 5

Подскажите, а в чем проблема моей программы, с 4- мя значениями? Почему она работает неправильно? В чем, я в ней допустил ошибку, если сравнивать, с программой где только 3 числа (x,y,z)?
Ответить с цитированием
  #5 (permalink)  
Старый 10.12.2017, 18:40
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,109

Начинающий,
var x = +prompt ('первое');
var y = +prompt ('второе');
var z = +prompt ('третье');
var a = +prompt ('четвертое');

if ((x > y) && (x > z) && (x > a)) {res = x;}
else if (y > z && y > a) {res = y;}
else if (z > y && z > a){res = z}
else {res = a;}
alert (res);
Ответить с цитированием
  #6 (permalink)  
Старый 10.12.2017, 19:36
Новичок на форуме
Отправить личное сообщение для Начинающий Посмотреть профиль Найти все сообщения от Начинающий
 
Регистрация: 10.12.2017
Сообщений: 5

Спасибо!
Ответить с цитированием
  #7 (permalink)  
Старый 11.12.2017, 00:02
Аватар для Vlasenko Fedor
Профессор
Отправить личное сообщение для Vlasenko Fedor Посмотреть профиль Найти все сообщения от Vlasenko Fedor
 
Регистрация: 13.03.2013
Сообщений: 1,572

Вариант
alert('Максимальное число: ' + ['Первое', 'Второе', 'Третье', 'Четвертое'].reduce(function(prev, current) {
  var value = +prompt(current);
  return value > prev ? value : prev;
}, Number.NEGATIVE_INFINITY));

Последний раз редактировалось Vlasenko Fedor, 11.12.2017 в 12:30. Причина: Добавил корректную работу с отрицательными числами
Ответить с цитированием
  #8 (permalink)  
Старый 11.12.2017, 10:18
Новичок на форуме
Отправить личное сообщение для Начинающий Посмотреть профиль Найти все сообщения от Начинающий
 
Регистрация: 10.12.2017
Сообщений: 5

Супер!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вычисление высоты элемента Gamelast jQuery 2 24.03.2017 09:17
Не выполняется вычисление Remca Общие вопросы Javascript 2 05.05.2016 17:29
Вычисление без ввода данных Remca Общие вопросы Javascript 0 04.05.2016 17:06
Вычисление индекса любого элемента в массиве Alexander Belov Events/DOM/Window 15 02.04.2016 01:29
Вычисление в строку lammeR Общие вопросы Javascript 4 06.06.2010 19:17