Главная » Задание 3: работа с функциями

Задание 3: работа с функциями


08.03.2021, 08:37

Исходные данные

Оптимизация кода из задания 2.

1) Создать функцию start , которая будет запускать диалог с пользователем и задавать ему вопрос "Сколько фильмов вы уже посмотрели?"
В коде необходимо учесть вероятность ввода пользователем пустой строки или не числового значения, а также нажатие кнопки отмена.

2) Создать функции rememberMyFilms и detectPersonalLevel, в первую поместить уже имеющийся цикл с вопросами о последних просмотренных фильмах,
во вторую - имеющийся блок условий для определения уровня пользователя как зрителя.

3) Создать функцию showMyDB, которая будет проверять свойство privat. Если стоит в позиции
false - выводит в консоль главный объект программы

4) Создать функцию writeYourGenres в которой пользователь будет 3 раза отвечать на вопрос
"Ваш любимый жанр под номером ${номер по порядку}". Каждый ответ записывается в массив данных
genres






Код

'use strict';

let numberOfFilms;

function start() {
  numberOfFilms = +prompt('Сколько фильмов вы уже посмотрели?', '');

  while (numberOfFilms == '' || numberOfFilms == null || isNaN(numberOfFilms)) {
  numberOfFilms = +prompt('Сколько фильмов вы уже посмотрели?', '');
  }
}

start();

const personalMovieDB = {
  count: numberOfFilms,
  movies: {},
  actors: {},
  genres: [],
  privat: false
};

function rememberMyFilms() {
  for (let i = 0; i < 2; i++) {
  const a = prompt('Один из последних просмотренных фильмов?', ''),
  b = prompt('На сколько оцените его?', '');
   
  if (a != null && b != null && a != '' && b != '' && a.length < 50) {
  personalMovieDB.movies[a] = b;
  console.log('done');
  } else {
  console.log('error');
  i--;
  }
  }
}

rememberMyFilms();

function detectPersonalLevel() {
  if (personalMovieDB.count < 10) {
  console.log("Просмотрено довольно мало фильмов");
  } else if (personalMovieDB.count >= 10 && personalMovieDB.count < 30) {
  console.log("Вы классический зритель");
  } else if (personalMovieDB.count >= 30) {
  console.log("Вы киноман");
  } else {
  console.log("Произошла ошибка");
  }
}

detectPersonalLevel();

function showMyDB (hidden) {
  if (!hidden) {
  console.log(personalMovieDB);
  }
}

showMyDB(personalMovieDB.privat);

function writeYourGenres() {
  for (let i = 1; i <= 3; i++) {
  personalMovieDB.genres[i - 1] = prompt(`Ваш любимый жанр под номером ${i}`);
  }
}

writeYourGenres();


КОММЕНТАРИИ (0)