Автор: Виктор Трофимов, МОУ гимназия №5, г. Волгодонск, Ростовская обл.
В Паскале существует возможность использования трех методов определения кратности числа.
1. С помощью оператора div (целоисчисленное деление). Как это работает?
x := 10 div 2 (переменная x получит значение 5; процессор вычисляет пример 10 / 2 и выдает результат 5)
x := 10 div 3 (переменная x получит значение 3; вычисляется 10 / 3 = 3,33 и отбрасывается дробная часть, такова природа работы оператора div)
x := 10 div 4 (переменная x получит значение 2; 10 / 4 = 2,5 – и опять отбрасывается дробная часть).
2. С помощью оператора mod (остаток от деления).
Тут и понятно, остаток от деления числа, которое полностью делится на делитель, будет равен нулю.
x := 10 mod 2 (переменная x получит значение 0; процессор вычисляет по формуле 10 – ((10 div 2) * 2) = 0, то есть оператор mod возвращает пользователю остаток, который получится в результаты вычитания из делимого числа разницы между первым в сторону уменьшения делящимся нацело на делитель… эмм, надеюсь, понятно. Еще на примерах:
x := 10 mod 3 (переменная x получит значение 1; происходит следующее 10 div 3 = 3 (целое), дальше 10 – 3 (результат) * 3 (делитель) = 1)
x := 10 mod 4 (переменная x получит значение 2; вычисляется 10 – ((10 div 4) * 4)).
Внимательно изучите работу операторов div и mod, они важны для решения задач ГИА по информатике.
3. С помощью функции отбрасывания дробной части числа (не округления, а именно отбрасывания).
trunc(z), где z – вещественное число или математическое выражение.
Примеры:
x := trunc(3.33) (x получит значение 3; «удаляется» дробная часть)
x := trunc(10 / 3) (x получит значение 3, 10 / 3 = 3.33, отбрасываем «,33»)
x := trunc(10 / 2) (x получит значение 5, 10 / 2 = 5 (целое число))
x := trunc(10 / 4) (x получит значение 2, 10 / 4 = 2.5, отбрасываем дробную часть)
Но этот метод не совсем удобен, так как дублирует более понятный в тексте программы div. Таким же образом можно проверить кратность чисел:
Если ((x mod 3) = 0), то число кратно трем (остаток от деления равен нулю).
Если ((x mod 8) = 0), то число кратно восьми и т.д.
Как найти цифру, на которую оканчивается число? Все просто, надо найти остаток от деления числа на 10.
Примеры:
Результатом 150 mod 10 будет число 0, т.к. 150 полностью делится на 10. 0 – это последняя цифра числа.
153 mod 10 вернет 3 (153 – ((153 div 10) * 10); 3 – эта цифра, на которую оканчивается число.
87 mod 10 вернет 7 – последнюю цифру числа.
33 mod 10 вернет 3 и т.д. Попробуйте сами: writeln(33 mod 10);
Автор:
asloo |
|
1 |
|
Определить, делится ли одно число на другое08.02.2013, 18:18. Показов 9056. Ответов 1
Даны 2 целых числа М,N.Если М делится нацело на N,то вывести на экран частное от деления,в противном случае-сообщение “М на N нацело не делится” |
Programming Эксперт 94731 / 64177 / 26122 Регистрация: 12.04.2006 Сообщений: 116,782 |
08.02.2013, 18:18 |
1 |
Puporev Почетный модератор 64285 / 47584 / 32739 Регистрация: 18.05.2008 Сообщений: 115,182 |
||||
08.02.2013, 18:48 |
2 |
|||
Сообщение было отмечено Памирыч как решение Решение
0 |
IT_Exp Эксперт 87844 / 49110 / 22898 Регистрация: 17.06.2006 Сообщений: 92,604 |
08.02.2013, 18:48 |
Помогаю со студенческими работами здесь Найти количество пар соседних элементов, в которых одно число положительное, а другое отрицательное Найти количество пар соседних элементов массива, в которых одно число положительное, а другое отрицательное Определить, является ли целое число N четным двузначным числом, и делится ли оно на число K Проверить, что оба числа делятся нацело и на 3 и на 7, и при этом одно число является чётным, а другое нет Искать еще темы с ответами Или воспользуйтесь поиском по форуму: 2 |
Проверка делимости одного числа на другое
Просмотров 9.6к. Обновлено 14 сентября 2021
Вводятся два целых числа не равных нулю. Проверить делится ли первое на второе. Вывести на экран сообщение об этом, а также остаток (если он есть) и частное (в любом случае).
- Если первое число нацело делится на второе, то вывести сообщение об этом.
- Иначе вывести сообщение о том, что первое число не делится на второе, найти остаток от деления и также вывести его.
- В конце программы найти частное от деления чисел и вывести его.
Pascal
Язык Си
Python
КуМир
Basic-256
Голосование за лучший ответ
Krab Bark
Искусственный Интеллект
(191490)
11 лет назад
Деление нацело:
a div b
Остаток:
a mod b
Редис Александрович
Оракул
(72479)
11 лет назад
есть целочисленное деление div
и с остатком mod
естественно тип переменной должен быть соответсвующий
Константин Дымов
Ученик
(138)
11 лет назад
div – деление без остатка
mod – деление с остатком
x:=n/m – деление с остатком
x – ОБЯЗАТЕЛЬНО real
паскаль выведет в экспоненциальной форме: 3.25000Е+03 = 3.25*10^3=3250
write(x:a:b);
a – число символов, отведенных на запись всего числа
b – число символов, отведенных на запись дробной части числа.
Инфоурок
›
Информатика
›Презентации›Презентация по информатике на тему: “Пример решения задачи нахождения остатка от деления двух целых чисел в Pascal 5 способами”
Скачать материал
Скачать материал
- Сейчас обучается 350 человек из 64 регионов
Описание презентации по отдельным слайдам:
-
1 слайд
Пример Решения задачи нахождения остатка от деления двух целых чисел в Pascal 5 способами.
-
2 слайд
Цель : показать разнообразие способов решения задач в Паскале на примере одной задачи.
-
3 слайд
1 способ с помощью операторов div и mod
var a,b: integer;
begin
write (‘Введите а = ‘);
readln (a);
write (‘Введите b = ‘);
readln (b);
if b<> 0 then begin
writeln(‘Целая часть = ‘, a div b);
writeln(‘Остаток = ‘, a mod b);
end
else
writeln(‘Ошибка! Деление на 0!’);
end. -
4 слайд
var a,b: integer;
begin
write (‘Введите а = ‘);
readln (a);
write (‘Введите b = ‘);
readln (b);
if b<> 0 then begin
writeln(‘Целая часть = ‘, a div b);
writeln(‘Остаток = ‘, a-b * (a div b));
end
else
writeln(‘Ошибка! Деление на 0!’);
end.
2 способ с помощью одного оператора div -
5 слайд
var a,b: integer;
begin
write (‘Введите а = ‘);
readln (a);
write (‘Введите b = ‘);
readln (b);
if b<> 0 then begin
writeln(‘Целая часть = ‘,trunc(a/b));
writeln(‘Остаток = ‘,round(frac(a/b)*b));
end
else
writeln(‘Ошибка! Деление на 0!’);
end.
3 способ с помощью функции отбрасывания дробной части числа trunc и функции возвращения дробной части аргумента frac -
6 слайд
var a,b,q,r: integer;
begin
writeln (‘Введите делимое a’);
readln (a);
writeln (‘Введите делитель b’);
readln (b);
r:=a;
q:=0;
repeat
r:=r-b;
q:=q+1;
until r<b ;
writeln (‘Целая часть = ‘,q, ‘Остаток = ‘,r );
end.
4 способ с помощью цикла repeat -
7 слайд
var a,b,q,r: integer;
begin
writeln (‘Введите делимое a’);
readln (a);
writeln (‘Введите делитель b’);
readln (b);
r:=a;
q:=0;
while r>=b do
begin
r:=r-b;
q:=q+1;
end;
writeln (‘Целая часть = ‘,q, ‘Остаток = ‘,r );
end.
5 способ с помощью цикла while -
Краткое описание документа:
Работа посвящена вопросам программирования. Применительно для учеников 8 класса, после изучения темы:Циклы. В работе показано разнообразие способов решения задачи программирования
на примере одной задачи. Пример: задача нахождения остатка от деления двух целых чисел. Язык программирования Pascal . Рассмотрено пять способ решения поставленной задачи.
Найдите материал к любому уроку, указав свой предмет (категорию), класс, учебник и тему:
6 256 016 материалов в базе
- Выберите категорию:
-
Выберите учебник и тему
- Выберите класс:
-
Тип материала:
-
Все материалы
-
Статьи
-
Научные работы
-
Видеоуроки
-
Презентации
-
Конспекты
-
Тесты
-
Рабочие программы
-
Другие методич. материалы
-
Найти материалы
Материал подходит для УМК
Другие материалы
- 05.12.2019
- 199
- 1
Вам будут интересны эти курсы:
-
Курс повышения квалификации «Информационные технологии в деятельности учителя физики»
-
Курс повышения квалификации «Внедрение системы компьютерной математики в процесс обучения математике в старших классах в рамках реализации ФГОС»
-
Курс повышения квалификации «Организация работы по формированию медиаграмотности и повышению уровня информационных компетенций всех участников образовательного процесса»
-
Курс повышения квалификации «Облачные технологии в образовании»
-
Курс профессиональной переподготовки «Информационные технологии в профессиональной деятельности: теория и методика преподавания в образовательной организации»
-
Курс повышения квалификации «Использование компьютерных технологий в процессе обучения в условиях реализации ФГОС»
-
Курс повышения квалификации «Специфика преподавания информатики в начальных классах с учетом ФГОС НОО»
-
Курс повышения квалификации «Введение в программирование на языке С (СИ)»
-
Курс профессиональной переподготовки «Теория и методика обучения информатике в начальной школе»
-
Курс профессиональной переподготовки «Математика и информатика: теория и методика преподавания в образовательной организации»
-
Курс повышения квалификации «Современные языки программирования интегрированной оболочки Microsoft Visual Studio C# NET., C++. NET, VB.NET. с использованием структурного и объектно-ориентированного методов разработки корпоративных систем»
-
Настоящий материал опубликован пользователем Канарейкин Александр Иванович. Инфоурок является
информационным посредником и предоставляет пользователям возможность размещать на сайте
методические материалы. Всю ответственность за опубликованные материалы, содержащиеся в них
сведения, а также за соблюдение авторских прав несут пользователи, загрузившие материал на сайтЕсли Вы считаете, что материал нарушает авторские права либо по каким-то другим причинам должен быть удален с
сайта, Вы можете оставить жалобу на материал.Удалить материал
-
- На сайте: 4 года и 1 месяц
- Подписчики: 0
- Всего просмотров: 321469
-
Всего материалов:
150
Файлы
Рабочий лист подходит для учеников 7 класса, работающих по учебнику “Информатика. ФГОС”, автор Л….