Два пользовательских ввода должны быть разделены на 5, чтобы программа могла завершиться - PullRequest
0 голосов
/ 06 мая 2018

Текст задания: пользователю нужно вводить цифры, пока число, которое можно разделить на 5, не будет введено два раза. Числа, которые можно разделить на 3, сбросят счетчик. Было бы здорово, если бы вы могли мне помочь, я новичок в этом.

int a;
int b;
int counter = 0;
do
{
    Console.WriteLine("Enter number");
    a = int.Parse(Console.ReadLine());
    Console.WriteLine("Enter number");
    b = int.Parse(Console.ReadLine());
    counter++; 
    // - Not sure how to set up counter to count a and b together
    // when user enter a and b it counts as 1 not 2? 

    if (a % 3 == 0 || b%3==0)
    {
        Console.WriteLine("Counter is reseting");
        counter = 0;
    }


} while (a % 5 != 0 && b % 5 != 0);

Console.WriteLine( counter);

Моя проблема: Это выводит меня из цикла, когда я ввожу один раз число, разделенное на 5, и не хочет, чтобы я вводил его дважды.

Было бы замечательно, если у кого-то есть предложение или что-то в этом роде. Спасибо!

1 Ответ

0 голосов
/ 06 мая 2018

Если я правильно понял, вы хотите продолжить зацикливание, если оба значения не делятся на 5. Поэтому ваша логика в окончательном WHILE должна быть:

WHILE( A_is_not_dividable_by_5 OR B_is_not_dividable_by_5 )

или

while( a % 5 != 0 || b % 5 != 0 )

Обратите внимание на ИЛИ, а не на И

Надеюсь, что поможет

...