Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Pythonbro
0 / 0 / 0
Регистрация: 29.01.2015
Сообщений: 4
#1

Найти все пятизначные числа, которые при делении на A дают в остатке B, а при делении на C дают в остатке D - C++

03.02.2015, 13:04. Просмотров 1576. Ответов 4
Метки нет (Все метки)

C++
Напишите программу, которая вводит четыре натуральных числа (a, b, c и d) и находит все пятизначные числа, которые при делении на a дают в остатке b , а при делении на c дают в остатке d .

Входные данные
Первая входная строка содержит два натуральных числа, разделённые пробелами: a и b. Вторая строка содержит натуральные числа c и d, также разделённые пробелом. Гарантируется, что 0 ≤ b ≤ a и 0 ≤ d ≤ c.

Выходные данные
Программа должна вывести в одну строчку через пробел все пятизначные натуральные числа, которые при делении на a дают в остатке b, а при делении на c дают в остатке d . Если таких чисел нет, программа должна вывести число -1.


Примеры
входные данные
133 125
134 111
выходные данные
19809 37631 55453 73275 91097
пробовал, но никак логику решения не могу понять(
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
03.02.2015, 13:04
Я подобрал для вас темы с готовыми решениями и ответами на вопрос Найти все пятизначные числа, которые при делении на A дают в остатке B, а при делении на C дают в остатке D (C++):

Найти числа, которые при делении на 47 дают в остатке 43, а при делении на 43 дают в остатке 47 - C++
Мне нужно написать программу в Dev-C++ для поиска трехзначных чисел, которые при делении на 47 дают в остатке 43, а при делении на 43 дают...

Найти числа из заданного интервала, которые при делении на число d дают в остатке z - C++
в данном интервале (a;b) найти все натуральные числа, которые при деление на натуральное число d, дают в остатке натуральное число z.

Найти количество элементов матрицы, которые при делении на 5 дают в остатке 1 - C++
дана матрица размера 3х3.найти количество элементов матрицы,которые при делении на 5 дают в остатке 1.борланд си плюс плюс.спасибо заранее

Матрицы: найти количество элементов,которые при делении на 5 дают в остатке 1 - C++
дана матрица размера 3х3.найти количество элементов матрицы,которые при делении на 5 дают в остатке 1.борланд си плюс плюс.спасибо заранее

Вычислить количество двузначных элементов массива, которые при делении на 6 дают в остатке 1 - C++
Привет!Помогите,пожалуйста с решением задачи,ничего не выходит написать толкового. Сама задача: Дано матрицу с элементами целого типа....

В строке символов установить пробелы вместо символов,номера позиций которых при делении на 6 дают в остатке 3 - C++
и вот 2 задачка. В заданной строке символов установить пробелы вместо символов,номера позиций которых при делении на 6 дают в остатке 3. ...

4
Dimension
Dimension
573 / 442 / 136
Регистрация: 08.04.2014
Сообщений: 1,709
Завершенные тесты: 1
03.02.2015, 13:15 #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
int main()
{
    int a, b, c, d, f = 0;
    cin >> a >> b >> c >> d;
    for (int i = 1e4; i < 1e5; i++){
        if (i%a == b && i%c == d){
            cout << i << " ";
            f = 1;
        }
    }
    if (!f)cout << -1;
    return 0;
}
1
Prorok2323
34 / 126 / 43
Регистрация: 04.12.2013
Сообщений: 550
03.02.2015, 13:28 #3
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
int main() {
   
    int a, b, c, d, i = 10000;
    cout << "Введите a и b: " << endl; cin >> a >> b;
    cout << "Введите c и d: " << endl; cin >> c >> d;
    bool isExist = false;
    while (i < 100000) {
        if (i % a == b && i % c == d) { isExist = true; cout << i << " "; }
        i++;
    }
    if (!isExist) cout << "-1\n";
    
    return 0;
}
0
Байт
Эксперт C
17714 / 11735 / 1871
Регистрация: 24.12.2010
Сообщений: 23,535
03.02.2015, 14:53 #4
Dimension, Prorok2323, Чего это вы все по единичке прибавляете?
C++
1
2
3
m = (10000/a)*a+b
for(i=m; i<100000; i+=a) 
  if (i%c==d) cout << i << endl;
Добавлено через 3 минуты
Простите, маленький ньюанс в определении m
C++
1
2
m = (10000/a)*a;
if (10000%a != 0) m+= b;
0
vndtta
90 / 67 / 13
Регистрация: 17.10.2011
Сообщений: 235
Завершенные тесты: 1
03.02.2015, 15:25 #5
а если так?
C++
1
int m=(9999+a-b)/a*a +b
0
03.02.2015, 15:25
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
03.02.2015, 15:25
Привет! Вот еще темы с ответами:

Найти те члены последовательности, которые при делении на 5 дают остаток 1 - C++
Даны натуральные числа n , g1 , ... ,gn. Найти те члены gi последовательности g1 , ... , gn ,которые при делении на 5 дают остаток 1. ...

Найти те члены последовательности, которые при делении на 7 дают остаток 1, 2, 5. - C++
Не знаю, как сделать задачу, с циклом Дано натуральные числа n: q1, q2.....qn. Найти те члены последовательности, которые при делении на...

Все элементы, которые при целочисленном делении на N дают ненулевое значение, увеличить на M - C++
И ещё одну) Кому не сложно) Ввести двумерный массив {A}_{NxM}. Все элементы, которые при целочисленном делении на N дают ненулевое...

Найти и напечатать те из чисел, которые при делении на 7 дают остаток 1, 2 или 5 - C++
Даны натуральные числа от 35 до 87. Найти и напечатать те из них, которые при делении на 7 дают остаток 1, 2 или 5.


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru