С++ Даю 20 баллов!!!
Нужно составить програму на C++
Остатки
Даны целые неотрицательные числа a, b, c, d, при этом 0 ≤ c < d.
Выведите в порядке возрастания все числа от a до b, которые дают остаток c при
делении на d.
В этой задаче нельзя использовать инструкцию if, должен быть только один цикл.
Входные данные
На вход подаются четыре строки, в каждой из которых написано по одному неотрицательному целому числу — a, b, c, d. Все числа не превосходят 2∗109, 0≤c
Выходные данные
Выведите ответ на задачу.
Примеры
Ввод 2 5 0 2 5 5 0 5
Вывод 2 4 5
Answers & Comments
#include <iostream>
using namespace std;
int main()
{
int a, b, c, d, i;
cin >> a >> b >> c >> d; //(ввод abcd)
i = a + (c - a % d); //(первое число из промежутка от a до b имеющее остаток c при делении на d)
while (i <= b)
{
cout << i; //(выводим все числа из промежутка от a до b имеющее остаток c при делении на d)
i += d; //(если к числу имеющее остаток c при делении на d прибавить d оно также будет давать остаток c)
}
}