Составить программу и вычислить значение функции



Практическая работа

Составление линейных программ

Цель работы:   Научиться работать в среде программирования Турбо Паскаль, составлять арифметические выражения и использовать операторы ввода и вывода.

Простейшая программа на языке Паскаль имеет следующую структуру:

PROGRAM  Имя программы; USES Список используемых библиотек (модулей); VAR Определение переменных программы;   BEGIN        Основной блок программы END.

С помощью директивы USES подключаются библиотечные модули из стандартного набора Турбо Паскаль. USES используется в программе только один раз. Список библиотек дается через запятую:

USES CRT, DOS, Graph;

{подключены три библиотеки с соответствующими именами}

Если библиотеки не используются, то эта директива не используется.

Блок VAR содержит список переменных программы и их типов. Этих блоков может быть несколько, но переменные в них не должны повторятся. Базовыми типами данных в Паскале являются следующие:

1. INTEGER – целые числа.

2. REAL – вещественные числа (числа с дробной частью).

3. CHAR – символьный тип.

4. BOOLEAN – логический тип (данные этого типа могут принимать только одно из двух значений: TRUE – истина или FALSE – ложь).

Например:

       VAR K,I,J:INTEGER; A,B:REAL;

Основной блок программы всегда начинается словом BEGIN, а заканчивается END и на конце «точка». После «точки» компилятор уже ничего не принимает.

Компилятор Турбо Паскаля накладывает некоторые ограничения на текст программы. Так, длина строки не может превысить 126 символов. В конце каждой строки в основном блоке программы и в процедурах и функциях должны стоять «;».

Ни одна программа не обходится без инструкций присваивания. В результате выполнения этой инструкции переменная получает некоторое значение. Этот оператор в общем виде выглядит как

Переменная := Значение;

Составной символ «:=» читается как «становится равным». В операции присваивания слева всегда стоит имя переменной, а справа – то, что представляет ее значение (значение как таковое или выражение). После присваивания переменная слева получает новое значение.

Например:

a:=2.4;

d:=b*b-4*a*c;

 

Для присваиваемых выражений однозначно определяются правила вычислений: действия выполняются слева на право с соблюдением следующего старшинства (в порядке убывания):

1. Действия в скобках;

2. Математические функции;

3. NOT;

4. *, /, DIV, MOD, AND;

5. +, -, OR;

6. =, <>, <, >, <=, >=, IN.

Паскаль имеет следующие стандартные математические функции.

ABS ( X )
PI p
SIN ( X )
COS ( X )
ARCTAN ( X )
SQRT ( X )
SQR ( X )
POWER(X,5) х 5
EXP ( X )
LN ( X )
TRUNC ( X ) Целая часть значения Х
FRAC ( X ) Дробная часть значения Х
INT ( X ) Целая часть значения Х
ROUND ( X ) Округление Х до целого
RANDOM Случайное число от 0 до 1
RANDOM ( X ) Случайное число от 0 до Х
ODD ( X ) Возвращает TRUE, если Х – нечетное число.
A DIV B Целая часть от деления А на В (например: 5 div 3 будет 1)
A MOD B Остаток от деления А на В (например: 5 mod 3 будет 2)

С помощью этих математических функций и основных операций составляются арифметические выражения, при этом очень важно в выражении расставить правильно скобки, учитывая приоритеты выполняемых операций. Например:

Выражение  

на языке Паскаль будет выглядеть как

abs(ln(x))-sqr(x-2)+(exp(x+3)-3*x)/(1+cos(sqrt(x)))

Или выражение

будет выглядеть следующим образом:

(sqrt(exp(x)-1)-sqr(x)*(1+sin(pi*x))/(x*arctan(x/sqrt(1+sqr(x))))

Если в программе какие-либо данные задаются в момент работы программы (например, коэффициенты квадратного уравнения или другие нужные переменные), то в программе необходимо использовать операторы ввода.

1. READLN(Переменная1,Переменная2, … , ПеременнаяN);

Переменная1, Переменная2, … , ПеременнаяN – имена переменных, которые вводятся.

После выполнения этого оператора, курсор переходит на новую строку.

2. READ(Переменная1,Переменная2, … , ПеременнаяN);

После выполнения этого оператора, курсор остается на этой же строке.

Если вводятся несколько переменных, то переменные можно разделять пробелом или ENTER. В конце ввода необходимо нажимать ENTER.

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

READLN a,b,c;

требует ввода значения трех переменных (значения можно разделять пробелами или нажатием клавиши ENTER).

Для вывода информации на экран используются следующие операторы:

1. WRITELN (Список выводимых переменных и сообщения);

После выполнения этого оператора, курсор переходит на новую строку. Выводимые выражения отделяются друг от друга запятыми.

Если выводится набор символов, то он заключается в апострофы:

WRITELN(‘P=’,P);

После работы этого операторы мы увидим на экране

Р=значение переменной Р.

2. WRITE(Список выводимых переменных и сообщения);

После выполнения этого оператора, курсор остается на этой же строке.

Если необходимо вывести значение переменной, объявленной типом REAL, то программист имеет возможность задать число позиций для выводимой величины и число позиций, отводимых под дробную часть.

WRITELN(‘P=’,P:10:2);

Здесь под Р отводится 10 позиций, а из них 2 – под дробную часть. Т.е., если Р=13.852, то Р распределиться по этим позициям следующим образом

          1 3 . 8 5

При этом вначале будут пять пробелов. И на экране при выводе мы увидим следующее:

Р= 13.85

Если выводится величина, объявленная типом INTEGER, то можно задать только общее число позиций (т.е. используется только одно число).

Пример:

Написать программу вычисления пути, пройденного телом. Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление пути.

Введите начальную скорость (м/с) – > 3

Введите время (с) – > 5

Введите ускорение (м/с2) - > 1

 

Тело прошло путь 27.50 м

 

 


Блок-схема этой задачи:

 

     
 

 

 


Программа выглядит следующим образом:

program prac3;

uses crt; {Модуль crt необходим для работы с экраном

       например, для очистки экрана от предыдущих

       результатов работы программ}

 

var a,t,v0,S:real; {а – ускорение, t – время, v0 – начальная скорость,

               S – путь}    

 

begin

clrscr; {Оператор очистки экрана}

writeln('Вычисление пути.');

  write('Введите начальную скорость (м/с) -> ');

readln(v0); {Ввод начальной скорости}

write('Введите время (с) -> ');

readln(t); {Ввод времени}

write('Введите ускорение (м/с2) -> ');

readln(a); {Ввод ускорения}

S:=v0*t+a*sqr(t)/2; {Расчет пути}

writeln; {Вывод пустой строки}

writeln('Тело прошло путь ',S:6:2,' м'); {Вывод нужных данных}

readln;

end.


Пример:

Написать программу для расчета значения

, где  и

вводиться пользователем с клавиатуры во время работы программы.

 

Блок-схема этой задачи:

 

 

 

 


Программа выглядит следующим образом:

{ Вычисление значения z}

 

program prac3;

uses crt; {Модуль crt необходим для работы с экраном

       например, для очистки экрана от предыдущих

       результатов работы программ}

 

var x,y,z,t:real;

 

begin

clrscr; {Оператор очистки экрана}

write('Введите значение t -> ');

readln(t);

x:=pi*ln(t);

y:=sqrt(t*(2+sin(t)));

z:=sqr((x+y)/(2*x))-sqrt(x)/(x+3*y);

writeln('Значение функции z=',z:9:6); {Вывод нужных данных}

readln;

end.

Задание (инструкция 3)

№1

1. Написать программу вычисления площади прямоугольника. Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление площади прямоугольника

Введите исходные данные:

Длина (см) – > 9

Ширина (см) – > 7.5

 

Площадь прямоугольника: 67.50 кв.см.

 

2. Составить программу и вычислить значение функции

, где

 

Ответ.

Введите а 2

Введите b 1

82

№2

1. Написать программу вычисления объема параллелепипеда (V=a*b*c). Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисления объема параллелепипеда

Введите исходные данные:

Длина (см) – > 9

Ширина (см) – > 7.5

Высота (см) – > 5

 

Объем: 337.50 куб.см.

2. Составить программу и вычислить значение функции

     , где  

 

Ответ.

Введите a 2

Введите b 4

54.38

 

№3

1. Написать программу вычисления площади поверхности параллелепипеда S=2*(a*b+b*c+a*c). Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление площади поверхности параллелепипеда.

Введите исходные данные:

Длина (см) – > 9

Ширина (см) – > 7.5

Высота (см) – > 5

 

Площадь поверхности: 300.00 кв.см.

2. Составить программу и вычислить значение функции

, где

 

Ответ.

Введите a 2

Введите b 4

Введите c 5

3.80

№4

1. Написать программу вычисления объема куба (V=a3). Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление объема куба.

Введите длину ребра (см) – > 9.5

 

Объем куба: 857.38 куб.см.

2. Составить программу и вычислить значение функции

, где

Ответ.

Введите a 3

Введите n 4

Введите d 2

24

 

№5

1. Написать программу вычисления объема цилиндра (V=Pi*R2*H). Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление объема цилиндра.

Введите исходные данные:

Радиус основания (см) – > 5

Высота цилиндра (см) – > 10

 

Объема цилиндра 785.0 см.куб.

 

2. Составить программу и вычислить значение функции

Ответ.

Введите a 2

Введите n 4

13.35

№6

1. Написать программу вычисления стоимости покупки, состоящей из нескольких тетрадей и карандашей. Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление стоимости покупки.

Введите исходные данные:

Цена тетради (руб) – > 2.75

Количество тетрадей – > 5

Цена карандаша (руб) – > 0.85

Количество карандашей – > 2

 

Стоимость покупки: 15.45 руб.

 

2. Составить программу и вычислить значение функции

Ответ.

Введите a 4

Введите b 6

Введите c 7

3.507

№7

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

Вычисление стоимости покупки.

Введите исходные данные:

Цена тетради (руб) – > 2.75

Цена обложки (руб) – > 0.5

Количество комплектов (шт) – > 7

 

Стоимость покупки: 22.75 руб

 

2. Составить программу и вычислить значение функции

Ответ.

Введите a 3

Введите b 7

Введите h 5

520.981

№8

1. Написать программу вычисления стоимости некоторого количества (по весу) яблок. Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление стоимости покупки.

Введите исходные данные:

Цена одного килограмма яблок (руб) – > 8.5

Вес яблок (кг) – > 2.3

Стоимость покупки: 19.55 руб.

Ответ.

Цена одного кг яблок (руб) 8.5

Вес яблок (кг) 2.3

Стоимость покупки: 19.55 руб.

2. Составить программу и вычислить значение функции

      

Ответ.

Введите a 2

Введите r 3

65.973

 

№9

1. Написать программу вычисления площади треугольника, если известна длина основания и высоты (S=1/2*a*h). Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление площади треугольника.

Введите исходные данные:

Основание (см) – > 8.5

Высота (см) – > 10

 

Площадь поверхности: 42.50 кв.см.

Составить программу и вычислить значение функции

       

Ответ.

Введите i 2

Введите a 4

Введите k 3

Введите v 7

Введите u 5

3.61

№10

1. Написать программу вычисления площади треугольника, если известны длины двух его сторон и величина угла между этими сторонами (S=1/2*a*b*sin(a)). Ниже приведен рекомендованный вид экрана во время выполнения программы (данные, введенные пользователем, выделены полужирным шрифтом).

Вычисление площади треугольника.

Введите исходные данные:

Введите длину первой стороны (см) треугольника – > 25

Введите длину второй стороны (см) треугольника – > 17

Введите величину угла между сторонами треугольника – > 30


Дата добавления: 2019-02-12; просмотров: 1746; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!