Программирование. Pascal ABC. div и mod


Чтобы посмотреть презентацию с оформлением и слайдами, скачайте ее файл и откройте в PowerPoint на своем компьютере.
Текстовое содержимое слайдов:

Пара слов о div и mod…Вычисления в Pascal-3 Оператор divОператор div выполняет целочисленное деление одного числа на другое.Так результат целочисленного деления17 div 5 = 3 (дробная часть при этом отбрасывается)24 div 4 = 648 div 200 = 0 (результат деления меньшего числа на большее будет равен 0)При записи оператора div с обеих сторон от него должен быть хотя бы один пробел
Оператор divИтак,Операция a div b осуществляет целочисленное деление целого a на целое b. Дробная часть при этом отбрасывается.Результат деления меньшего числа на большее будет равен 0Оба числа (a, b) и результат операции обязательно должны иметь целочисленный тип (integer). Пример задачиСколько лодок длиной d можно разместить вплотную друг к другу вдоль причала длиной L?program z;var L,d,r:integer;begin writeln('Введите длину причала: '); readln(L); writeln('Введите длину лодки: '); readln(d); r:=L div d; writeln('Количество лодок: ',r);end.
Оператор modОператор mod вычисляет остаток от деления одного числа на другое.17 mod 5 = 224 mod 4 = 0 (0 – проверка кратности)48 mod 200 = 48 (остаток при делении меньшего числа на большее будет равен меньшему числу)При записи оператора mod с обеих сторон от него должен быть хотя бы один пробел
Оператор modИтак,Операция a mod b осуществляет вычисление остатка от деление целого a на целое b. Если результат равен 0, то большее число кратно меньшемуРезультат операции меньшего числа на большее будет равен меньшему числуОба числа (a, b) и результат операции обязательно должны иметь целочисленный тип (integer). Пример задачиСколько из x яблок останется в корзине, если их разделить поровну среди n человек?program z;var x,n,r:integer;begin writeln('Введите количество яблок в корзине: '); readln(x); writeln('Введите количество людей: '); readln(n); r:=x mod n; writeln('Количество оставшихся яблок: ',r);end.
1237 div 43 и 1237 mod 431237 86 377 344 3343281237 div 431237 mod 43 ЗадачаСоставить программу нахождения суммы цифр трехзначного числа.Проблема:Компьютер не знает десятичной формы записи чисел, так для него совершенно неизвестно, сколько, например, в числе 368 сотен, десятков и единиц.(он любое число переводит на язык двух цифр: 0 и 1)Алгоритм: Нужно вычленить цифры единиц, десятков и сотен введенного числа и сложить их.
РешениеБудем использовать операции div и mod, используя то, что наша система счисления является десятичной (10).Например:368 mod 10 = 8 (последняя цифра числа!)x mod 10 = всегда равна последней цифре числа368 div 100 = 3 (первая цифра числа! (100=102))Если число четырехзначное, то div 1000, двухзначное, то div 10Как вычленить среднюю цифру?368 mod 100 = 68 (две последних цифры числа)368 div 10 = 36 (две первых цифры числа)
РешениеА решить проблему средней цифры трехзначного числа можно как раз двумя способами:368 mod 100 = 68, а 68 div 10 = 6!Таким образом: 368 mod 100 div 10 = 6Операции div и mod имеют одинаковый приоритет и будут выполнятся слева направо, то есть сначала вычисляем 368 mod 100 (68), а потом этот результат (68) целочисленно делим на 10 (6)или368 div 10 = 36, а 36 mod 10 = 6!Таким образом: 368 div 10 mod 10 = 6Какой способ использовать – выбор программиста.
Полное решение задачиprogram z;var x,a,b,c,s:integer;begin writeln('Вычисление суммы цифр числа.'); write('Введите трехзначное число: '); readln(x); a:=x div 100; c:=x mod 10; b:=x div 10 mod 10; s:=a+b+c; writeln('Сумма цифр числа ',x,' равна ',s);end.Цифра сотенЦифра единицЦифра десятков Задания1. Дан номер дня в году. Сколько полных недель прошло с начала года?2. Дано количество секунд, прошедших с начала суток. Сколько по отдельности часов, минут и секунд прошло с полуночи?3. Выведите цифры четырехзначного числа в обратном порядке (число наоборот).4.Сколько квадратов со стороной a поместится в прямоугольнике со сторонами x и y? Вычислите незаполненную площадь.

Приложенные файлы