Вопрос Решение задач C++

Начинающий
Статус
Оффлайн
Регистрация
12 Дек 2020
Сообщения
67
Реакции[?]
10
Поинты[?]
0
Помогите пожалуйста решить задачу при помоще цикла while. Уже всю голову сломал,но так и не понял,как это делается... Если сможете,объясните решение по брасткиScreenshot_4.png
 
Продавец
Статус
Оффлайн
Регистрация
28 Окт 2019
Сообщения
1,153
Реакции[?]
302
Поинты[?]
3K
Ну вводишь переменную n
Счетчик
И количество монет какую-либо переменную.
Делаешь цикл while с условием выполнения ,что монет больше 0
И присваиваешь переменной монет разницу ее текущего значения и n
Увеличивая счетчик на 1
 
Начинающий
Статус
Оффлайн
Регистрация
12 Дек 2020
Сообщения
67
Реакции[?]
10
Поинты[?]
0
Ну вводишь переменную n
Счетчик
И количество монет какую-либо переменную.
Делаешь цикл while с условием выполнения ,что колво дней больше 0
И присваиваешь переменной монет разницу ее текущего значения и n
Увеличивая счетчик на 1
Можно код? Не совсем понял:angry:
 
Продавец
Статус
Оффлайн
Регистрация
28 Окт 2019
Сообщения
1,153
Реакции[?]
302
Поинты[?]
3K
Участник
Статус
Оффлайн
Регистрация
5 Окт 2017
Сообщения
784
Реакции[?]
173
Поинты[?]
11K
C++:
int days, n;
const int coins = 30;

std::cout<<"Enter n";
std::cin>>n;
while(coins > 0)
{
days++;
coins-=n;
}
std::cout << days;
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
12 Дек 2020
Сообщения
67
Реакции[?]
10
Поинты[?]
0
Продавец
Статус
Оффлайн
Регистрация
28 Окт 2019
Сообщения
1,153
Реакции[?]
302
Поинты[?]
3K
Начинающий
Статус
Оффлайн
Регистрация
12 Дек 2020
Сообщения
67
Реакции[?]
10
Поинты[?]
0
Участник
Статус
Оффлайн
Регистрация
5 Окт 2017
Сообщения
784
Реакции[?]
173
Поинты[?]
11K
Начинающий
Статус
Оффлайн
Регистрация
12 Дек 2020
Сообщения
67
Реакции[?]
10
Поинты[?]
0
В начале int days = 0 сделай
И значение coins необязательно вводить пользователю. Достаточно также присвоить этой переменной значение, но уже присвоить не 0, а 30.
Она ,работает как я понял так: день прибавился, из коинс вычитываем n, день прибавился из конинс вычитываем n, и так пока, коинс не дойдут до нуля 1627063937924.png
 
Участник
Статус
Оффлайн
Регистрация
5 Окт 2017
Сообщения
784
Реакции[?]
173
Поинты[?]
11K
Она ,работает как я понял так: день прибавился, из коинс вычитываем n, день прибавился из конинс вычитываем n, и так пока, коинс не дойдут до нуля Посмотреть вложение 162442
Всё верно, но есть одна небольшая поправка.
Пока coins будет больше 0, цикл будет работать. Если это условие перестанет выполняться, и coins станет равно нулю или значению меньше 0, то цикл прекратит свою работу.

Значение монет может уйти в минус, так как n нефиксированная, и нельзя предугадать на этапе компиляции, какое будет значение n.
Лучше сделать проверку на то, в минусе ли монеты. Если да, то присвоить переменной значение 0. И тогда монеты не будут в минусе.
 
Последнее редактирование:
Начинающий
Статус
Оффлайн
Регистрация
12 Дек 2020
Сообщения
67
Реакции[?]
10
Поинты[?]
0
Всё верно, но есть одна небольшая поправка.
Пока coins будет больше 0, цикл будет работать. Если это условие перестанет выполняться, и coins станет равно нулю или значению меньше 0, то цикл прекратит свою работу.
Всё верно, но есть одна небольшая поправка.
Пока coins будет больше 0, цикл будет работать. Если это условие перестанет выполняться, и coins станет равно нулю или значению меньше 0, то цикл прекратит свою работу.

Значение монет может уйти в минус, так как n нефиксированная, и нельзя предугадать на этапе компиляции, какое будет значение n.
Лучше сделать проверку на то, в минусе ли монеты. Если да, то присвоить переменной значение 0. И тогда монеты не будут в минусе.
Спасибо за ответ!
 
Олдфаг
Статус
Оффлайн
Регистрация
18 Фев 2019
Сообщения
2,826
Реакции[?]
1,853
Поинты[?]
24K
Помогите пожалуйста решить задачу при помоще цикла while. Уже всю голову сломал,но так и не понял,как это делается... Если сможете,объясните решение по брасткиПосмотреть вложение 162433
Странная задача реализации алгоритма через цикл While. Лучшим решением стала бы простая формула 29 / n + 1.
 
Сверху Снизу