Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


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



Программа состоит из заголовка и тела программы

В заголовок входят: служебное слово program и перечень доступных программе файлов (input output)

Тело программы (блок) состоит из шести разделов:

- раздел меток;

- раздел констант;

- раздел типов;

- раздел переменных;

- раздел процедур и функций;

- раздел операторов.

Нарушать очерёдность нельзя.

Любой из разделов (кроме операторов) может отсутствовать.

Раздел меток

label (служебное слово) за которым следует перечень меток разделённый запятыми

Пример 3, 11, 48, 2;

Раздел описания констант

const (служебное слово)

Определение каждой константы содержит идентификатор константы, знак равенства, и значение.

Например: e=2, 718281828;

z=’8 Б класс’;

Раздел описания типов

type (служебное слово)

В работе чаще используются стандартные типы данных:

byte – целый (от 0 до 255)

integer - целый (от -32768 до 32767)

longint – (от –2147483648 до 2147483647)

real - вещественный (от 2, 9Е-39 до 1, 7Е+38)

char - символьный (любой один символ. Например: f или №)

string - строковый (любой текст от 0 до 255 символов)

boolean - булевский {принимает два значения FALSE (ложь) и TRUE (истина)}

Если возникает необходимость в создание своих типов данных, то это осуществляется в разделе описания типов следующим образом:

за идентификатором типа записывается знак равенства (и через запятую перечисляются те значения, которые будет принимать переменная данного типа);

seasans=(spr, or, kan, pak)

Интервальные типы: можно объявить новый тип так, что он будет частью упорядоченного интервала

days =1..31

manth=1..12

z=’a’..’w’

Раздел описания переменных

var (служебное слово)

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

i, kl, l: integer;

a, b: real;

hobidaus: seasans

Раздел процедур и функций

Сам раздел не имеет служебного слова. В разделе может находиться несколько процедур или(и) функций, но каждая процедура начинается со слова: Procedure; каждая функция начинается словом: Function.

Процедура и функция по своей структуре подобны программе.

Раздел операторов (обязательный)

begin

тело программы

end.

Вопросы для повторения:

  1. Существуют ли операторы языка Pascal записанные русскими буквами?
  2. В какой форме изображаются действительные числа в Pascal?
  3. Из каких частей состоит программа на Pascal?
  4. Какие разделы могут входить в блок программы?
  5. Какие разделы не являются обязательными при написании программы?
  6. Как в тексте программы определить, что начался раздел меток?
  7. Как в тексте программы определить, что закончился раздел констант?
  8. Назовите стандартные типы данных.

Задания для самостоятельной работы:

1. Переведите числа в естественную форму записи:

a) 4.09Е+02 б) 7.802Е+01 в) 3.3Е-02

г) 2.97Е-03 д) 5.29Е+00 е) 2.03Е+05

2. Переведите числа в полулогарифмическую форму записи:

a) 234000 б) 0.0045 в) 678

г) 7.302 д) 4090 е) 0.0306

3. Какое из чисел больше: a) 4.67Е-01 б) 0.0467.

4. Какое из чисел меньше: a) 9.21Е+04 б) 9210

5. К каким типам можно отнести перечисленные ниже данные:

a) 200 б) -17 в) 2305

г) 5.89 д) 56890 е) -56890

ж) -32767 з) -32769 и) 2147483648

к) { л) 7 м) Привет

н) 1945год о) -31009 п) byte

 

Основные математические функции.

Моя первая программа.

Арифметические операции.

В языке Pascal используется следующие арифметические операции:

арифметическая операция (а=14, b=4) результат

- сложение (+) S: =a+b S=18

- вычитание (-) S: =a-b S=10

- умножение (*) S: =a*b S=56

- деление (/) S: =a / b S=3.5

- целочисленное деление S: =a div b S=3

- остаток от целочисленного деления S: =a mod b S=2

Нет возведения в степень. Если степень целая, её заменяют умножением: а3 ↔ S: =a*a*a

Для возведения числа в произвольную степень используется следующее соотношение:

xy=e ln(x ) =eylnx тогда xy=exр(y*ln(x))

Основные математические функции.

sqr(x) - возведение X в квадрат (x2)
sqrt(x) корень квадратный из X ( )
abs(x) модуль от X ( )
int(x) целая часть X (результат - вещественное число)
trunc(x) целая часть X (результат - целое число)
round(x) округляет число X до целого (результат - целое число)
frac(x) дробная часть от X  
pi выдаёт число 3.1415926….. (19 знаков после запятой)
sin(x) синус X (sin(x))
cos(x) косинус X (cos(x))
arctan(x) арктангенс X (arctg(x))
exp(x) возведение числа е=2.7183 в степень X х)
ln(x) натуральный логарифм числа X (ln(x))
random(x) выбирается случайное число от 0 до X-1 (целое)
random выбирается случайное число от 0 до 1 (вещественное)

Операции отношения.

= - равно < > - неравно

< - меньше > - больше

< = - меньше или равно

> = - больше или равно

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

Знак: = называется оператором присваивания.

Например Y: = 5; X: =sqr(Y) + 3

Это означает следующее: переменной Y присвоить значение 5, а переменной X присвоить значение 52+3=28.

Идентификаторы.

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

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

 

Оператор вывода информации.

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

В скобках записываются данные, которые необходимо вывести на экран.

Вопросы для повторения:

6. Чем отличается операция /от операции div?

7. Существует ли в Pascal операция возведения в степень?

8. Что должно быть записано слева от оператора присваивания?

9. Что может быть записано в правой части оператора присваивания?

10. Может ли слово Apple являться переменной?

11. Что такое переменная?

12. Что такое идентификатор?

13. Почему знак умножения необходимо записывать явно (нужно писать f*w, а не fw)?

Задания для самостоятельной работы:

1. Вычислите устно:

a) a: = 78 mod 5 б) b: =97 div 9 в) c: = 13 mod 7

г) kl: = (50 div 4) mod 5 д) fl: = 82 mod (30 div 7)

2. Вычислите устно:

a) z: = sqr(9) б) w: =sqrt(9) в) x: = abs(-7)

г) y1: = int(5.7) д) y2: = trunc(5.7) e) y3: = round(5.7)

ж) k: = frac(5.7) з) sl: = 2+pi и)* pr: = sqr(sqrt(8))

3. Какие из предложенных ниже записей являются идентификаторами, а какие нет?

a) uд б) w9 в) 9w г) y(17)

д) alpha e) y#kl ж) _kl з) f_h

и) my prog к) div л) date_27 м) MyNameSerg

4. Загрузите Pascal. Введите записанную ниже программу в компьютер. Просмотрите, какие разделы присутствуют в программе. Выполните программу.

program My_prog1;

const

s='Моя первая программа';

Begin

write(s);

End.

5. Введите записанную ниже программу в компьютер. На основании этого примера (дописывая и удаляя ln) попробуйте разобраться в чём отличие между операторами write( ) и writeln( )

program My_prog2;

var

a: integer;

b, c: real;

Begin

a: =-64;

b: =sqrt(abs(a));

c: =int(pi);

writeln('b=', b);

writeln('c=', c);

End.

6. *Составьте программы для вычисления следующих формул:

а)z=3+x2-3x3 б) d=x (sin x + cos(x2) + |x|)

в) l = 2 π r г) k=1 + |y-x|3 + |y-x|/(x+1)


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-05-30; Просмотров: 1081; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.024 с.)
Главная | Случайная страница | Обратная связь