Нажимая на кнопку "Задать вопрос", я даю согласие на обработку персональных данных

Задать вопрос
Задать вопрос
  • Дано натуральное число х, вывести на экран все делители этого числа. И я написал программу, пойдёт ли она под данное условие, и если нет, то что нужно поменять:
    program zadacha;
    var n,i:integer;
    begin
    i:=1;
    while(i begin
    if (n mod i=0) then write(i);
    end;
    writeln('n');
    end.

    • 23 February 2021
    • Ответ оставил: Wani4kaa

    0. Ты никак не задаёшь n в программе. Тебе стоит хотя бы прочитать его: read(n);
    1. Что написано внутри условия цикла while? Если по твоему решению, должно быть "i <= n"
    2. Делители будут "прилипать" друг к другу, выводи так: write(i, ' ');
    3. Твой счётчик i не увеличивается, программа зациклится. После if'а вставь i := i + 1;

    Итоговый код:
    var n, i: integer;
    begin
    read(n);
    i := 1;
    while (i <= n) do
    begin
    if n mod i = 0 then write(i, ' ');
    i := i + 1;
    end;
    writeln('n');
    end.

    Есть, кстати, альтернативный способ поиска делителей. Выводить их он будет, правда, не в порядке возрастания.
    var n, i: integer;
    begin
    read(n);
    i := 1;
    while (i * i < n) do
    begin
    if n mod i = 0 then write(i, ' ', n div i, ' ');
    i := i + 1;
    end;
    if i * i = n then write(i, ' ');
    writeln('n');
    end.

    • НЕ НАШЛИ ОТВЕТ?
    Если вас не устраивает ответ или его нет, то попробуйте воспользоваться поиском на сайте и найти похожие ответы по предмету школьной программы: информатика.
    На сегодняшний день (15.10.2024) наш сайт содержит 16353 вопросов, по теме: информатика. Возможно среди них вы найдете подходящий ответ на свой вопрос.
  • Нажимая на кнопку "Ответить на вопрос", я даю согласие на обработку персональных данных

    Ответить на вопрос

Последние опубликованные вопросы

Определите в виде эссе личный уровень владения современными информационными технологиями. Опишите имеющиеся навыки работы в: - офисных программах (текстовый редактор, табличный процессор, построит... Зачем в C++ нужна библиотека stdio.h, и какова ее функция? составить блок- схему решения выражения (23+34)*57/3 ПАСКАЛЬ. Решите задачу с помощью строк. Пользователь водит слово - мама, и букву - м. Паскаль выводит количество этих самых букв из строки, которую мы ввели , то есть 2. Еще пример: Введите слово... Дам 20 баллов! Дано логическое выражение, зависящее от 6 логических переменных: X1 ∧ ¬X2 ∧ X3 ∧ ¬X4 ∧ X5 ∧ X6 Сколько существует различных наборов значений переменных, при которых выражение истин... Спасите!!!!!!!!!!!!!!!!!!!!!!!!!!!! Таблица в Microsoft access служит для …. данных (может быть несколько) а) автоматизации ввода б) ввода в) хранения Сколько битов в 20 ниблах Спасите!!!!!!!!!!!!!!!!!!!!!!!!!!!! Таблица в Microsoft access служит для …. данных (может быть несколько) а) автоматизации ввода б) ввода в) хранения Арбуз с точки зрения агронома, покупателя, художника Расставьте по убыванию: 1 Бит, 1байт, 1Кбайт, 1Мбайт, 1Гбайт, 1Тбайт ПОМОГИТЕ ПОЖАЛУЙСТА!!!)) Вводится трехразрядное двоичное число. Перевести это число в десятичную систему счисления. какие есть признаки заражения ПК?
*{ message }*