Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Всем привет, не могу решить задачку ! (https://javascript.ru/forum/dom-window/82175-vsem-privet-ne-mogu-reshit-zadachku.html)

zikuran 27.03.2021 10:08

Всем привет, не могу решить задачку !
 
Вот условие:
Напишите программу, которая последовательно запрашивает у пользователя имя,
фамилию и никнейм. Далее при помощи alert или консоли отобразите приветственное
сообщение исходя из следующих условий:
- введены имя, фамилия и никнейм -> обратиться к пользователю по имени и фамилии;
- введены имя, фамилия -> обратиться к пользователю по имени и фамилии;
- введены никнейм и фамилия -> обратиться к пользователю через никнейм;
- введены никнейм и имя -> обратиться к пользователю через имя;
- не введено ни одно значение или введена только фамилия или только никнейм ->
обратиться к пользователю через ‘Noname’;

Задачку нужно решить при помощи логических операторов && и ||

Detrimon 27.03.2021 14:40

Можно первые два условия притянуть за уши и записать через ||, но по-моему смысла в этом нет :) Поэтому вот решение только через оператор &&

let name = prompt("Введите имя: ");
let surname = prompt("Введите фамилию: ");
let nickname = prompt("Введите никнейм: ");

function sayHello(name, surname, nickname) {
  if (name && surname) {
    alert(`Здравствуйте, ${name} ${surname}`);
  } else if (!name && surname && nickname) {
    alert(`Здравствуйте, ${nickname}`);
  } else if (name && !surname && nickname) {
    alert(`Здравствуйте, ${name}`);
  } else {
    alert(`Здравствуйте, Noname`);
  }
}

sayHello(name, surname, nickname);


Часовой пояс GMT +3, время: 02:47.