Обговорення:Pascal

Матеріал з Вікіпедії — вільної енциклопедії.
Найсвіжіший коментар: FolkerApple у темі «Історія» 14 років тому
Перейти до навігації Перейти до пошуку

Зауваження[ред. код]

Хіба в паскалі є тип dword? Приклад дуже діалектний, що, як на мене, не відповідає духу мови. Навіть якщо й використовувати такий тип, то багато факторіалів так не обчислиш.Велике число, як не крути. Holigor 10:06, 29 листопада 2007 (UTC)Відповісти

Мені також здався підозрілим цей тип даних. Може, краще замінити на Integer? --vityok 10:44, 29 листопада 2007 (UTC)Відповісти


Я переклав окремі місця цієї статі з російської для роботи, але в мене немає часу приєднати їх сюди. Можливо, хтось це зробить або скористується результатами моєі роботи.

Типи даних

Примітивні типи даних: real, integer, char, boolean і перерахування:

var
  r: Real;  { змінна дійсного типу }
  i: Integer;  { змінна цілого типу }
  c: Char;  { символ }
  b: Boolean;  { змінна логічного типу }
  e: (apple, pear, banana, orange, lemon);  { перерахування }

Нові типи можуть бути визначені з існуючих:

type
  x = Integer;
  y = x;
...

Крім того, з примітивних типів можуть бути зконструйовані складені:

type 
  a = Array [1..10] of Integer;  { масив }
  b = record  { запис }
        x: Integer;
        y: Char;
      end;
  c = File of a;  { файл }

Оператори контроля виконання програми Паскаль — мова структурного програмування. Це означає, що програма складається з послідовно виконуваних окремих стандартних операторів, бажано без використання команди GOTO.

while a <> b do  { цикл з передумовою }
  writeln('Виконання циклу :)');

if a > b then  { умовний оператор }
  writeln('умова виконується')
else
  writeln('умова не виконуєтся');

for i := 1 to 10 do  { итераційний цикл }
  writeln('Ітерація №', i:1);

repeat  { цикл з післяумовою }
  a := a + 1
until a = 10;

case i of  { умовний оператор множинного выбора }
  0: write('нуль');
  1: write('один');
  2: write('два')
end;

Процедури та функції

В мові Паскаль підпрограми діляться на процедури та функції.

program mine(output);

var i : integer;

procedure print(var j: integer);

  function next(k: integer): integer;
  begin
    next := k + 1
  end;

begin
  writeln('Всего: ', j);
  j := next(j)
end;

begin
  i := 1;
  while i <= 10 do
    print(i)
end.

Процедури та функції можуть бути вкладені одна в одну як завгодно глибоко. Кожна процедура/функція може містити власні мітки, константи, типи, змінні, а також інші процедури та функції, причому лише в зазначеній послідовності. --92.113.69.201 04:52, 3 лютого 2009 (UTC)Відповісти

Історія[ред. код]

Треба також додати історію про паскаля. Якщо треба - я можу додати. FolkerApple 16:47, 17 лютого 2010 (UTC)Відповісти