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

Две программы на Паскале (файлы в формате pas или txt): одна программа через цикл While другая через цикл Repeat. Обе программы должны выдавать на экран все делители целого числа, введённого пользователем, а также их количество (делителей). Например, пользователь задал число 6. Обе программы должны вывести: "1 2 3 6; всего делителей - 4".

Показать ответ
Ответ:
karalina200215
karalina200215
26.09.2021 06:40

Я не могу загрузить файлы, но вот коды. Создай файлы и вставь

repeat_.pas:

program repeat_;

var n, k, counter: Integer;

begin

ReadLn(n);

k := 1;

counter := 0;

repeat

if (n mod k = 0) then

begin

counter += 1;

if n <> k then

Write(k, ' ')

else

Write(k, '; ');

end;

k += 1;

until n < k;

WriteLn('всего делителей - ', counter);

end.

while_.pas:

program while_;

var n, k, counter: Integer;

begin

ReadLn(n);

k := 1;

counter := 0;

while (k <= n) do

begin

if (n mod k = 0) then

begin

counter += 1;

if n <> k then

Write(k, ' ')

else

Write(k, '; ');

end;

k += 1;

end;

WriteLn('всего делителей - ', counter);

end.

0,0(0 оценок)
Ответ:
катарина68
катарина68
26.09.2021 06:40

Объяснение:

Программа для while

program whil;

var x,i,n:integer;

y:real;

 begin

   i:=1;

   n:=0;

   Writeln ('Введите число для которого необходимо определить делители: ');

   Read (x);

   WHILE  (i<=x) DO

       begin

             if (x mod i=0) then

             begin

               y:=x/i;

               n:=n+1;

           Writeln (n,' делитель числа',x,' : ',y );

             end;

               i:=i+1

             end;

             Writeln ('Число делителей числа', x, ' : ',n)

 end.

Программа для repeat

program repeats;

var x,i,n:integer;

y:real;

 begin

   i:=0;

   n:=0;

   Writeln ('Введите число для которого необходимо определить делители: ');

   Read (x);

     repeat

          i:=i+1;

       begin

             if (x mod i=0) then

             begin

               y:=x/i;

               n:=n+1;

            Writeln (n,' делитель числа',x,' : ',y );

             end;

                         end;

                 until i>=x;

                               Writeln ('Число делителей числа', x, ' : ',n)

           end.

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