Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

тематика физика литератора и философа Блеза Паскаля который создал первую в мире механическую машину скла

Работа добавлена на сайт samzan.net:


Среда программирования Free Pascal (часть 1)

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

  •  

Язык Паскаль был разработан Никлаусом Виртом в 1970 г. как язык со строгой типизацией и интуитивно понятным синтаксисом. В 80-е годы наиболее известной реализацией стал компилятор Turbo Pascal фирмы Borland, в 90-е ему на смену пришла среда программирования Delphi, которая стала одной из лучших сред для быстрого создания приложений под Windows. Delphi ввела в язык Паскаль ряд удачных объектно-ориентированных расширений, обновленный язык получил название Object Pascal. Из альтернативных реализаций Object Pascal следует отметить многоплатформенный open source компилятор Free Pascal.

  1.  Система Free Pascal Compiler

Free Pascal Compiler - Описание разработчика: "Free Pascal Compiler (FPC) - это свободно распространяемый компилятор языка Паскаль с открытыми исходными кодами. Он совместим с Borland Pascal 7 и Object Pascal – Delphi, но при этом обладает рядом дополнительных возможностей, например, поддерживает перегрузку операторов. FPC — кроссплатформенный инструмент, поддерживающий огромное количество платформ. Среди них — AmigaOS, DOS, Linux, *BSD, OS/2, MacOS(X) и Win32.

Однако FPC — не просто компилятор. Он имеет в своём составе великолепный набор библиотек, одной из которых является FCL, включающая в себя компоненты, совместимые с невизуальными компонентами VCL из Borland Delphi.

Компилятор переводит программу на язык машинных кодов.

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

  1.  Алфавит языка

Алфавит - это совокупность допустимых в языке символов. Алфавит включает следующий набор основных символов:

  •  строчные и прописные латинские буквы:

 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

a b c d e f g h i j k l m n o p q r s t u v w x y z

  •  пробел
  •  подчеркивание: _
  •  арабские цифры: 0 1 2 3 4 5 6 7 8 9
  •  знаки операций: + - * / = <> < > <= >= := @
  •  ограничители: . , ' ( ) [ ] (. .) { } (*  *) .. : ;

спецификаторы: ^  #  $

  •  служебные (зарезервированные) слова:

ABSOLUTE EXPORTS  FAR  SET  ASSEMBLER  SHR
EXTERNAL  VIRTUALDO SHL  AND  LIBRARY  NAME
ARRAY  FILE   NIL  STRING ASM   FOR
NEAR  ASSEMBLER  THEN NOT   FORWARD  TO
BEGIN    FUNCTION  OBJECT  GOTO  TYPECASE  OF
UNITCONST  PRIVATE  OR  IN  PACKED   INDEX
VARDIV  INLINE   EXPORT  IF  PUBLIC   LABEL
WITHELSE  RESIDENT  RECORD MOD  XOREND  REPEAT
INTERFACE  NTERRUPT     INHERITED I PROCEDURE
IMPLEMENTATION UNTILCONSTRUCTOR  USESDESTRUCTOR
PROGRAM WHILEDOWNTO

  1.  Структура программы

Программа на языке PascalABC.NET имеет следующий вид:

 program имя программы;
 
раздел uses
 
раздел описаний
begin
    
операторы
end.

Первая строка называется заголовком программы и не является обязательной.

Раздел uses начинается с ключевого слова uses, за которым следует список имен модулей и пространств имен .NET, перечисляемых через запятую.

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

Далее следует блок begin/end, внутри которого находятся операторы, отделяемые один от другого символом "точка с запятой".

Раздел uses и раздел описаний могут отсутствовать.

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

Идентификаторы служат в качестве имен программ, модулей, процедур, функций, типов, переменных и констант. Идентификатором считается любая последовательность латинских букв или цифр, начинающаяся с буквы. Буквой считается также символ подчеркивания "_".

Например, a1, _h, b123 - идентификаторы, а 1a, ф2 - нет.

  1.  Описание переменных

Переменные могут быть описаны в разделе описаний, а также непосредственно внутри любого блока  begin/end.

Раздел описания переменных начинается со служебного слова var, после которого следуют элементы описания вида

  •  список имен: тип;

или

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

или

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

Имена в списке перечисляются через запятую.

Пример описания переменных

Например:

var
  
a,b,c: integer;
  d: real := 3.7;
  s := 'Pascal forever';
  al := new ArrayList;
  p1 := 1;

  1.  Описание констант

Раздел описания именованных констант начинается со служебного слова const, после которого следуют элементы описания вида

  •  имя константы = значение;

или

  •  имя константы : тип = значение;

Пример описания констант

const
  Pi = 3.14;
  Count = 10;
  Name = 'Mike';
  DigitsSet = ['0'..'9'];
  Arr: 
array [1..5] of integer = (1,3,5,7,9);
  Rec: 
record name: string; age: integer end = (name: 'Иванов'; age: 23);
  Arr2: 
array [1..2,1..2] of real = ((1,2),(3,4));

  1.  Описание меток

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

label a1,l2,777777;

  1.  Описание типов

Раздел описания типов начинается со служебного слова type, после которого следуют строки вида

  •  имя типа = тип;

Например,

type
  
myint = integer;
  arr10 = 
array [1..10] of integer;
  pinteger = ^integer;
  A = 
class
    i: integer;
    
constructor Create(ii: integer);
    
begin
      i:=ii;
    
end;
  
end;

Простые (порядковые) типы

Тип

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

Размер в байтах

Диапазон значений

логический

boolean

1

true, false

символьный

char

1

все символы кода ASCII

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

Можно создать собственный тип данных простым перечислением значений, которые может принимать переменная данного типа. Это так называемый перечисляемый тип данных.

Целочисленные типы

Тип

Диапазон

Формат

Размер в байтах

Byte

0..255

Беззнаковый

1

ShortInt

−128..127

Знаковый

1

SmallInt

−32768..32767

Знаковый

2

Word

0..65535

Беззнаковый

2

Integer

-32768..32767

Знаковый

2

LongWord

0..4294967295

Беззнаковый

4

LongInt

−2147483648..2147483647

Знаковый

4

QWord

0..18446744073709551615

Беззнаковый

8

Вещественные типы

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

Длина (байт)

Диапазон значений

real

6

2,9x10-39 - 1,7x1038

single

4

1,5x10-45 - 3,4x1038

double

8

5x10-324 - 1,7x10308

extended

10

3,4x10-4932 - 1,1x104932

Структурированные типы

  •  Массив – это структура, занимающая в памяти единую область и состоящая из фиксированного числа компонентов одного типа.
  •  Строки представляет собой последовательность символов. Причем количество этих символов не может быть больше 255 включительно. Такое ограничение характерная черта Pascal.
  •  Запись – это структура, состоящая из фиксированного числа компонент, называемых полями. В разных полях данные могут иметь разный тип.
  •  Множества представляют собой совокупность любого числа элементов, но одного и того же перечисляемого типа.
  •  Файлы для Pascal представляют собой последовательности однотипных данных, которые хранятся на устройствах внешней памяти (кстати, жесткий диск – это тоже внешняя память).
  1.  Выражения

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

Математические операции 

Символ операции

Название операции

Пример

*

умножение

2*3 (результат: 6)

/

деление

30/2 (результат: 1.5E+01)

+

сложение

2+3 (результат: 5)

-

вычитание

5-3 (результат: 2)

div

целочисленное деление

5 div 2 (результат: 2)

mod

остаток от деления

5 mod 2 (результат: 1)

Логические операции

Над логическими аргументами в Паскале определены следующие операции:

NOT - логическое отрицание («НЕ»)

AND - логическое умножение ("И")

OR - логическое сложение («ИЛИ»)

XOR - логическое «Исключающее ИЛИ»

A

B

 not A 

 A and B 

 A or B 

 A xor B 

true

true

false

true

true

false

true

false

 

false

true

true

false

true

true

false

true

true

 false 

 false 

 

false

false

false

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

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

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

В операциях отношения могут принимать участие не только числа, но и символы, строки, множества и указатели.

Приоритет операций

  •  унарная операция not, унарный минус -, взятие адреса @
  •  операции типа умножения:  *  /  div  mod  and
  •  операции типа сложения:  +  -  or  xor
  •  операции отношения:  =  <>  <  >  <=  >=  in

Порядок выполнения операций переопределить можно с помощью скобок.

Например: 2*5+10 равно 20, но 2*(5+10) равно 30.

Стандартные функции Pascal

Обращение 

Тип аргумента 

Тип результата 

Примечание 

Abs(x) 

Целый, вещественный

Целый, вещественный

Модуль аргумента

Sqr(x) 

Целый, вещественный

Целый, вещественный

Квадрат аргумента

Sqrt(x) 

Целый, вещественный

вещественный

Корень квадратный

Sin(x) 

Целый, вещественный

вещественный

Синус, угол в радианах

Cos(x) 

Целый, вещественный

вещественный

Косинус, угол в радианах

ArcTan(x) 

Целый, вещественный

вещественный

Арктангенс (значение в радианах)

Exp(x) 

Целый, вещественный

вещественный

Экспонента

Frac(x) 

вещественный

вещественный

Дробная часть числа

Int(x) 

Целый, вещественный

вещественный

Целая часть числа

Ln(x) 

Целый, вещественный

вещественный

Логарифм натуральный

Pi 

-

вещественный

3,141592653

Random 

-

вещественный

Псевдослучайное число в интервале [0, 1]

Round(x) 

вещественный

целый

Округление до ближайшего целого

Trunc(x) 

вещественный

целый

Отбрасывание дробной части числа

Возведение числа в степень

Хy  EXP(y*Ln(x))

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

<имя_переменной>:=<выражение>

Примеры:

  1.  Ввод и вывод данных

Ввод данных

  •   read(<список ввода>);
    •    readln(<список ввода>); 

Примеры:

  •  read(a,b,c);{где a,b,c - переменные. Ввод данных осуществляется через пробел}
  •  readln(a,b,c);{где a,b,c - переменные. Ввод данных осуществляется через enter}

Список вывода может содержать константы, переменные, выражения, формат вывода. Выражения в списке вывода разделяются запятыми.

Вывод данных   

  •  write(<список вывода>);   
    •  writeln(<список вывода>); 

Примеры:

  •  write(a,b,c);{где a,b,c - переменные. После вывода данных на экран, курсор останется на последнем символе}
  •  writeln(a,b,c);{где a,b,c - переменные. После вывода данных на экран, курсор перейдет на новую строку)}

Окончание ln в имени процедуры означает, что курсор автоматически будет переведен в начало следующей строки экрана.

  1.  Закрепление изученного материала (5 минут):
  •  Что такое программа?
  •  Что такое идентификатор?
  •  Как обозначается имя переменной?
  •  Какие типы переменной вы знаете?
  •  Назовите оператор ввода данных
  •  Назовите оператор вывода данных
  1.  Практическая работа: «Знакомство со средой программирования Free Pascal» (10 минут).
  2.  Запустите программу Free Pascal. Запишите в тетрадь полный путь.
  3.  Запишите в тетрадь, какие команды содержит основное меню программы
  4.  Запишите в тетрадь, какие команды содержит каждый пункт меню.
  5.  Домашнее задание (5 минут):
  •  Учить определения
  •  Угринович, § 2.1., 2.2.
  •  Запишите на языке PASCAL следующие выражения:
    1.  
      1.  
      2.  
  •  Преобразуйте линейную запись выражения в арифметическую:
  1.  (1/3)*(pi*sqr(R)*h)+2*pi*R*h/3
  2.  sqrt(a+b-2*b*c)+(c-1)
  3.  a+3*c/(c*a-a1)+sqrt(3)




1. Лабораторная работа 2 Тема- исследование свойств полупроводникового биполярного транзистора
2. Определение момента инерции подвижной системы крутильного маятника и кольца
3. Суб’єктивні суміжні прав
4. Методические рекомендации по прохождению производственной практики студентов специальности 080505
5. Окно отчета может находиться в одном из четырех режимов- отчета конструктора макета и предварительного п
6. Движение небесных тел Приливные силы
7. Социальные ценности и нормы Социальные ценности это жизненные идеалы и цели которых по мнению большинс
8. Московский государственный машиностроительный университет МАМИ Кафедра Экономика и организаци
9. ТЕМА 6 Аудиторський висновок та звіти 1
10. контрольного пожежного серії ТірасП
11. Статус біженців у Європейському Союзі
12. Форфейтинг як форма кредитування зовнішньої торгівлі
13.  Sigmund Freud in Historicl Context Professor Pul Bloom- Oky
14. Литература Западной Европы XVII века
15.  Общие сведения асфальтовых бетонов 1
16. Рациональное питание человека
17. I. Навчальний посібник - Харламова О
18. Оценка конкурентоспособности товара к.
19. Суд и судебная система СССР
20. 131 Эб132 Эб133 Эб134 ПН 830 Иностранны