Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Задачник с исправлением.doc
Скачиваний:
54
Добавлен:
08.05.2015
Размер:
922.62 Кб
Скачать

Введение

Сборник содержит задания по языку программирования Паскаль [1, 3, 6, 8, 9, 10, 13] и ориентирован на версию, реализованную в наиболее распространенном компиляторе Turbo Pascal 7.0 [7, 11, 15, 18]. Набор упражнений составлен с учетом опыта проведения практических и лабораторных занятий по программированию на кафедре ЭВМ ЮУрГУ и в филиале ЮУрГУ в г. Нижневартовске. Использованы также упражнения из широко распространенных сборников [2, 5, 11, 14, 16, 17] и в первую очередь, конечно, из наиболее удачного и ставшего к настоящему времени библиографической редкостью задачника по Паскалю автора Пильщикова В.Н. [12].

Упражнения сборника охватывают основные темы программирования: вычислительные задачи, обработка одномерных и многомерных массивов, работа с текстами, записями, файлами, множествами, динамические типы данных. В каждом разделе представлены с необходимыми пояснениями листинги типовых задач, иллюстрирующие основные приемы программирования и алгоритмы, часто встречающиеся на практике.

Нумерация упражнений в каждом разделе начинается с 1. Многие упражнения имеют варианты, которые обозначаются начальными буквами русского алфавита. При ссылке на упражнения указывается номер раздела и номер упражнения в разделе, а если надо, то и буква варианта.

Для сокращения формулировок заданий в сборнике используются следующие соглашения. Все задания должны быть реализованы в виде законченных программ с описанием всех используемых констант, типов, переменных, процедур и функций, с вводом-выводом всех необходимых величин. Встречающиеся в упражнениях фразы типа «дано значение n» или «для заданных массивов A и B» указывают на то, что это значение или эти массивы являются исходными данными программы и должны быть в ней введены. Результатами же являются величины, которые надо «найти», «вычислить», «определить», «построить» и т.п. Идентификаторы в текстах заданий выделены шрифтом Courier New.

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

1. Вычисление функций

1.1 Написать программу для вычисления и вывода таблицы значений заданной функции на интервале 1  x  10 c шагом h = 0,5 (задача табулирования функции):

y =

Program Tab_Function;

const

Xn = 1.0; {начальное значение аргумента}

Xk = 10.0; {конечное значение аргумента}

h = 0.5; {шаг изменения аргумента}

Var

a, b, c, d : Real;{параметры выражения}

x, y : Real; {аргумент и значение функции}

R, Q : Real; {подкоренное выражение и знаменатель}

Begin

Writeln('Введите параметры “a, b, c, d”');

Readln (a, b, c, d);

x := Xn;

while x <= Xk do

begin

R := a * x + b;

Q := c * x - d;

{проверили существование функции}

if ( R > 0 ) And ( Q <> 0) then

begin

y := Sqrt( R ) / Q;

Writeln('x=', x:4:1, ' y=', y:8:2)

end

else

Writeln('x=', x:4:1, ' y- функция не существует');

x := x + h {изменили аргумент на шаг}

end

End.