Это практика для отдельной более крупной программы, просто небольшой вывод на консоль, показывающий, сколько определенных значений используется. По какой-то причине, если я установлю окончательное значение while num на ноль, в консоли ничего не будет выводиться. Если я установлю его на 20, он выдаст, посчитает сотни и 20, но пропустит тот факт, что есть 50, потому что значение while не позволит ему go ниже 20. Я пытался, пока num>> = ноль также. При> нуле или> = я бы ожидал, что он будет считать 50 и вывести 4 100, 1 50 и 0 20. Я произвольно установил значение while на 10, и оно все равно дало 2 20 и сотни, но, установив на 1, оно больше не выводилось, так же, как и при установке на ноль. Прежде чем я смогу включить logi c в большую программу, которая имеет гораздо больше значений и возвратов, я думаю, что мне нужно понять, где я терплю неудачу. Я посмотрел на алгоритмы рекурсии и трекбэка, и они были немного выше того, чем я являюсь. Мне было интересно, смогу ли я использовать модуль тоже. Это неправильно, но мне больше всего интересно, почему это значение не позволяет себе быть установленным больше или равным нулю.
using System;
namespace dollars_back_test
{
class Program
{
static void Main(string[] args)
{
int num = 450, hundos = 0, fifties = 0, twenties = 0;
do
{
if (num > 100)
{
num -= 100;
hundos++;
}
else if (num > 50)
{
num -= 50;
fifties++;
}
else if (num > 20)
{
num -= 20;
twenties++;
}
} while (num > 20);
Console.WriteLine($"Dispensing {hundos} 100's, {fifties} 50's, {twenties} 20's.");
Console.ReadLine();
}
}
}