Софтуерно Инженерство
Loading...
+ Нов въпрос
Meriam2 avatar Meriam2 3 Точки

OLD BOOKS - While Loop Exercise

Здравейте,

 

Задачата е old books от while loop exercise.

Това е моето решение - дава ми 88 точки, но като гледам единия вариант, в който не се намира книгата, изобщо не работи.. Моля за помощ!

 

using System;

namespace WhileLoop
{
    class Program
    {
        static void Main(string[] args)
        {
            string book = Console.ReadLine();
            int allBooks = int.Parse(Console.ReadLine());
            int counter = 0;
            bool isFound = false;
            
            string nextBook = Console.ReadLine();
            while (counter < allBooks)
            {
                nextBook = Console.ReadLine();

                if (nextBook == book)
                {
                    isFound = true;
                    counter++;
                    break;
                }

                counter++;
                isFound = false;
            }
            
            
            if (isFound == true)
            {
                Console.WriteLine($"You checked {counter} books and found it.");
            }
            else
            {
                Console.WriteLine("The book you search is not here!");
                Console.WriteLine($"You checked {counter} books.");
            }

        }
    }
}
 

Тагове:
0
Programming Basics
e_panova avatar e_panova 51 Точки
Best Answer

Здравей,

https://pastebin.com/X7GH8wDa  - Така кодът ти дава 100 точки.

Махнах брояча в if-a. Той не ти е нужен, защото ти трябва броят на книгите преди да намериш търсената книга.

Също така като декларираш променливата  nextBook, трябва да сложиш празен стринг, или направо да я декларираш в началото на while-цикъла. Така както си го направила ти, първо получаваш едно заглавие на книга, влизаш в while  и веднага получаваш следващото. А какво става с първото? Нито правиш проверка за него, нито го броиш.

Поздрави!

0
06/03/2019 07:11:49
Meriam2 avatar Meriam2 3 Точки

Много благодаря на всички! Това ми беше първата задача с while, но вече почнах да го схващам:)

0
KaterinaTaneva avatar KaterinaTaneva 9 Точки

здравей, https://pastebin.com/irgqEWLs това е решение на JS, дано ти помогне

0
Meriam2 avatar Meriam2 3 Точки

Благодаря, но пак не откривам грешката :(

0
KaterinaTaneva avatar KaterinaTaneva 9 Точки

премести  nextBook = Console.ReadLine(); вкрая на цикъла,така ми изглежда редно и имаш counter в if, който мисля е ненужен

0
gim13 avatar gim13 5 Точки

Въведи още първата книга да е вярното заглавие,

и ще си видиш грешката. Помисли и за брояча.

 

Поздрави,

Генади

0