В данной статье мы рассмотрим операторы mod и div, их применение при решении задач. Рассмотрим несколько примеров с решением, а также задачи для самостоятельного выполнения.
Успехов вам в программировании!!!
a:= 21; b:=8; s:=21 mod 8;
Переменная s будет равна 5.
a:= 21; b:=8; s:=21 div 8;
Переменная s будет равна 2.
Задача: определить, является ли число, введенное с клавиатуры, четным.
Чтобы ответить на этот вопрос нужно поделить число a с помощью mod на 2 (a mod 2) и сравнить это значение с нулем. Условие будет выглядеть так: a mod 2 = 0
var a:integer; begin readln(a); // вводим число if a mod 2 = 0 then writeln('введенное число - четное'); // если условие выполняется - выводим на экран сообщение end.
Итак, чтобы узнать: делится ли число a на число b без остатка, нужно воспользоваться условием:
Задача:умножить последнюю цифру числа на 10 и результат вывести на экран.
Чтобы поместить последнюю цифру числа a в некоторую переменную необходимо поделить это число с помощью mod на 10. Получим: b:=a mod 10 — в переменной b окажется последняя цифра числа.
var a,b,res:integer;
begin
readln(a);
b:= a mod 10; //присваиваем переменной b последнюю цифру числа a
res:=b*10; // умножаем b на 10
writeln(res); // выводим результат на экран
end.
Если мы хотим отделить 2-е последние цифры числа, то должны делить с помощью mod на 100; если 3 — на 1000 и т.д.
Чтобы узнать, оканчивается ли число a на цифру b необходимо воспользоваться условием:
Задача: если введенное с клавиатуры число оканчивается на 5 и делится на 7, то вывести «YES» иначе «NO»
var a:integer; begin readln(a); if (a mod 7 = 0) and (a mod 10 = 5) then writeln('YES') else writeln('NO'); end.
С помощью рассмотренных условий и цикла со счетчиком можно решить следующую задачу:
посчитать количество чисел, которые кратны 9 и оканчиваются на 5 в диапазоне от 1 до 500
var i, n:integer; begin for i:=1 to 500 do if (i mod 9 = 0) and (i mod 10 = 5) then n:=n+1; writeln('Количество чисел = ', n); end.
Задача: дано трехзначное число. Выяснить, является ли оно палиндромом («перевертышем»), т.е. таким числом, десятичная запись которого читается одинаково слева направо и справа налево.
Отделить первую цифру числа можно, поделив его с помощью div на 100.
Отделить последнюю цифру можно, поделив его с помощью mod на 10. Вторая цифра нам не нужна для решения задачи, т.к. от нее не зависит, будет ли число палиндромом.
var a, a1, a3:integer; begin readln(a); a1:=a div 100; a3:= a mod 10; if a1=a3 then writeln('Число ', a,' является палиндромом'); end.
Задачи для самостоятельного выполнения:
Настала пора написать серию мини-обучалок по решению задач ЕГЭ по информатике версии 2021 года. В…
Данная статья будет полезна для учителей информатики, которые занимаются программированием с детьми внеурочно. Опыт показывает, …
Рассмотрим набор наиболее часто встречающихся задач на программирование в школьном курсе информатики. Добавляйте свои задачи…
В прошлый раз мы разобрали первые две задачи школьного тура Всероссийской олимпиады школьников, проводимой в…
Закончился школьный тур Всероссийской олимпиады школьников. Разберем первую и вторую задачи тура, проводимого в московских…
Задача. В плацкартном вагоне 54 места, пронумерованных числами от 1 до 54. Вагон разбит на 9…
View Comments
Спасибо. Толковая и точная информация. Использую при обучении детей!!!!