Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Билеты по Информатике 1 курс 13 группа.docx
Скачиваний:
5
Добавлен:
15.04.2019
Размер:
134.65 Кб
Скачать

Билет 46. Мобильность программ. Отличие версии Турбо-Паскаль от стандартного Паскаля.

Довольно частое явление - это перенос программы, написанной на одной машине, на другую, которая отличается процессором, операционной системой или тем и другим. Программа мобильна, если она может быть легко перенесена. Программа переносится трудно, если она содержит много машинно-зависимых вещей: фрагментов кодов, которые работают только со специфической операционной системой или процессором. Турбо-Паскаль допускает перенесение кода между всеми его версиями, но все-таки требует внимания к деталям и часто при этом теряется эффективность из-за отличий в операционных системах.

Перенесение кода, написанного с использованием какого-либо компилятора Паскаля, в Турбо-Паскаль может вызвать проблемы из-за применений различных наборов расширений. Обратная задача также проблематична: если были использованы расширения Турбо-Паскаля, написанный код должен быть модифицирован при использовании другого компилятора.

ОТЛИЧИЯ Турбо-Паскаля от стандартного:

- работа со строковыми переменными.

- расширены типы вещественный, целый.

- допускается произвольная последовательность описания констант, переменных, типов, меток и подпрограмм. Например, раздел VAR описания переменных может появляться в пределах раздела описаний одной и той же подпрограммы много раз и перемежаться с объявлениями других объектов и подпрограмм. Для Турбо-Паскаля совершенно безразличен порядок следования и количество разделов VAR, CONST, TYPE, LABEL.

- разрешается использовать в передаваемой процедуре (функции) любые типы параметров: параметры-значения, параметры-переменные, параметры-константы (в стандартном Паскале только параметры-значения).

- модули (uses ctr, graph)

Билет 47. Метод бисекции (деления пополам). Использование его в алгоритмах сортировки и решения уравнений.

Метод деления пополам.

Применяется для нахождения корня уравнения f(x)=0 на отрезке [а, b] для непрерывной функции. Он работает при условии, что на концах отрезка, содержащего корень, функция должна иметь разные знаки.

Суть метода состоит в последовательном «стягивании» отрезка к корню:

Пусть l - левая граница изменяющегося отрезка (вначале l=a), r - его правая граница (вначале r=b); отрезок [l, r] делится пополам точкой c и выбирается та половина, на концах которого функция имеет разные знаки; если это левая половина, то r=c, если правая, то l=c:

процесс деления отрезка повторяется до тех пор, пока не выполнится условие

abs(r-l)<=eps и abs(f(x))<=eps.

Метод простых итераций.

Используется в том случае, если уравнение можно выразить в виде x=f(x). Тогда корень уравнения является пересечением прямой y = x и кривой y=f(x)(x). Метод простых итераций записывается в виде рекуррентной формулы

X0=Xнач.

Xi=f(Xi-1) для i=1,2,3, …

которая образует последовательность

X0,X1,X2, … , Xi, …

сходящуюся к корню уравнения при определенных условиях.

Повторяем процесс до выполнения условия abs(Xi-X(i-1))<=eps.