М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
adolshinavika
adolshinavika
22.11.2021 14:41 •  Информатика

решить задачу. Желаьтельно на питоне или С++, номожно и на паскале ABC.NET. НОД и НОК

Петя задумал два натуральных числа – a и b, a ≤b, и сообщил Саше числа c и d, c=НОД(a,b) d=НОК(a,b) (c∙d<2 000 000 000). Ваша программа по введенным c и d должна найти числа a и b (если это возможно – Петя мог посчитать c и d неправильно). Если a и b определяются неоднозначно, необходимо вывести все возможные пары a и b (по одной в строке).

Формат ввода
Вводятся числа c и d через пробел.

Формат вывода
Выводятся пары a и b по одной в строке или сообщение Пара не существует.

Ввод
2 60
Вывод
2 60
4 30
6 20
10 12
Ввод
1997 25962
Вывод
Пара не существует

👇
Ответ:
anma2
anma2
22.11.2021

Python 3.9

Объяснение:

c, d = map(int, input("Input c d: ").split())

a=int(c/c)

b=int(d/c)

dem=int(d/c)

if c*d<2000000000:

   if d%c==0:

       print(a*c, b*c)      

       for i in range(dem):

           b=int(d/c)

           for j in range(dem,0,-1):  

               if a<=b:

                   if a*b==dem:

                       if b%a!=0:

                           print(a*c, b*c)

                   b=b-1

               else:

                   break

           a=a+1

   else:

       print("Пара не существует")

4,7(97 оценок)
Открыть все ответы
Ответ:
adelina110
adelina110
22.11.2021

var

 A: array [1..3, 1..5] of Integer;

 i, j: Integer;

 s: Real;

begin

 Randomize;

 WriteLn ('Массив:');

 for i := 1 to 3 do begin   // заполнение массива случайными значениями и вывод для просмотра

   for j := 1 to 5 do begin

     A [i, j] := Random (22) - 11;

     Write (A [i, j], ' ');

   end;

   Writeln;

 end;

 for i := 1 to 3 do begin   // замена элементов с четной суммой индексов на 555

   for j := 1 to 5 do begin

     if (i + j) mod 2 = 0 then

       A [i, j] := 555;

   end;

 end;

 WriteLn;

 WriteLn ('Результат: ');   // вывод результата

 for i := 1 to 3 do begin

   for j := 1 to 5 do begin

     Write (A [i, j], ' ');

   end;

   Writeln;

 end;

end.

4,5(7 оценок)
Ответ:
denisDergunov
denisDergunov
22.11.2021

var

 A: array [1..3, 1..5] of Integer;

 i, j: Integer;

 s: Real;

begin

 Randomize;

 WriteLn ('Массив:');

 for i := 1 to 3 do begin   // заполнение массива случайными значениями и вывод для просмотра

   for j := 1 to 5 do begin

     A [i, j] := Random (22) - 11;

     Write (A [i, j], ' ');

   end;

   Writeln;

 end;

 for i := 1 to 3 do begin   // замена элементов с четной суммой индексов на 555

   for j := 1 to 5 do begin

     if (i + j) mod 2 = 0 then

       A [i, j] := 555;

   end;

 end;

 WriteLn;

 WriteLn ('Результат: ');   // вывод результата

 for i := 1 to 3 do begin

   for j := 1 to 5 do begin

     Write (A [i, j], ' ');

   end;

   Writeln;

 end;

end.

4,5(57 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ