русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Задачи, которые можно решить как частный случай обобщенной


Дата добавления: 2015-06-12; просмотров: 570; Нарушение авторских прав


 

Если нельзя извлечь рекурсию из постановки задачи, то можно расширить задачу, обобщить ее (например, введя дополнительный параметр). Удачное обобщение может помочь увидеть рекурсию. После этого возвра­щаемся к частному случаю и решаем исходную задачу.

Пример

Определить, является ли заданное натуральное чис­ло простым.

Решение

Данную задачу можно обобщить, например, так; оп­ределить, верно ли, что заданное натуральное число N не делится ни на одно число, большее или равное M (2≤M≤N), но меньшее N.

Соответствующая функция должна принимать зна­чение "истина" в двух случаях:

Если M=N;

Если N не делится на M и функция принимает значение "истина" для чисел М+1 и N.

ProgramExample_80;

Function Simple(M,N: Integer): Boolean;

Begin

If M=N Then Simple:=True

Else Simple:=(N Mod M<>0)

And Simple (M+1,N);

End;

Вернемся к исходной задаче. Она является частным случаем обобщенной, если M положить равным 2. Пер­вое обращение к функции будет таким: Simple(2,N), где N − это данное число.

Задание

Изучить работу функции в пошаговом режиме и нарисовать схему вызовов функций.

Задачи, в которых можно

Использовать характеристику или свойство функции

Пример

Для заданного натурального числа N≥1 определить натуральное число a, для которого выполняется нера­венство: 2a-1≤N≤2a.



<== предыдущая лекция | следующая лекция ==>
Решение | Операции для работы с файлами последовательного доступа


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.398 сек.