esercizi di vario tipo con turbo pascal 1.1 su mac
program prog1; { versione turbo pascal 1.1 } { parentesi grafe con OPZIONE e tonde } { parentesi quadre [] con SHIFT-OPZIONE tonde } { sbarra rovescia \ con SHIFT-OPZIONE : } { ------------------------------------------} { per scrivere programma con turbo pascal } { caricare da disco TURBO PASCAL } { FILE-NEW per scrivere programma } { COMPILE-CHECK SYNTAX per verificare sintassi } { FILE-SAVE AS per registrare su disco dati } { COMPILE-RUN per attivare programma corrente} { FONT per selezionare font carattere:es.CHICAGO } { FORMAT per selezionare dimensioni e tipo:es.POINT 12 } { FILE-CLOSE per chiudere programma corrente } { FILE-OPEN per caricare file da disco } { FILE-PRINT per stampare file su carta } { EDIT per manipolazione testo CUT-COPY-PASTE-CLEAR-SHIFT } { SEARCH per ricerca testo FIND-CHANGE } { =================================================}
var a,b,c:integer; testo1,testo2:string;
begin testo1:=('premi return per continuare'); testo2:=('risultato='); a:=5; b:=6; c:=a+b; writeln('numeri da sommare'); writeln(a); writeln(b); writeln(testo2); writeln(c); writeln('-------------------'); writeln(testo1); readln; end.
program prog2; { funzioni matematiche semplici }
var a,b,c:integer; radiante,r:real;
begin radiante:=30*3.14/180; b:=100; r:=sqrt(b); writeln(r); r:=sqr(b); writeln(r); r:=ln(b); writeln(r); writeln(exp(3)); writeln(sin(radiante)); writeln(cos(radiante)); writeln(sin(radiante)/cos(radiante)); writeln(arctan(1)); writeln(trunc(6.8)); writeln(round(7.9)); writeln(abs(-6)); writeln(pred(10)); writeln(succ(10)); writeln(chr(65)); writeln(pred('E')); writeln(succ('E')); writeln(ord('A')); readln; a:=-5; writeln(-a); writeln(100 mod 8); writeln(100 div 9); writeln(5*8); writeln(5+9); writeln(30-9); writeln(100/2); writeln(100/3); readln; end.
program prog3; { esempi con funzioni stringa }
var punto:integer; frase,copia,introduci:string; begin writeln(length('parola')); frase:=concat('maria','rosa'); writeln(frase); copia:=copy('aaabbbccc',4,3); writeln(copia); punto:=pos('A','PADOVA'); writeln(punto); readln; end.
program prog4; { iterazione con FOR }
var a,b,c,d:integer; begin write('scrivi numero dati='); readln(d); for a:=1 to d do begin write('scrivi numero intero='); readln(b); c:=b*10; writeln(b,'....',c); end; WRITELN('premi return'); readln; end.
PROGRAM prog5; { gestione stringa } var a:integer; i,r,m,x:string; begin writeln('scrivi parola > 8 lettere '); readln(x); a:=length(x); writeln('lunghezza=',a); i:=copy(x,1,4); writeln('radice=',i); r:=copy(x,a-2,3); writeln('finale=',r); m:=copy(x,4,2); writeln('medio=',m); writeln('premi return'); readln; end.
program prog6; { uso di vettore }
var a:integer; vet:array[1..5] of integer;
begin for a:=1 to 5 do begin write('dato n.',a,'..='); readln(vet[a]); end; writeln('---------------'); for a:=1 to 5 do writeln(vet[a]); writeln('-------------'); for a:=5 downto 1 do writeln(vet[a]); writeln('--------------'); writeln('premi return'); readln; end.