Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб №2 (Информатика).pdf
Скачиваний:
16
Добавлен:
29.03.2015
Размер:
254.42 Кб
Скачать

14

2) Если y – вещественное значение, то используется следующая математическая формула:

x y e y ln( x) .

На Паскале это будет выглядеть так:

Exp(Y * Ln(x))

Очевидно, при вещественном y не допускается нулевое или отрицательное значение x . Для целого y такого ограничения нет.

1

Например, 3a 1 (a 1)3 . На Паскале это будет записано так:

Exp(1/3 * Ln(A+1))

Оператор присваивания

Присваивание — это занесение значения в память. В общем виде оператор присваивания записывается так:

переменная := выражение

Здесь символами := обозначена операция присваивания. Механизм выполнения оператора присваивания такой: вычисляется выражение и его результат заносится в память по адресу, который определяется именем переменной, находящейся слева от знака операции.

Примеры операторов присваивания:

x := 46;

b := a;

a := (b + c)/2;

Правая и левая части оператора присваивания должны быть совместимы по присваиванию. Более детально об этом будет рассказано в следующих лабораторных работах. В данной лабораторной работе мы будем использовать только типы integer и real, поэтому должны выполняться следующие правила:

1) В случае, если переменная имеет тип integer, то выражение также должно быть типа integer.

15

2) Если переменная имеет тип real, то выражение может иметь как тип real, так и тип integer.

Задания к работе

Задания 1-6 выполняются всей группой в тетради либо на доске.

Задание №1. В первом столбце табл. 5 записана на языке Паскаль

вещественная константа в форме с фиксированной точкой, а во втором столбце – та же константа, но в форме с плавающей точкой. Найти неизвестное число x (в пунктах а)-в) под неизвестным числом x

подразумевается порядок константы, а в пунктах г)-е) – вся константа).

Табл. 5. Вещественные константы

Вещественна константа в форме с

Вещественна константа в форме с

п/п

фиксированной точкой

плавающей точкой

а)

0.005

5E x

б)

29.43

2.943E x

в)

1.2

1.2E x

г)

x

7.46E+2

д)

x

3.1E-1

е)

x

9.22E0

Примеры выполнения задания №1.

1) Дана вещественная константа в форме с фиксированной точкой:

0.9. Необходимо записать ее в форме с плавающей точкой, т.е. в виде: <мантисса>E<порядок>

Известно, что число 0.9 равно 9*10-1.

Следовательно, мантисса данной константы в форме с плавающей точкой равна 9, а порядок равен -1. Поэтому константа в форме с плавающей точкой будет записана следующим образом: 9E-1.

2) Дана вещественная константа в форме с плавающей точкой:

8.15E+1. Необходимо записать ее в форме с фиксированной точкой.

Известно, что число 8.15E+1 равно 8.15*101.

Поэтому константа в форме с фиксированной точкой будет записана следующим образом: 81.5.

16

Задание №2. Вычислить значения выражений, записанных на языке Паскаль:

а) trunc(4.7);

б) round(4.7);

в) trunc(1.2);

г) round(1.2);

д) 25 div 7;

е) 25 mod 7;

ж) 4 div 9;

з) 4 mod 9;

и) 15 + 3 * 7 div 2 mod 7 – trunc(sin(1)).

Задание №3. Определить тип выражений (целый или вещественный),

записанных на языке Паскаль:

а) 57 + 119.0;

б) 9 – 3;

в) 1.5 * 2;

г) 20 / 5;

д) 124 div 20;

е) 5 mod 11;

ж) sqr(8);

з) sqrt(100);

и) sin(0);

к) trunc(1.9);

л) round(2.4);

м) int(1.1);

н) frac(78.25);

Задание №4. Для следующих математических выражений записать соответствующие арифметические выражения на языке Паскаль.

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

17

а) ac b xyz ;

б) (a d)x (b c)z ;

в) z3 a2b x ;

г) b c ab ; 7a c

д)

е)

 

y x

 

a1a2

;

a1 a2

 

 

 

x z

 

y

 

z

 

9

 

 

 

2! 3!

 

.

 

 

 

 

10

6

45 xz

Пример выполнения задания №4. Математическое выражение

(a b)x 3 на языке Паскаль будет записано следующим образом:

y z

((a-b)*x+3)/(y+z)

При записи подобных математических выражений на языке Паскаль не следует забывать, что все символы пишутся в строчку на одном уровне, а

все знаки операций должны быть проставлены (нельзя пропускать *). Также следует напомнить, что часть выражения, заключенная в круглые скобки,

вычисляется в первую очередь.

Задание №5. Для следующих математических выражений записать соответствующие арифметические выражения на языке Паскаль.

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

а) (1 y)2 ;

б) (x z)3 ;

в) a2 ;

75

г) sin 2 x ;

cos x
выражения на языке Паскаль в данном примере, т.к. стандартные функции для вычисления синуса и косинуса в Паскале присутствуют.
tgx
sin x
Подобный пример записи математического выражения на языке Паскаль может вызвать трудность, т.к. в языке Паскаль отсутствует стандартная функция вычисления тангенса. Однако, из математики известно, что . Это соотношение и было использовано для записи
sin(5.35*x)/cos(5.35*x)

18

д)

ln(

x

 

9

 

) ;

 

 

 

 

 

 

 

z 5

 

 

 

 

 

 

3

 

 

 

 

 

 

 

е)

log2 (b 1) ;

 

 

 

 

 

 

ж) arcsin y ;

 

 

 

 

 

 

з)

525

 

 

 

 

;

 

 

 

 

 

 

3ex 8e x

 

 

 

 

 

 

и) z

 

;

 

 

 

 

 

 

 

 

 

 

 

5

 

 

 

 

 

 

 

 

 

 

 

к)

4

 

;

 

 

 

 

 

 

 

6 5y

 

 

 

 

 

 

л)

 

 

 

 

;

 

 

 

 

 

 

 

 

 

c6 6c

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

м)

 

 

abc 2,4

y 3

x

 

 

;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

107

 

 

 

 

 

 

 

 

 

 

 

ln(4!)

н)

 

b cos2 (

4 )

.

 

 

 

 

 

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b2 ctg(b3 )

Примеры выполнения задания №5.

1) Математическое выражение

записано следующим образом:

sqr(y)+sin(2*x)

y2 sin(2x) на языке Паскаль будет

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

функция вычисления синуса.

2) Математическое выражение tg(5.35x) на языке Паскаль будет записано следующим образом:

19

Задание №6. Если y – переменная типа real, а n – переменная типа integer, то какие из следующих операторов присваивания, записанных на языке Паскаль, являются правильными, а какие нет?

а) y:=n-2;

б) n:=y+10;

в) n:=8.0;

г) y:=trunc(y);

д) y:=n mod 3;

е) y:=y div 4;

ж) n:=n/5;

з) n:=sqrt(sqr(n));

Вопросы и упражнения для самоконтроля

1) К какому типу относятся следующие константы, записанные на языке Паскаль?

а) 0.125

б) 'Москва'

в) $AB6

г) 'Y'

д) 1.9E–4

е) -251

ж) '5'

2) Какие из следующих идентификаторов, записанных на языке Паскаль, являются неправильными и почему?

а) y33

б) w

в) 59

г) x_2

д) _yz

20

е) 34x

3) Какие из следующих типов данных языка Паскаль являются целыми со знаком?

а) shortint

б) word

в) real

г) longint

д) single

е) integer

ж) double

4)Какая арифметическая операция языка Паскаль используется для нахождения остатка от целого деления?

5)Какая математическая стандартная функция языка Паскаль используется для нахождения квадратного корня?

6)Расположите следующие операции языка Паскаль в порядке убывания приоритетов:

а) вычисление функции sin(x);

б) сложение двух переменных;

в) унарная операция смены знака (-);

г) операция div.

Список литературы

1) Семакин И.Г., Шестаков А.П. Лекции по программированию:

Учебное пособие. Изд. 2-е, доп. – Пермь: Изд-во Перм. ун-та, 1998. – 279 с. 2) Программирование на языке высокого уровня Паскаль. Лекция 1:

Основные понятия языка. [Электронный ресурс] – Режим доступа: http://www.intuit.ru/studies/courses/628/484/lecture/6259. (Дата обращения: 28.06.2013).