Loading...

Във форума е въведено ограничение, което позволява на потребителите единствено да разглеждат публикуваните въпроси.

B.Baleva avatar B.Baleva 6 Точки

1. Old books - JS

https://pastebin.com/3VqtXgyc

Не получавам желания отговор. Цикъла ми отчита, че съм минала само през една книга докато стигна до любимата книга,а всъщност минавам през две, но не ми ги отпечатва.

 

Тагове:
0
Programming Basics
PetarIliev1 avatar PetarIliev1 73 Точки

https://pastebin.com/hnyT2HsW  - Твоето решение поправено.

Проблема беше на 18-ти ред където ако минеш if проверката (дефакто не е намерила книгата) четеш пак книга която не се проверява защото на 11-ти ред четеш следващата.

Така това което става при вход :

The Spot
4
Hunger Games
Harry Potter
Torronto
Spotify

Взимаш първо Hunger Games == The Spot  - Не, но преди да се е върнало към while loop-a взимаш :

  • counter++;

        nextBook = input.shift();

 

само , че никъде не го проверяш и губиш цяла книга защото отива на 11-ти ред и вместо да провери Harry Potter == The Spot  то проверява Torronto == The Spot ---   let nextBook = input.shift();

Надявам се да съм си бил полезен.

 

0
B.Baleva avatar B.Baleva 6 Точки

Преди while цикъла не трябва ли next book да се въведе като променлива ? NextBook се слага веднага след while цикъла, за да може да преминава на всяка следваща, нали ? А когато е на 18 ред прехвърлянето на книгите не стига до този ред ? Ако правилно съм те разбрала.

Благодаря за изчерпателния отговор :) 

0
PetarIliev1 avatar PetarIliev1 73 Точки

nextBook може да е във цикъла или извън него, аз просто съм го изнесъл извън него.

 let nextBook = input.shift();

или

  •  let nextBook;

 

    while (counter < numBook) {

         nextBook = input.shift();

Няма значение и двете правят едно и също

-----------------

На 18-ти ред има прехвърляне на книга в твоят код (        nextBook = input.shift();     )

Само че след него няма проверка - >

  • if (nextBook == favouriteBook) {

            isBookFound = true;

            console.log(`You checked ${counter} books and found it.`)

            break;

        }

и това което става е че се връща на 11-ти ред ---- > let nextBook = input.shift();

и реално пропъска цяла книга.

Едниственото нещо което трябва да промениш в твоят код е да изтриеш 18-ти ред

0
B.Baleva avatar B.Baleva 6 Точки

Разбрах ! Много благодаря : )

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.