- •Автономная некоммерческая организация высшего профессионального образования «Брянский институт управления и бизнеса»
- •Методические пособие по изучению алгометрического языка pascal
- •Оглавление
- •Введение
- •Глава 1 основные понятия .
- •Алфавит языка.
- •Основные определения языка.
- •Составные части программы.
- •Вычисление об"ема шара
- •Вопросы для самоконтроля
- •Глава 2 стандартные типы данных
- •Данные целого типа.
- •Данные действительного типа.
- •Данные логического типа.
- •Данные символьного типа.
- •`Теплоход``маяк``` или `д``артаньян`
- •Описание констант и переменных.
- •Var_имя переменной: тип;
- •Вопросы для самоконтроля
- •Глава 3 выражения.
- •3.1. Стандартные функции.
- •3.2. Арифметические выражения.
- •3.3. Логические выражения.
- •Вопросы для camokohtpoля
- •Глава 4 основы программирования простых задач.
- •4.1. Оператор присваивания.
- •4.2. Понятие о составном и пустом операторах. Назначение символа точки с запятой.
- •Простейший ввод данных.
- •5 Позиций
- •8 Позиций
- •Примеры программирования простых задач.
- •Вопросы для самоконтроля
- •5.1. Условный оператор.
- •Оператор выбора.
- •Оператор перехода.
- •Go to метка
- •Lавеl метка;
- •Label метка 1, метка 2,…, метка n;
- •5.4.Примеры программирования вычислительных процессов с разветвлениями.
- •Глава 6 организация циклических прцессов.
- •Оператор цикла с предварительным условием.
- •Оператор цикла с последующим условием.
- •Операторы циклической части программы
- •Оператор цикла с параметром.
- •Вложенные циклы.
- •Глава 7 основы ввода и вывода.
- •7.1. Оператор ввода.
- •7.2. Оператор вывода
- •Программирование циклических вычислительных процессов.
- •Вопросы для самоконтроля
- •Глава 8 Переменные типы.
- •Перечислимый тип данных.
- •Var а: (зима, весна, лето, осень);
- •Ограниченный тип данных.
- •Вопросы для самоконтроля
- •Глава 9 Сложный тип данных – массивы.
- •Понятие массива.
- •Var_имя массива: array [t1] of_t2;
- •Тип массива.
- •Упакованные массивы.
- •Понятие многомерных массивов.
- •Глава 10 Сложный тип данных – множества.
- •10.1. Множества в языке Паскаль.
- •Var _имя множества: set_of_ базовый тип;
- •Примеры программирования задач с использованием множества
- •Вопросы для самоконтроля
- •Глава 11 Сложный тип данных – записи.
- •Понятие записи.
- •Оператор присоединения.
- •Вопросы для самоконтроля
- •Глава 12 Подпрограммы.
- •Общие сведения.
- •Процедуры и функции.
- •Вопросы для самоконтроля
- •Глава 13 Файлы
- •13.1. Понятие файла.
- •13.2. Чтение файла.
- •13.3. Запись файла.
- •13.4 Чтение и запись файла
- •Вопросы для самоконтроля
Программирование циклических вычислительных процессов.
Пример 7.2. Даны действительные числа. Вычислить их среднее арифметическое. Среднее арифметическое равно сумме всех чисел, деленной на количество чисел.
В программе 7.1 сначала вводится значение N количества чисел, а затем организуется цикл. Внутри цикла вводится очередное число (переменная S), оно прибавляется к накапливаемой сумме T. После окончания выполнения цикла вычисляется среднее арифметическое, обозначенное также именем Т.
Программа 7.1.
(*ВЫЧИСЛЕНИЕ СРЕДНЕГО АРИФМЕТИЧЕСКОГО*)
PROGRAM EX8;
VAR
I: INTEGER; (*ПАРАМЕТР ЦИКЛА *)
N:INTEGER; (*КОЛИЧЕСТВО ЧИСЕЛ *)
S:REAL (* ВВОДИМОЕ ЧИСЛО *)
T:REAL; (* СРЕДНЕЕ АРИФМЕТИЧЕСКОЕ*)
BEGIN
T:=0;
WRITELN('ВВЕДИТЕ КОЛИЧЕСТВО ЧИСЕЛ:');
READ( N );
FOR I:=1 TO N DO
BEGIN
WRITE ( 'ВВЕДИТЕ ЧИСЛО: ');
READ(S);
T:=T+S;
END;
T:=T/N;
WRITELN (' ---------------------');
WRITELN ('СРЕДНЕЕ АРИФМЕТИЧЕСКОЕ =',T:5:Z)
END.
Результат выполнения программы
ВВЕДИТЕ КОЛИЧЕСТВО ЧИСЕЛ:
6
ВВЕДИТЕ ЧИСЛО: 8
ВВЕДИТЕ ЧИСЛО: 7
ВВЕДИТЕ ЧИСЛО: 5
ВВЕДИТЕ ЧИСЛО: 9
ВВЕДИТЕ ЧИСЛО: 7
ВВЕДИТЕ ЧИСЛО: 9
СРЕДНЕЕ АРИФМЕТИЧЕСКОЕ = 7.50
Программа 7.2. Вычислить объем каждого из нескольких шаров, а затем найти их суммарный объем. Известно, что радиус первого шара – R, радиус каждого последующего больше предыдущего на величину DR; радиус последнего шара – RK.
(* ВЫЧИСЛЕНИЕ ОБ’’ЕМА СИСТЕМЫ ШАРОВ *)
PROGRAM E10;
CONST PI=3.14;
VAR
R,RK:REAL; (* РАДИУС *)
V,VH:REAL; (* ОБ"ЕМ *)
DR:REAL; (* ИЗМЕНЕНИЕ РАДИУСА *)
BEGIN
WRITELN('ВВЕДИТE НАЧАЛЬНОЕ ЗНАЧЕНИЕ РАДИУСА R :’); READ(R);
WRITELN('ВВЕДИТE КОНЕЧНОЕ ЗНАЧЕНИЕ РАДИУСА RK :’);
READ(RK);
WRITELN('ВВЕДИТЕ ШАГ ИЗМЕНЕНИЯ РАДИУСА PR :');
READ(DR);
VM:=0;
WHILE R<=RK DO
BEGIN
V:=4*РI*R*R*R/3;
VM:=VM+V;
WRITELN(' R=' ,R:6:2, ' ':5,' V=',V:7:3);
R:=R+DR;
WRITELN( '**********************************************');
WRITELN( 'ОБЩИЙ ОБ"ЕМ СИСТЕМЫ: VH= ' ,V M :в : 3 )
END.
Пример 7.4. Дан произвольный текст. Признаком конца текста считать нажатие клавиши ВК- Подсчитать общее количество введенных символов текста и число буквы Т в тексте. Так как заранее не известно, сколько раз будет выполняться цикл, для его организации используется оператор цикла WHILE. Условием окончания цикла является проверка конца строки. Пока не обнаружен конец строки (NOTEOLN), цикл продолжает выполняться.
Программа 7.3.
(*ВЫБОР ИЗ ТЕКСТА БУКВЫ “Т”*)
PROGRAM E3;
VAR
BUK:CHAR; (*БУКВА ТЕКСТА*)
K:INTEGER;(*СЧЕТЧИК БУКВЫ*)
N:INTEGER; (*8СЧЕТЧИК ВСЕХ БУКВ*)
BEGIN
K:=0; N: =0;
READLN;
WRITELN ('ВВЕДИТЕ ТЕКСТ:');
WHILE NOT EOLN DO
BEGIN
READ (BUK) ;
N:=N+1 ;
IF BUK='T' THEN K:=K+1
END;
WRITELN;
WRITELN ('КОЛИЧЕСТВО СИМВОЛОВ В ТЕКСТЕ =',N:3);
WRITELN ('ЧИСЛО БУКВЫ "Т" В ТЕКСТЕ =',К;3)
END.
Пример 7.5. Составить программу 7.4, результатом выполнения которой является таблица значений градусов температуры по Цельсию к Фаренгейту.
Программа 7.4
(*ТАБУЛИРОВАНИЕ ТЕМПЕРАТУРЫ ОТ 0 ДО 20 ГРАДУСОВ ПО ЦЕЛЬСИЮ СОВМЕСТНО С ЭКВИВАЛЕНТОМ ДО 0.1 ГРАДУСА ПО ФАРЕНГЕЙТУ*)
PROGRAM E6;
CONST
CONST1=1.8; (* МНОЖИТЕЛЬ ПЕРЕВОДА *)
CONST2=32.0; (* СЛАГАЕМОЕ ПЕРЕВОДА*)
VAR
CENTEMP:INTEGER; (*ТЕМПЕРАТУРА ПО ЦЕЛЬСИЮ*)
FARTEMP:REAL; (*ТЕМРЕРАТУРА ПО ФАРЕНГЕЙТУ*)
BEGIN
WRITELN('ПO ЦЕЛЬСИЮ * ПО ФАРЕНГЕЙТУ'); FOR CENTEMP:=0 TO 20 DO
BEGIN
FARTEMP:=CENTEMP*CONST1+CONST2;
WRITELN(CENTEMP:3,' ':8,'*',’ ',FARTEMP:6:1);
END
END.
