Free Pascal - свободно распространяемый в исходных текстах кроссплатформенный компилятор языка Pascal. Алгоритмический язык Интегрированная среда программирования Текстовый редактор библиотеки компилятор компоновщик отладчик
Библиотеки – специальные файлы, содержащие стандартные модули (готовые программы), которые можно вставить в программу, вызывая по имени. Компилятор – программа, предназначенная для перевода текста в машинные коды. Компоновщик – программа, предназначенная для добавления к программе кодов из библиотечных модулей и соединения программы в единое целое. Отладчик – программное средство, позволяющее проверить программу и устранить выявленные ошибки.
File New File Open File Save (F2) Compile Compile ( Alt+F9) Run Run (Ctrl+F9) Alt+F5 Создать файл Открыть файл Сохранить файл Компилировать файл Запуск программы Просмотр результата работы программы
program имя_программы; uses modul1, modul2, …, moduln; const описания_констант; type описания_типов; var описания_переменных; begin операторы_языка; end.
program имя_программы; uses modul1, modul2, …, moduln; const описания_констант; type описания_типов; var описания_переменных; begin оператор_1; оператор_2;... end. program one; const a=7; var b,c: real; begin c:=a+2; b:=c-a*sin(a); end. program one; const a=7; var b,c: real; begin c:=a+2; b:=c-a*sin(a); end.
var имя_переменной: тип_переменной; var переменная_1,…,переменная_N: тип_переменных; Var ha: integer; hb, c: real; Var ha: integer; hb, c: real; const имя_константы = значение; const h=3; bk=-7.521; c='abcde'; const h=3; bk=-7.521; c='abcde'; Var c: char;
var b: byte; i, j: integer; W: word; L_1, L_2: longint; var b: byte; i, j: integer; W: word; L_1, L_2: longint;
var r1, r2: real; D: double; var r1, r2: real; D: double;
var FL: boolean; var FL: boolean;
var имя_переменной:(знач_1,знач_2,…,знач_N); var animal: (fox, rabbit); color: (yellow, blue, green); var animal: (fox, rabbit); color: (yellow, blue, green); type year_times = (winter, spring, summer, autumn); var yt: year_times; type year_times = (winter, spring, summer, autumn); var yt: year_times;
var имя_переменной: мин_знач.. макс_знач; var date: 1..31; symb: a..h; var date: 1..31; symb: a..h;
a+b*sin(cos(x)) R:=(a+b+c)/2 S:=sqrt(r*(r-a)*(r-b)*(r-c)) alfa:=alfa*180/pi; betta:=betta*180/pi; gamma:=gamma*180/pi; alfa:=alfa*180/pi; betta:=betta*180/pi; gamma:=gamma*180/pi;
write('x='); readln(x); z:=0; Вывод данных в строку Ввод данных и переход на новую строку Присваивание значение переменной
write('x=,х); writeln('x=); write(х); Read(a,b,c); Write(S=); Readln(a,b,c); Write(S=); х=1 х= S= S=
program zadacha; var x1, y1, x2, y2, d: real; begin Writeln(vvedite x1, y1, x2, y2); Readln(x1, y1, x2, y2); d:=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)); Writeln(rasst=, d); Repeat until keypressed; end. program zadacha; var x1, y1, x2, y2, d: real; begin Writeln(vvedite x1, y1, x2, y2); Readln(x1, y1, x2, y2); d:=sqrt((x2-x1)*(x2-x1)+(y2-y1)*(y2-y1)); Writeln(rasst=, d); Repeat until keypressed; end.
If условие then операторы else операторы If a>0 then s:=s+d else s:=s-d; If ab then a:=a-b; If (x =0) then y:=sqr(x); If ab then a:=a-b; If (x =0) then y:=sqr(x);
If a
program schisla; uses crt; label 1; var a,k: integer; program schisla; uses crt; label 1; var a,k: integer;
begin k:=0; clrscr; 1: Writeln (vvedite chislo); Readln(a); if a0 then begin if a mod 2 =0 then k:=k+1; goto 1; end; writeln(kol chet chisel =,k); end. begin k:=0; clrscr; 1: Writeln (vvedite chislo); Readln(a); if a0 then begin if a mod 2 =0 then k:=k+1; goto 1; end; writeln(kol chet chisel =,k); end.
program maks; uses crt; var a,b,c,max: real; begin writeln(vvedite a,b,c); readln(a,b, c); If a>b then max:=a else max:=b; If maxb then max:=a else max:=b; If max
while логическое выражение do Операторы; k:=0; read(a); while a0 do begin if a>0 then s:=s+a; read(a); end; k:=0; read(a); while a0 do begin if a>0 then s:=s+a; read(a); end;
repeat Операторы; until логическое выражение; s:=0; repeat readln(v1); readln(k); v2:=v2+v1*k; until v2>=v; s:=0; repeat readln(v1); readln(k); v2:=v2+v1*k; until v2>=v;
For параметр :=нач. значение to кон. значение do Операторы; For k:=2 to 10 do p:=p*k; For параметр :=кон. значение downto нач. значение do Операторы; For I:=640 downto 1 do x:=x+I;
Найти сумму вводимых с клавиатуры положительных чисел. Выход из программы по вводу 0. program predusl; uses crt; var a,s: real; begin s:=0; readln(a); while a0 do begin if a>0 then s:=s+a; readln(a); end; Clrscr; Writeln(s=,s); end. program predusl; uses crt; var a,s: real; begin s:=0; readln(a); while a0 do begin if a>0 then s:=s+a; readln(a); end; Clrscr; Writeln(s=,s); end.
Найти целые двузначные числа, остаток от деления на 3 которых равен 2. program param; uses crt; var a: integer; begin for a:=10 to 99 do if a mod 3=2 then writeln(a); end. program param; uses crt; var a: integer; begin for a:=10 to 99 do if a mod 3=2 then writeln(a); end.
program postusl; uses crt; var a,k: integer; begin k:=0; readln(a); repeat if a mod 100 then k:=k+1; a:=a div 10; until a=0; Writeln(k=,k); end. program postusl; uses crt; var a,k: integer; begin k:=0; readln(a); repeat if a mod 100 then k:=k+1; a:=a div 10; until a=0; Writeln(k=,k); end.
program zadachka; uses crt; var i,x,sum: integer; begin sum:=0; for i:=10 to 99 do begin sum:=sum+(i mod 10)+(i div 10); if sum=8 then writeln(i); sum:=0; end; end. program zadachka; uses crt; var i,x,sum: integer; begin sum:=0; for i:=10 to 99 do begin sum:=sum+(i mod 10)+(i div 10); if sum=8 then writeln(i); sum:=0; end; end.
Procedure имя(список формальных параметров); Var … Begin ….. End; Procedure имя(список формальных параметров); Var … Begin ….. End;
program zadachka; uses crt; var a,b,c,d,e: integer; Procedure swap(x:integer;y:integer); Var f;integer; Begin f:=x; x:=y;y:=f; End; program zadachka; uses crt; var a,b,c,d,e: integer; Procedure swap(x:integer;y:integer); Var f;integer; Begin f:=x; x:=y;y:=f; End;
begin readln(a,b,c,d,e); swap(a,c); swap(b,e); writeln(a,b,c,d,e); End. begin readln(a,b,c,d,e); swap(a,c); swap(b,e); writeln(a,b,c,d,e); End.
function имя(список формальных параметров): тип; Var … Begin ….. Имя:=значение функции; End; function имя(список формальных параметров): тип; Var … Begin ….. Имя:=значение функции; End;
program zadachka1; uses crt; var y,n,m: integer; function fakt(x:integer):longint; Var f,j:integer; Begin f:=1; for i=1 to x do f:=f*j; fakt:=f; End; program zadachka1; uses crt; var y,n,m: integer; function fakt(x:integer):longint; Var f,j:integer; Begin f:=1; for i=1 to x do f:=f*j; fakt:=f; End;
begin readln(n,m); y:=fakt(n)+fakt(m); writeln(y); End. begin readln(n,m); y:=fakt(n)+fakt(m); writeln(y); End.