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

ykim1337 ykim1337    3   30.05.2019 12:20    0

Ответы
Карандш Карандш  30.06.2020 12:45
То, что написал 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) Конец
ПОКАЗАТЬ ОТВЕТЫ
живууууу живууууу  30.06.2020 12:45
Var
chislo:integer;
begin
writeln('Введите число');
readln ( chislo);
if ( (chislo mod 11)=0) then
writeln ( 'делится')
else
writeln ( 'не делится');
readln;
readln
end.
вроде так
будут ошибки пиши
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика