Помогите пожалуйста разобраться с while | SoloLearn: Learn to code for FREE!

+4

Помогите пожалуйста разобраться с while

второй день не могу решить код в цикле while, а именно решить практику "нажмите на курок". Уже просто мысли иссякли.

5/9/2021 6:22:59 AM

Andrey Zinin

47 Answers

New Answer

+2

... i = 4 #устанавливаем количество выстрелов, заряжаем винтовку while i >0: ... ... i = i - 1

+2

Да, все почти правильно. Только инпут должен быть в цикле, ну и значение с abc надо не присваивать '=', а сравнивать '=='. == это оператор сравнения. Потом, в инпуте у нас лежат строковые данные. Как они у нас обозначаются? И каким образом мы эту строку должны сравнить с abc?

+2

Верю... бывает ступор настает и никак. Я так с задачей "числа Фибоначчи" мучился. Если не идет решение, можно на пару дней отложить. Пусть голова отдохнет и потом с новыми силами в бой!

+2

While с английского переводится как: "пока". Значит, пока условие true (истинно) цикл будет продолжаться до тех пор, пока условие не будет false. Например: 1. while(1 == 1) // запустит бесконечный цикл while(1 == 0) // не запустит данный цикл 2. int i = 0; while(i < 10) // читай как: пока i меньше 10, то делай вот это { Console.WriteLine("Переменная name в цикле") i++; }

+2

Спасибо огромное за подробное обьяснение, тоже долго не мог понять где ошибка, оказывается input нужно было занксти в цикл, а я не догодался и не понимал почему перкменную с очками код не использовал 😅

+2

Что не понял? Спрашивайте!

+1

I haven't done anything yet ( I just can't understand the logic of this task. I understand that there is a function 'input' but what to do I do not understand The task is as follows: write the code using the while function. You need to create a game where the player tries to shoot at an object and can hit (hit) or miss (miss) . At the beginning, the player has 100 points, a hit adds 10 points to the player's score, and a miss takes away 20 points. Your program should take the result of 4 actions as input ("hit" or "miss"), then calculate and output the remaining player points. Example of Input hit hit miss hit Example Of Output Data 110

+1

Привет! 1. Инпут висит в воздухе. Ему не назначена ни одна переменная. 2. Для цикла while необходим счетчик. Что значит 1==1? Читаем внимательно условие: 1. используйте цикл while для приема ввода значений. Как это сделать? 2. Затем нам в цикле надо рассчитать наше количество очков, в зависимости от промахов и попаданий. 3. Вывести количество наших очков

+1

Успокойся, сейчас все получится. Мыслишь в правильную сторону

+1

Для while нужен счетчик итераций. Это ленивый цикл и тебе приходится ему самому тыкать носом что ему делать. Итак... я тебе показываю как сделать while, ты согласно своим новым мыслям переделываешь программу

+1

А hit и miss можно вообще не использовать, просто их удалить, если они только усложняют понимание. Вместо этого можно просто к количеству очков или добавлять 10, либо вычитать 20

+1

И их не 4 разных значения, а только 2. Просто они повторяются в разных комбинациях 4 раза

+1

Ну что ты делаешь? abc у тебя уже изначально строка! Не надо трогать эту переменную. Потом, нам надо с р а в н и т ь, что лежит в abc с заведомо известным значением. Тебе надо повторить, как выглядит оператор сравнения. У нас есть коробка с надписью 'abc', в ней лежит неизвестно что, но мы точно знаем что строка и нам надо это значение сравнить с hit или miss

+1

Посказка: самый первый урок по питону. Как пишется? (фраза Python is awesome!)

+1

Да, проверяй. Только пробелы ставь в конструкции if-else

+1

Боже мой, спасибо Вам большое! Да, наконец то заработало! В других интерпретаторах к сожалению пока нет, но я хотя бы задание сделал)) ещё раз спасибо!

+1

"Боже мой" - так меня еще никто не называл... 😆 приятно...

+1

Да обязательно ознакомлюсь) Вы правда очень помогли, я два дня честно пытался понять логику. До этого вообще не возникало затруднений. Спасибо!!!

+1

Можно начать с алгоритма. Написать на бумаге последвательность действий своими словами, затем алгоритм переписать в программный код

+1

Спасибо вам огромное! В этой задаче в ступор вошла, оромное спасибо за разъяснения