ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 07.04.2025

Просмотров: 1468

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

СОДЕРЖАНИЕ

Федеральное агенство по образованию российской федерации

1. Основные категории и понятия информатики

1.2. Информация: структура, форма, измерение

2. Техническое и программное обеспечение пэвм

2.1. Структура аппаратных средств пэвм

2.2. Программное обеспечение пэвм

3. Основы алгоритмизации

3.2.Формы представления алгоритмов

3.2.1. Алгоритм линейной структуры.

3.2.2. Алгоритм разветвляющейся структуры.

Да нет да да Рис 3.11

3.2.3. Алгоритмы циклической структуры.

4.2. Структура программы на языке Паскаль

4.3. Скалярные стандартные типы данных

4.4. Скалярные, пользовательские типы данных

5. Структурные типы данных

5.3. Записи

5.4. Записи с вариантами

5.6.Файлы

6. Операции над данными скалярных типов. Выражения

7. Операторы языка Паскаль

7.1. Простые операторы

7.2. Структурные операторы

8. Примеры программ на языке Паскаль

8.1. Пример 1. Арифметические выражения. Оператор присваивания

8.3. Пример 3. Программа обработки одномерного массива

8.4. Пример 4. Программа обработки двумерного массива

True False True False False

8.5. Пример 5. Программа обработки символьных строк

8.6. Пример 6. Программа обработки двумерного массива с вводом элементов матрицы из текстового файла

9.Разработка программ сложной структуры

9.1. Процедуры и функции

9.2. Область действия идентификаторов при использовании процедур и функций. Локальные и глобальные переменные

9.3. Передача данных в подпрограмму с помощью параметров. Формальные и фактические параметры

9.4. Использование процедур и функций

True False Рис. 9.4

9.5. Массивы – параметры процедур и функций

True False True False Рис. 9.7

True False True False True False Рис 9.9

9.6. Рекурсивные процедуры и функции

True False Рис. 9.10 True False

True False Рис. 9.12

9.7. Модули

10. Динамические структуры данных

10.2. Объявление и создание динамических структур данных. Указатели

Приложение. Контрольные вопросы

Литература

Пример.

Var Symbol: Char;

…………………….

Begin

…………………….

Case Symbol of

‘0’..’9’: writeln(‘Это цифра’);

‘A’..’Z’: writeln(‘Это прописная буква’);

‘a’..’z’: writeln(‘Это строчная буква’);

‘=’: writeln(‘Это знак операции сравнения’)

else writeln(‘другой символ’);

end;

Рассмотрим операторы цикла языка Паскаль. Язык Паскаль поддерживает три конструкции цикла:

  • оператор цикла с предусловием while-do;

  • оператор цикла с постусловием repeat-until;

  • оператор цикла с параметром for.

Оператор while-doимеет следующий синтаксис:

While < логическое выражение >

do <оператор>

или

While < логическое выражение >

begin

<операторы>

end

Блок-схема оператора цикла представлена на рис. 7.3. Тело цикла – это оператор или составной оператор. В операторе while-do тело цикла может не выполниться ни разу. Логическое выражение – это условие продолжения цикла. Проверка условия продолжения цикла выполняется перед очередной итерацией. Итерация – это выполнение операторов тела цикла.

Рис. 7.3

Оператор цикла repeat-until имеет следующий синтаксис:

Repeat

<оператор 1>

<оператор 2>

….

<оператор n>

until <логическое выражение>

В операторе repeat-until не требуется использование составного оператора. Блок-схема оператора repeat-until показана на рис. 7.4, где логическое выражение является условием выхода из цикла. Операторы тела цикла repeat-until выполняются хотя бы один раз. Проверка условия выхода из цикла происходит после очередной итерации.

Оператор цикла с параметром используется в тех случаях, когда точно известно число итераций, отсчет числа итераций выполняется с помощью управляющей переменной, которая называется параметром цикла. Перед выполнением цикла известны начальное N1 и конечное N2 значение параметра цикла. Шаг изменения параметра равен 1.

Если N1<N2 (см. рис. 7.5) , то оператор цикла с параметром имеет следующий синтаксис:

For <параметр цикла>:=<выражение N1> to <выражение N2> do <оператор или составной оператор>

Если N1>N2 (см. рис. 7.6) , то оператор цикла с параметром имеет следующий синтаксис:

For <параметр цикла>:=<выражение N1> downto <выражение N2> do <оператор или составной оператор>

В Паскале оператор цикла с параметром имеет два ограничения:


  • Шаг изменения параметра может быть равен только 1, если используется ключевое слово to, или –1,если используется ключевое слово downto.

  • Переменная – параметр цикла должна быть только порядкового типа и должна быть локальной.

Рис. 7.4

Рис. 7.5

Рис. 7.6


8. Примеры программ на языке Паскаль

8.1. Пример 1. Арифметические выражения. Оператор присваивания

Задание 1. Вычислить значение функции

. Значение аргумента Х вводится с клавиатуры.

Постановка задачи.

Входные данные:

Х – аргумент функции Y.

Выходные данные:

Y– значение функции.

Метод решения: вычисление значения функции по заданной формуле.

Алгоритм.Вычисление значения функции.

Входные данные.

СКАЛЯР Х – вещественное число.

Выходные данные.

СКАЛЯР Y– вещественное число.

Начало

ввод(Х)

вывод(Y)

Конец

Блок-схема алгоритма.

Ввод числа Х

Вывод значенияY

Рис 8.1

Программа на языке Паскаль.

Program Example1;

Var X,Y: real;

Begin

Write(‘Input X: ‘);

Readln(X);

Y:=(X*sqr(X) +6)/sqrt(sqr(X)+6)+4;

Write(‘Y= ‘,Y);

End.

Результаты тестирования.

Если X=1.2,Yдолжен быть равен 6.83322226.

Результаты, выданные программой.

Input X: 1.2

Y= 6.83322226221255E+0000

    1. Пример 2. Условные операторы

Задание 1. Вычислить значение функции в зависимости от условия.

.

Значения аргумента Х и параметра Aвводятся с клавиатуры.

Постановка задачи.

Входные данные:

А – постоянный параметр функции Y,A>0,

Х – аргумент функции Y.

Выходные данные:

Y– значение функции.

Метод решения: проверка условия и вычисление значения функции по заданной формуле.


Алгоритм.Вычисление значения функции в зависимости от условия.

Входные данные.

СКАЛЯР Х – вещественное число,

А – положительное, вещественное число.

Выходные данные.

СКАЛЯР Y– вещественное число.

Начало

ввод(Х,А)

ЕСЛИ X<0 ТО

Y=(X-A)/X

ИНАЧЕ

ЕСЛИ X<AТОY=0

ИНАЧЕ Y= A-ln|X-1|

КОНЕЦ_ЕСЛИ

КОНЕЦ_ЕСЛИ

вывод(Y)

Конец

Блок-схема алгоритма.

Ввод чисел х, а

False

True

False

True

Рис. 8.2

Вывод значения Y

Программа на языке Паскаль.

Program Example1;

Var A,X,Y: real;

Begin

While(A<=0) do

begin

Write(‘Input A>0: ‘);

Readln(A)

End;

Write(‘Input X: ‘);

Readln(X);

If X<0 Then

Y:=(X-A)/X

Else

If X<A Then Y:=0

Else Y:=A-ln(abs(X-1));

Write(‘Y= ‘,Y);

End.

Результаты тестирования.

A=1

Если X=-1.5,Yдолжен быть равен 1.66667.

Если X=0.5,Yдолжен быть равен 0.


Если X=1.5,Yдолжен быть равен 1,69314718.

Результаты, выданные программой.

Input A>0: 1

Input X: -1.5

Y= 1.66666666666667E+0000

Input A>0: 1

Input X: 0.5

Y= 0.00000000000000E+0000

Input A>0: 1

Input X: 1.5

Y= 1.69314718055995E+0000

8.3. Пример 3. Программа обработки одномерного массива

Задание 3. Определить минимальный элемент среди положительных элементов одномерного массива. Если положительных элементов нет в массиве, вывести сообщение об этом.

Постановка задачи.

Исходные данные:

  • Число элементов в одномерном массиве n<=10;

  • Одномерный массив из nэлементов, содержащий положительные и отрицательные значения.

Выходные данные:значение минимального элемента среди положительных элементов массива.

Аномалии:отсутствие положительных элементов в массиве.

Реакция на аномальную ситуацию – выдача сообщения.

Алгоритм. Поиск минимального элемента среди положительных элементов массива.

Исходные данные:

СКАЛЯР n<=10 - целое число;

МАССИВ M[10] целого типа.

Выходные данные:

СКАЛЯР min– целое число.

Промежуточные данные:

СКАЛЯР i– целое число /* параметр цикла */

i1 – целое число /* номер первого положительного элемента в массиве */

Начало

Вывод(‘inputn<10’)

Ввод(n)

ЦИКЛОТi:=1ДОn

Вывод(‘input M[i] ‘)

Ввод(M[i])

КОНЕЦ_ЦИКЛА

i1:=0

ЦИКЛ

i1:= i1+1

ДО ((M[i1]>0) ИЛИ (i1>n))

ЕСЛИ i1>nТО

Вывод(‘not M[i]>0 ‘)

ИНАЧЕ

min:=M[i1]

ЦИКЛОТi:=i1ДОn

ЕСЛИ ((min>M[i]) И (M[i]>0))ТО

Min:=M[i]

КОНЕЦ_ЕСЛИ

КОНЕЦ_ЦИКЛА

Вывод(‘min= ‘,min)

КОНЕЦ_ЕСЛИ

Конец

Блок-схема алгоритма.

False