В
Все
М
Математика
О
ОБЖ
У
Українська мова
Х
Химия
Д
Другие предметы
Н
Немецкий язык
Б
Беларуская мова
М
Музыка
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
У
Українська література
Р
Русский язык
Ф
Французский язык
П
Психология
О
Обществознание
А
Алгебра
М
МХК
Г
География
И
Информатика
П
Право
А
Английский язык
Г
Геометрия
Қ
Қазақ тiлi
Л
Литература
И
История
Polk1512
Polk1512
25.07.2021 01:48 •  Информатика

Даны два числа. определить какой число имеет больше делителей. в паскале цикл

Показать ответ
Ответ:
belozerovyurik
belozerovyurik
12.06.2020 00:57

var a,b,i,nda,ndb:integer;

begin

   readln(a,b);

   nda := 0;

   ndb := 0;

   for i := 1 to a do

      if (a mod i = 0) then inc(nda);

   for i := 1 to b do

      if (b mod i = 0) then inc(ndb);

   if (nda > ndb) then

      writeln(a, ' has more divisors than ', b)

   else if (ndb > nda) then

      writeln(b, ' has more divisors than ', a)

   else

      writeln(a, ' and', b, ' has equal number of divisors')

end.

0,0(0 оценок)
Ответ:
лёха562
лёха562
12.06.2020 00:57

var
a,b,i,n,k,z:integer; {k, z - количество делителей числа}

BEGIN
readln(a,b); {Cчитаем эти два числа}

k := 1;
z := 1;

if a > b then
n := a
else
n := b;

for i := 2 to n do
begin
if (a >= i) and (a mod i = 0) then
k := k + 1;
if (b >= i) and (b mod i = 0) then
z := z +1
end;

if k = z then
write('Одинаковое количество делителей')
else
if k > z then
write('Число a имеет больше делителей')
else
write('Число b имеет больше делителей')
END.

 

Если что непонятно, как получается - пиши.

0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота