. Назад Вперед Зміст

Дійсний тип

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

Найменування типу Діапазон значень Розмір у байтах

          Real

 -2.9*10-39 ... 1.7*10+38 

           6

Виведення дійсних чисел

Дійсні числа представлені у Паскалі у вигляді мантиси та порядку. Мантиса від порядку відділена символом E.

Наприклад, у числі -1.3586000000E+02 мантиса -1.3586, а порядок +02.

Мантиса завжди задовольняє нерівность 1<= мантиса <10.

Дійсне значення числа: число= мантиса*10порядок

Програма Результат роботи програми
Program P1;
  Var x:real;
Begin
   X:=-135.86;
   Writeln(x);
End.
Ця програма надрукує -
1.3586000000E+02
замість -135.86

Приклади читання дійсних чисел

Вигляд дійсного числа на екрані монітора Число
–5.12300000000000E+03 -5123
 3.72100000000000E-01 0.3721
–1.23400000000000E-02 -0.01234

Приклади запису дійсних чисел

Якщо числа дуже маленькі або великі, їх можна записувати у вигляді мантиси та порядку. Символ E можна писати маленький або великий, знак + можна не писати, незначущі нулі теж можна не писати.

Число Запис числа у програмі або при вводі Скорочений запис
0.00005 5.0000000000E-05 5e-5
10-7 1.0000000000E-07 1e-7
108 1.0000000000E+08 1e8

Приклади виводу на екран дійсних чисел

Програма Результат роботи
Program P1;
Begin
  Writeln(153.4);
End.
1.5340000000E+02
Program P2;
Begin
  Writeln(-0.7);
End.
-7.0000000000E-01
Program P3;
Begin
  Writeln(2e-1);
End.
2.0000000000E-01
Program P4;
Begin
  Writeln(50e2);
End.
5.0000000000E+03

Форматований вивід дійсних чисел

Читати такі дійсні числа незручно, тому при виводі дійсні числа форматують.

Writeln(x:n:m);

При виведенні змінній x  відводиться всього n позицій, з них m після крапки.

Програма Результат Пояснення
Program P1;
Var x:real;
Begin
 X:=-135.86;
 Writeln(x:7:2);
End.
-135.86  

 Все число займає 7 позицій,
 з них 2 позиції після крапки

 

Program P2;
Var x:real;
Begin
X:=-135.86;
Writeln(x:1:2);
End.
-135.86  

Якщо числу відводиться мало
позицій, воно займає позицій
стільки, скільки йому
потрібно

 

Program P3;
Var x:real;
Begin
X:=-135.86;
Writeln(x:9:2);
End.
  -135.86 Якщо числу відводиться
більше позицій, ніж потрібно
воно доповнюється зліва
пробілами
 
Program P4;
Var x:real;
Begin
X:=-135.86;
Writeln(x:1:1);
End.
-135.9
Якщо для числа вказується
кількість знаків після крапки
менша, ніж є у ньому, то число
округлюється
 
Program P5;
Var x:real;
Begin
X:=-135.86;
Writeln(x:1:3);
End.
-135.860
Якщо для числа вказується
кількість знаків після крапки
більша, ніж є у ньому, то число
справа доповнюється нулями
 
Program P6;
Var x:real;
Begin
X:=-135.86;
Writeln(x:10:3);
End.
  -135.860 Одночасно: справа нулі, зліва
пробіли
 
Program P7;
Var x:real;
Begin
X:=-135.86;
Writeln(x:5);
End.
-1.4E+02
Скорочений вивід у вигляді
мантиси та порядку, якщо не
вказано кількість знаків після
крапки
 

Форматований вивід цілих чисел

Програма Результат Пояснення
Program P1;
 Var x:integer;
Begin
 X:=54;
 Writeln(x);
End.
54 Звичайний вивід
Program P2;
 Var x:integer;
Begin
 X:=54;
 Writeln(x:4);
End.
  54  Число зліва
 доповнюється
  пробілами
Program P3;
 Var x:integer;
Begin
 X:=54;
 Writeln(x:4:1);
End.
Помилка!  Для цілих чисел
   не можна
   вказувати
кількість знаків
  після крапки

Назад Вперед Зміст