You are on page 1of 4

Реални броеви

Променливата од типот real може да запамети еден реален број. Реалниот број се
запишува како децимален број, кој може да биде и позитивен и негативен.
Пример за реални броеви:
1.4142 -0.618 2341.0 -26
(приметувате дека децималните броеви се запишани користејќи точка а не запирка,
како што се користи во математиката)
Во физиката и техниката често се јавуваат броеви т.н. експоненцијални нотации, како
што се броевите −0.61 ∙10 7и 0.2 ∙10−13. Во програмскиот јазик Паскал експонентите....
„десет на седма“.... се запишуваат со помош на буквата е. Пр.

Алгебарски изрази
Програмскиот јазик Паскал ги препознава следните алгебарски изрази над реалните
броеви:
Операција Објанување Пример
+ собирање x+1.14
- oдземање x-1.14
* множење x*y
/ делење x/1.036
sqrt квадратен корен sqrt(x/y)
sqr „на квадрат“ sqr(x+1)
abs апсолутна вредност abs(x-2)

Името на функцијата sqrt потекнува од англискиот збор square root=квадратен корен;


името на функцијата sqr потекнува од англискиот збор squared=квадрирано (на
квадрат); името на функцијата abs потекнува од англискиот збор absolute value=
апсолутна вредност.
Како и во математиката, операциите * и / имаат поголем приоритет од + и -. Тоа значи
дека прво ќе се изврши операцијата множење, па потоа операциите з собирање и
одземање. Пр:
Паскал израз Математички израз
x
1 - x / y 1−
y
x*y- 4 xy – 4
x
1.12 + x / y – 3 * z 1.12+ −3 z
y

Операциите собирање и одземање имаат ист приоритет.


Заградите се користат како во математиката. Ако не сме сигурни како Паскал ќе го
сфати некој израз, со поставувањето загради ќе бидеме сигурни дека изразот точно ќе
се рачуна, онака како што ние сакаме.
Проблемот со сите програмски јазици е во тоа што алгебарските изрази мора да бидат
„спакувани во линија“. Затоа мора да бидеме внимателни кога некој алгебарски израз
го запишваме во програмскиот јазик.
Пр:
Алгебарски израз Паскал израз Погрешно

x−1
(x-1) / (2-x) x-1 / 2-x
2−x
x
x / (3*z) x/3*z
3z
x
√ 1− + z
y
sqrt (1-x/y)+z

¿ x−1∨ ¿ ¿

2−x
x+1
sqrt(abs(x-1)/(x+1))

(2-x)/sqr(y)
y2

Програмскиот јазик Паскал познава уште некои математички функции:

x+ y
Пример: Да се напише Паскал програма која ја рачуна вредноста на изразот ,
x− y
каде x и y се реални броеви.

program Primer1;
var
x,y,rez:real;
begin
writeln(‘Vnesi x i y’);
readln(x,y);
rez:=(x+y)/(x-y);
writeln(‘rez=’, rez);
end.

Пример2: Да се напише Паскал програма каде што се пресметува вредноста на


1−x
изразот −2 x+
√ y ( z 2+ 2)
, каде x,y,z се реални броеви.

program primer2;
var
x,y,z, rez:real;
begin
writeln(‘Vnesi x, y, z’);
readln(x, y, z);
rez:=-2*x+sqrt((1-x)/(y*(sqr(z)+2)) );
writeln(‘Rez= ’, rez);
end.

Пример3: Дасе напише Паскал програма која го пресметува вредноста на изразот


– ( x 2 + xy + y 2 ) +2 z
, каде x,y,z се реални броеви.
x 2+ xy+ y 2−z

program primer3;
var
x,y,z,d,rez:real;
begin
writeln(‘Vnesi x,y,z’);
readln(x,y,z);
d:=sqrt(x)+x*y+sqr(y);
rez:= (-d+2*z)/(d-z);
writeln(‘Rez=’, rez);
end.

Форматиран излез на реалните броеви

Program ispis;
var
x:real;
begin
x:-11/3;
writeln(x);
end.

Ако го извршиме примерот, тој резултатот на променливата x ќе ја запише вака:


-3.666666666666667е+0000 што е правилно но не изгледа убаво. Затоа во
програмскиот јазик Паскал постои начин реалните броеви да се испишуваат на поубав
и почитлив начин.

Наредбата writeln дозволува да после реалната променлива додаваат модификатори


кои му кажуваат на преводот како да го форматира бројот на исписот. Исписот на
променливата со модификаторот изгледа вака:
Writeln(x:w:d)
Каде W претставува ширина на полето, односно, вкупниот број на места кои смеат да
бидат зафатени за испишување на бројот, а d е бројот на децимални места. Доколку
w е поголем од потребните места за бројот, празнините ќе бидат од лево. Бројот ќе
биде заокружен на дадениот број децимални места.
Пр. Ако сакаме да го испишеме бројот – 11.4135824 со параметрите w=12, d=4, то
може да го направиме со командата
writeln(-11.4135824:12:4)
На мониторот ќе добиеме

You might also like