После встречи с друзьями Петя решил написать игру, в которой пользователь вводит число N, а затем название дня недели, который будет через N дней. Если ответ неверный, программа должна выводить сообщение «Ответ неверный! Попробуй снова.» до тех пор, пока пользователь не введет верный день недели. В конце программа должна вывести сообщение: «Молодец! Количество попыток: K.» (K − количество попыток, сделанных пользователем).
Помогите Пете написать игру.
Формат ввода:
Вводится одно натуральное число N, не превышающее 1000000000.
Далее программе на вход подаются строки (названия дней недели: понедельник, вторник, среда, четверг, пятница, суббота или воскресенье), пока не введется нужная.
Формат вывода:
Программа должна выводить сообщение: «Ответ неверный! Попробуй снова.», если введённый день недели неверный.
После ввода верного дня недели программа должна вывести сообщение: «Молодец! Количество попыток: K.» (K − количество попыток, сделанных пользователем).
Для примера:
Ввод Результат
2
вторник
пятница
четверг
среда
Ответ неверный! Попробуй снова.
Ответ неверный! Попробуй снова.
Ответ неверный! Попробуй снова.
Молодец! Количество попыток: 4.
Ответ:(штрафной режим: 10, 20, ... %)
Python
Помогите написать код в python
Здесь категория Python, а не С++. На Питоне так, вроде всё сходится
from datetime import datetime
now = datetime.now()
d = datetime.weekday(now)
w = [ 'понедельник', 'вторник', 'среда', 'четверг', 'пятница', 'суббота', 'воскресенье']
k = 1
try:
while True:
n = int(input('количество дней '))
res1 = input('какой будет день недели? ').lower()
res2 = w[(n - d) % 7]
if res1 == res2:
print(f'Молодец! Количество попыток: {k}')
break
else:
print('Ответ неверный! Попробуй снова')
k += 1
except ValueError:
print('неверный ввод')
Александр Куликов
Там еще текущую неделю нужно учитывать, забыл добавить это условие
Яша(Филипп) Щекин
Получил такой результат
Получил такой результат
Яша(Филипп) Щекин
Нет, при получении неверного результата он начинает опрашивать с кол-ва дней, если n = int(input()) вытащить из While то все работает отлично. Спасибо за помощь!
# Initialise variables
n = 0
attempts = 0
# Get user input
n = int(input("Введите день недели: "))
# Calculate the day of the week
day = (n % 7)
# Main loop
while True:
answer = input("Название дня недели" + str(n) + " ? ")
# Check if the answer is correct
if answer == day:
print("Всё верно: " + str(attempts))
break
else:
print("Неверно.Повтори")
attempts += 1
Это примерный код
n = 0
attempts = 0
# Get user input
n = int(input("Введите день недели: "))
# Calculate the day of the week
day = (n % 7)
# Main loop
while True:
answer = input("Название дня недели" + str(n) + " ? ")
# Check if the answer is correct
if answer == day:
print("Всё верно: " + str(attempts))
break
else:
print("Неверно.Повтори")
attempts += 1
Это примерный код
#include <iostream>
#include <string>
using namespace std;
int main() {
int N;
cout << "Введите число N: ";
cin >> N;
int attempts = 0;
while (true) {
string day;
cout << "Введите день недели, который будет через N дней: ";
cin >> day;
if (day == "понедельник" && N % 7 == 0 || day == "вторник" && N % 7 == 1 || day == "среда" && N % 7 == 2 || day == "четверг" && N % 7 == 3 || day == "пятница" && N % 7 == 4 || day == "суббота" && N % 7 == 5 || day == "воскресенье" && N % 7 == 6) {
cout << "Молодец! Количество попыток: " << attempts + 1 << endl; // +1, чтобы учитывалась посл. попытка.
break;
} else {
cout << "Ответ неверный! Попробуй снова." << endl;
attempts++;
}
}
return 0;
}
Не везде расставил пробелы и запятые,так что сорян
#include <string>
using namespace std;
int main() {
int N;
cout << "Введите число N: ";
cin >> N;
int attempts = 0;
while (true) {
string day;
cout << "Введите день недели, который будет через N дней: ";
cin >> day;
if (day == "понедельник" && N % 7 == 0 || day == "вторник" && N % 7 == 1 || day == "среда" && N % 7 == 2 || day == "четверг" && N % 7 == 3 || day == "пятница" && N % 7 == 4 || day == "суббота" && N % 7 == 5 || day == "воскресенье" && N % 7 == 6) {
cout << "Молодец! Количество попыток: " << attempts + 1 << endl; // +1, чтобы учитывалась посл. попытка.
break;
} else {
cout << "Ответ неверный! Попробуй снова." << endl;
attempts++;
}
}
return 0;
}
Не везде расставил пробелы и запятые,так что сорян
Андрей Семенюк
ооо родной С++ вспомнила.
n=int(input())
k=1
day=1
day=(day+n)%7-1
rez=''
if day==0:
rez='понедельник'
elif day==1:
rez='вторник'
elif day==2:
rez='среда'
elif day==3:
rez='четверг'
elif day==4:
rez='пятница'
elif day==5:
rez='суббота'
elif day==6:
rez='воскресенье'
while True:
answer=input()
if answer==rez:
print(f'Молодец! Количество попыток: {k}.')
break
else:
k+=1
print('Ответ неверный! Попробуй снова.')
k=1
day=1
day=(day+n)%7-1
rez=''
if day==0:
rez='понедельник'
elif day==1:
rez='вторник'
elif day==2:
rez='среда'
elif day==3:
rez='четверг'
elif day==4:
rez='пятница'
elif day==5:
rez='суббота'
elif day==6:
rez='воскресенье'
while True:
answer=input()
if answer==rez:
print(f'Молодец! Количество попыток: {k}.')
break
else:
k+=1
print('Ответ неверный! Попробуй снова.')
Похожие вопросы
- Помогите написать код на python(только без def)
- Помогите написать Код в Python
- Помогите написать код на python, пожалуйста.
- Можете помочь! Нужен код для Python, что бы он заменял определенный текст в файле
- Помогите написать программу на Python, моя версия кода на скрине, вроде всё работает, но автопроверка не проходит.
- Помогите с кодом в python
- Напишите код на Python для Discord.
- Помогите написать программу на python
- Помогите написать код в питон
- Помогите написать код на питоне