Movatterモバイル変換


[0]ホーム

URL:


Prijeđi na sadržaj
WikipedijaSlobodna enciklopedija
Traži

Pascal (programski jezik)

Izvor: Wikipedija

Pascal jeprogramski jezik kojeg je stvoriošvicarski znanstvenikNiklaus Wirth1970. godine. Isprva se Pascal koristilo kao nastavno pomagalo zastrukturalnu metoduprogramiranja računala na fakultetima. Tokom80ih i ranih90ih godina20. stoljeća Pascal se proširio van akademskih krugova u industriju, no ubrzo nakon pojave i masivnijom upotrebomobjektno orijentiranih jezika kaoC++ iliJava tijekom sredine 90ih godina 20. stoljeća, Pascal počinje gubiti primat u školama kao i u industriji. Pokušaj proširivanja Pascala s objektno orijentiranim konceptima krozObject Pascal i kasnije kroz programski jezikDelphi uspjele su prilagoditi Pascal novim izazovima, no njegova popularnost sve više opada.

Povijest razvoja

[uredi |uredi kôd]

Pascal je programski jezik razvijen 1970. godine od strane Niklausa Wirtha kao jezik posebno pogodan za strukturalno programiranje (za razliku od danas opće prihvaćene OOP metode). Baziran na temeljima programskog jezikaAlgol dobio je ime u čast matematičara i filozofaBlaisea Pascala.

Iako je inicijalno bio zamišljen kao jezik namijenjen učenju programiranja u školama i univerzitetima širom svijeta danas se koristi u industriji razvojasoftwarea u svojoj najpoznatijoj inkarnaciji - Object Pascal, Delphi. Delphi je razvijen od strane korporacijeBorland za svestrani razvoj aplikacija od sistemskih alata i igara do desktop, database i višeslojnih kompleksnih aplikacija za (CP/M,MS-DOS iMS Windows 3.xx u prošlosti...) i MSWindows,.NET iLinux platforme.

Prvu implementaciju Pascala napravio je Niklaus Wirth za računaloCDC 60001970. uZürichu, dok je prvi program prevodilac za Pascal napisan uSAD-u bio stvoren naUniversity of Illinois u nadležnostiDonalsa B. Gilliesa za porodicu računala DECPDP-11 uassembleru. Niklaus Wirth je olakšao presađivanje Pascala na druga računala tako što je stvorio kit za portiranje, što je imalo za cilj da smanji količinu posla potrebnog za stvaranje programa prevodioca s jedne porodice računala na druga. Misao je bila da program prevodilac za Pascal pretvori sve naredbe u jedan virtualni assembler, i tako da je programer samo trebao stvoriti program koji bi preveo taj virtualni assembler za ciljani računskistroj ili stvori simulator za virtualnu mašinu za ciljani stroj. Ovaj međustupanj postaje P-sistem.


Usporedba Object Pascala i ostalih objektno orijetiranih jezika

[uredi |uredi kôd]

Object Pascal/Delphi danas predstavlja vrh u razvoju softwarea.Programski jezik slijedi OOP principe i dodaje mnoštvo ekstenzija koje se mogu naći u najpoznatijim "C" jezicima (C,C++,C#), kao što su operator overloading, method overloading, inline methods, "rich" records (record s method-ima), itd...

Delphijevkompajler slovi kao najbrži kompajler među programskim jezicima u industriji softwarea (kompajliranje u izvršni program stotina tisuća linija koda traje samo nekoliko sekundi za razliku od tipičnih C/C++ kompajlera) proizvodeći pritom optimiziran kodbrzine usporedive s najboljim C/C++ kompajlerima.

Danas (Object) Pascal koristi preko milijun profesionalnih programera širom svijeta, a najnovije izdanje (Borland) Delphi 2006 unosi cijeli niz noviteta u razvojno okruženje (IDE).Tu se mogu naći UML modeliranje softwarea, integracija s alatima za configuration management (npr. Borland StarTeam), integracija s alatima za requirements management (npr. Borland Caliber), alatima za optimizaciju itd...

Programski primjeri

[uredi |uredi kôd]

Prvo jedan jednostavan programski primjer:

programDobarDan(input,output);beginwriteln("Dobardan!");end;

Složeniji programski primjer:

programkalkulator;UsesCrt;Label1;VarSto:String;p,d,z:Real;p2,d2,z2,z3:Integer;Begin1:Clrscr;z:=0;TextMode(2);TextColor(green);GotoXy(31,1);Write('KALKULAT 1.3');GotoXy(24,4);Writeln('1.Zbrajanje');GotoXy(25,5);Writeln('2.Oduzimanje');GotoXy(26,6);Writeln('3.Mnozenje');Gotoxy(27,7);WriteLn('4.Djeljenje');GotoXy(28,8);WriteLn('5.Djeljenje s ostatkom');GotoXy(29,9);WriteLn('Za izlaz pritisni tipku Q');Gotoxy(25,11);WriteLn('Odaberi i pritisni broj...');WriteLn;WriteLn;WriteLn('Napomena:');WriteLn('Program radi s najvise tri znamenke iza decimalne tocke!');WriteLn('Program ce se automatski ugasiti ako pri upisivanju broja upisete slovo!');WriteLn;WriteLn('CPYRIGHT (C) Lobel Strmečki');Sto:=Readkey;IfSto='1'thenBeginClrScr;Write('Upisi 1. broj:');Readln(p);Write('Upisi 2. broj:');Readln(d);z:=p+d;Writeln(p:2:3,'+',d:2:3,'=',z:2:3);WriteLn;Write('Pritisni tipku ENTER za povratak...');Readln;Goto1;End;IfSto='2'thenBeginClrScr;Write('Upisi 1. broj:');Readln(p);Write('Upisi 2. broj:');Readln(d);z:=p-d;WriteLn(p:2:3,' - ',d:2:3,' = ',z:2:3);WriteLn;Write('Pritisni tipku ENTER za povratak...');Readln;Goto1;End;IfSto='3'thenBeginClrScr;Write('Upisi 1. broj:');Readln(p);Write('Upisi 2. broj:');ReadLn(d);z:=p*d;WriteLn(p:2:3,'*',d:2:3,'=',z:2:3);WriteLn;Write('Pritisni tipku ENTER za povratak...');Readln;Goto1;End;IfSto='4'thenBegin;ClrScr;Write('Upisi 1. broj:');ReadLn(p);Write('Upisi 2. broj:');ReadLn(d);z:=p/d;WriteLn(p:2:3,'/',d:2:3,'=',z:2:3);WriteLn;WriteLn('Pritisni tipku ENTER za povratak...');ReadLn;Goto1;End;IfSto='5'thenBegin;ClrScr;Write('Upisi 1. broj:');ReadLn(p2);Write('Upisi 2. broj:');ReadLn(d2);z2:=p2divd2;z3:=p2modd2;Write(p2,' / ',d2,' = ',z2);WriteLn(' i ostatak ',z3);WriteLn;TextColor(white+2);WriteLn('Pritisni tipku ENTER za povratak...');ReadLn;Goto1;End;If(Sto='q')or(Sto='Q')thenBeginHalt;End;Ifnot(Sto='1')thenbegin;Goto1;End;End.

Prethodni program napisan na drugačiji način prilagođeniji novijim Pascal compilerima:

programcalculator;usescrt;vari,answer:integer;a,b,c:real;proceduremenu;beginwriteln('M E N U');fori:=1to7dowrite('=');writeln;writeln('Press 1 for adding');writeln('Press 2 for subtracting');writeln('Press 3 for multiplying');writeln('Press 4 for dividing');writeln('Press 5 to end the program');end;procedureadding;beginclrscr;writeln('Type the two numbers you wish to add together. ');readln(a,b);writeln('The operation: ',a:0:3,' + ',b:0:3,' = ',(a+b):0:3);writeln('Press enter to return to the menu.');readlnend;proceduresubtracting;beginclrscr;writeln('Type the two numbers you wish to subtract. ');readln(a,b);writeln('The operation: ',a:0:3,' - ',b:0:3,' = ',(a-b):0:3);writeln('Press enter to return to the menu.');readlnend;proceduremultiplying;beginclrscr;writeln('Type the two numbers you wish to multiply. ');readln(a,b);writeln('The operation: ',a:0:3,' x ',b:0:3,' = ',(a*b):0:3);writeln('Press enter to return to the menu.');readlnend;proceduredividing;beginclrscr;writeln('Type the two numbers you wish to divide. ');readln(a,b);writeln('The operation: ',a:0:3,' / ',b:0:3,' = ',(a/b):0:3);writeln('Press enter to return to the menu.');readlnend;beginclrscr;writeln('<The calculator for basic four operations>');writeln('My first ever program with a purpose!');writeln('Programmed by me, Kristijan Bambir');writeln('Not meant for further copying or selling!');writeln('The rezults will have a maximum of 3 numbers after the decimal point.');writeln('If you type a letter instead of a number the program will end.');writeln;writeln('Press enter to continue...');readln;repeatclrscr;menu;writeln;write('Choose your desired operation. ');readln(answer);caseanswerof1:adding;2:subtracting;3:multiplying;4:dividing;5:writeln('End of program');end;untilanswer=5;writeln;writeln('Thank you for at least trying my program.');writeln('Have a nice day!');writeln('P.S. Press enter to exit');readlnend.

Standardi

[uredi |uredi kôd]

Poznate inačice Pascala

[uredi |uredi kôd]

Javno dostupni prevodioci

[uredi |uredi kôd]

NaInternetu su dostupni mnogi besplatni programi prevodioci:

Iscrpni popisi Pascal programa prevodilaca dostupni su saPascaLandArhivirana inačica izvorne straniceod 5. rujna 2020. (Wayback Machine) iPascal CentralArhivirana inačica izvorne straniceod 10. ožujka 2010. (Wayback Machine).

Vanjske poveznice

[uredi |uredi kôd]
Logotip Zajedničkog poslužitelja
Logotip Zajedničkog poslužitelja
Zajednički poslužitelj ima još građe o temiPascal (programski jezik)
Dobavljeno iz "https://hr.wikipedia.org/w/index.php?title=Pascal_(programski_jezik)&oldid=6985034"
Kategorija:

[8]ページ先頭

©2009-2026 Movatter.jp