Javascript.RU

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

Игра "Камень Ножницы Бумага" на js
Нужно сделать игру "Камень Ножницы Бумага".
Пользователь вводит свой вариант через prompt, программа генерирует свой вариант через Math.random() и выводит через alert. Следующий alert выводит имя победителя или "ничья"
Подскажите, в чем ошибка?

var arr = ["Камень", "Ножницы", "Бумага"];

var rand = Math.floor(Math.random() * arr.length);

var result_02 = arr[rand];
alert (result_02);

var result_01 = prompt("Введите данные");


var r = result_01 || result_02;

switch (r) {
  case "Камень" || "Ножницы":
    alert( "Камень победил" );
break;

  case "Камень" ||"Бумага":
    alert("Бумага победила");
break;

  case "Ножницы" || "Бумага":
    alert("Ножницы победили");
break;
  default:
  
    alert("Ничья");
}
Ответить с цитированием
  #2 (permalink)  
Старый 01.03.2018, 18:29
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

var r = result_01 || result_02; - это что за покемон?
при любом кроме пустого ввода будет идентичен;
var r = result_01;
Ответить с цитированием
  #3 (permalink)  
Старый 01.03.2018, 18:34
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

alert('Камень'|| 'Бумага');

alert('Ножницы'|| 'Бумага');

alert(''|| 'Бумага');
Ответить с цитированием
  #4 (permalink)  
Старый 01.03.2018, 18:42
Профессор
Отправить личное сообщение для Julia1991 Посмотреть профиль Найти все сообщения от Julia1991
 
Регистрация: 13.08.2017
Сообщений: 167

Что нужно прописать вместо этого?
var r = result_01 || result_02;
Ответить с цитированием
  #5 (permalink)  
Старый 01.03.2018, 19:30
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126


https://javascript.ru/forum/misc/515...tml#post340325
Ответить с цитированием
  #6 (permalink)  
Старый 01.03.2018, 19:41
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

var arr = ["Камень", "Ножницы", "Бумага"];

var rand = Math.floor(Math.random() * arr.length);

var result_02 = arr[rand];
alert (result_02);

var result_01 = prompt("Введите данные");

if(arr.includes(result_01)){

var win = [["Камень", "Ножницы"],["Ножницы", "Бумага"],["Бумага", "Камень"]].find((el,i)=>result_01==el[0]&&result_02==el[1]||result_02==el[0]&&result_01==el[1])||['Ничья'];
alert(win[0]);
}
else alert('Неверный ввод');

Последний раз редактировалось j0hnik, 01.03.2018 в 19:52.
Ответить с цитированием
  #7 (permalink)  
Старый 01.03.2018, 20:49
Профессор
Отправить личное сообщение для Julia1991 Посмотреть профиль Найти все сообщения от Julia1991
 
Регистрация: 13.08.2017
Сообщений: 167

Как решить эту задачу использую только условие if или switch?
Ответить с цитированием
  #8 (permalink)  
Старый 01.03.2018, 21:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,126

Сообщение от Julia1991
Как решить эту задачу использую только условие if
ссылка в сообщении №5, посмотрите всю тему с начала.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Операционная Система на JS Icat Общие вопросы Javascript 3 17.04.2018 22:54
Не получается вставить код js в HTML garmoni Элементы интерфейса 3 05.09.2013 05:56
Игра на JS (не работает) function Общие вопросы Javascript 2 26.03.2012 14:41
Игра на JS. Косяк с массивом treno1 Общие вопросы Javascript 0 08.06.2011 17:13
Дам 500 руб...нужна любая игра на JS с объяснением astra_89 Работа 5 31.05.2010 08:37