Задать вопрос
31 января, 22:02

Написать на паскале программу на признак делимости, которая выводит, делится ли число на 11 или нет, с участием функции

+2
Ответы (2)
  1. 1 февраля, 00:01
    0
    Var

    chislo:integer;

    begin

    writeln ('Введите число') ;

    readln (chislo) ;

    if ((chislo mod 11) = 0) then

    writeln ('делится')

    else

    writeln ('не делится') ;

    readln;

    readln

    end.

    вроде так

    будут ошибки пиши
  2. 1 февраля, 00:16
    0
    То, что написал Alex - это не функция проверки признака делимости,

    а стандартная функция остатка от деления, которая тебе не подходит.

    Признак делимости на 11 такой. Нужно отдельно сложить цифры, стоящие на нечетных местах - 1, 3, 5, ..., до конца, и отдельно цифры, стоящие на четных местах - 2, 4, 6, ..., тоже до конца.

    Потом вычитаешь из большего числа меньшее. Если разность = 0 или делится на 11, то и все число делится на 11.

    Я паскаль плохо знаю, поэтому опишу только алгоритм.

    1) Вводим начальное число N.

    2) Объявляем массив M[length (N) ] длиной, равной количеству цифр числа.

    3) Делаем в цикле a : = N mod 10; M[i] : = a; N : = int (N / 10) ; i : = i+1;

    Продолжаем цикл до тех пор, пока N > 0.

    4) S1 : = 0; Цикл от 1 до length (N) с шагом 2: S1 : = S1 + A[i];

    5) S2 : = 0; Цикл от 2 до length (N) с шагом 2: S2 : = S2 + A[i];

    6) Raznost : = abs (S1 - S2) ;

    7) Если Raznost mod 11 = 0 тогда ответ ДА, иначе ответ НЕТ.

    8) Конец
Знаете ответ на вопрос?
Не уверены в ответе?
Правильный ответ на вопрос 👍 «Написать на паскале программу на признак делимости, которая выводит, делится ли число на 11 или нет, с участием функции ...» по предмету 📗 Информатика. Развернутая система поиска нашего сайта обязательно приведёт вас к нужной информации. Как вариант - оцените ответы на похожие вопросы. Но если вдруг и это не помогло - задавайте свой вопрос знающим оппонентам, которые быстро дадут на него ответ!
Искать готовые ответы