Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.79/82: Рейтинг темы: голосов - 82, средняя оценка - 4.79
0 / 0 / 0
Регистрация: 09.09.2014
Сообщений: 20
1

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

10.10.2014, 17:25. Просмотров 15828. Ответов 7
Метки нет (Все метки)

Напишите программу, которая вводит четыре натуральных числа (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
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.10.2014, 17:25
Ответы с готовыми решениями:

Найти элементы массива, которые при делении на 7 дают в остатке 1, 2 или 5
Здравствуйте! Пожалуйста помогите мне написать код к заданию: Дан одномерный массив А целых чисел...

Определить количество чисел, которые при делении на 7 дают в остатке 3
Даны натуральные числа a1, a2, a3, a4. а) верно ли, что одно число положительно б) Определить...

Составить программу поиска трехзначных чисел которые при делении на 47 дают в остатке 43
Составить программу поиска трехзначных чисел которые при делении на 47 дают в остатке 43!! ...

Переписать в файл G те элементы файла F, которые при делении на 5 дают в остатке 1 или 4
Создать файл F из целых чисел. Переписать в файл G те элементы файла F, которые при делении на 5...

7
охотник
1010 / 534 / 650
Регистрация: 29.09.2014
Сообщений: 1,083
10.10.2014, 22:38 2
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
var a,b,c,d:integer;
    k:integer;
    i:longint;
begin
  assign(input,'input.txt');reset(input);
  assign(output,'output.txt');rewrite(output);
  readln(a,b);
  readln(c,d);
  k:=-1;
  i:=10000;
  while i<100000 do
     begin
        if (i mod a = b) and (i mod c = d)
         then
          begin
           write(i,' ');
           inc(k)
          end;
        inc(i)
     end;
  if k=-1 then write(k)
end.
0
Эксперт Pascal/Delphi
2348 / 1269 / 1481
Регистрация: 29.08.2014
Сообщений: 4,579
11.10.2014, 08:17 3
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var
  a,b,c,d:integer;
  i,j:longint;
begin
  repeat
    readln(a,b);
    readln(c,d);
    j:=10000;
    if (a=0) or (c=0) then writeln('a,c must be greater than zero!');
  until (a>0) and (c>0);
  for i:=10000 to 100000 do
    if (i mod a=b) and (i mod c=d) then write(i,'  ') else inc(j);
  if j>100000 then writeln('-1');
  readln;
end.
0
охотник
1010 / 534 / 650
Регистрация: 29.09.2014
Сообщений: 1,083
11.10.2014, 08:44 4
Цитата Сообщение от Joy Посмотреть сообщение
Pascal
1
if (a=0) or (c=0) then writeln('a,c must be greater than zero!');
по условию чИсла натуральные
0
Эксперт Pascal/Delphi
2348 / 1269 / 1481
Регистрация: 29.08.2014
Сообщений: 4,579
11.10.2014, 08:54 5
по условию 0 ≤ b ≤ a и 0 ≤ d ≤ c допускается равенство 0! и 0 входит в расширенное множество натуральных чисел
0
охотник
1010 / 534 / 650
Регистрация: 29.09.2014
Сообщений: 1,083
11.10.2014, 09:06 6
Цитата Сообщение от Joy Посмотреть сообщение
по условию 0 ≤ b ≤ a и 0 ≤ d ≤ c допускается равенство 0! и 0 входит в расширенное множество натуральных чисел
уговорили)
у Вас цикл должен быть до 99999, иначе возможен вывод шестизначного числа
0
Эксперт Pascal/Delphi
2348 / 1269 / 1481
Регистрация: 29.08.2014
Сообщений: 4,579
11.10.2014, 09:08 7
Согласен, не подумал
0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
5401 / 3235 / 2375
Регистрация: 22.11.2013
Сообщений: 9,129
11.10.2014, 11:57 8
В сухом остатке, с выводом -1 и в случае неправильных входных данных:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
const
  rb=10000; re=rb*10-1;
  s: array [Boolean] of String[1]=('',' ');
var
  a, b, c, d, k: Integer;
  i: Longint;
begin
  Assign(input,'input.txt'); Reset(input);
  Assign(output,'output.txt'); Rewrite(output);
  ReadLn(a,b); ReadLn(c,d); {k:=0;}
  if (a>0) and (b>=0) and (c>0) and (d>=0) and (b<a) and (d<c) then begin
    for i:=rb to re do
      if (i mod a=b) and (i mod c=d) then begin
        Write(s[k>0],i); Inc(k);
      end;
  end;
  if k=0 then Write(-1);
  {WriteLn;}
  Close(input); Close(output);
end.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
11.10.2014, 11:57

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Поиск четырехзначных чисел, которые при делении на 133 дают в остатке 125, а при делении на 134 - 111
2.Составить программу поиска четырехзначных чисел которые при делении на 133 дают в остатке 125.а...

Найти все числа, которые при делении на a дают остаток b, а при делении на b дают в остатке a
Ввести два натуральных числа a и b, на промежутке от 1 до N найти все числа, которые при делении на...

Найти трехзначные числа, которые при делении на 47 дают в остатке 43
Составить программу поиска трехзначных чисел, которые при делении на 47 дают в остатке 43, а при...

Вывести на экран натуральные числа от 1 до 100, которые при делении на 6 дают в остатке 4, и их количество
70. Вывести на экран натуральные числа от 1 до 100, которые при делении на 6 дают в остатке 4, и их...


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

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

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