Tutorial pascal

« Older   Newer »
  Share  
manuel92pucetto
view post Posted on 26/8/2008, 15:52




Guida al linguaggio di programmazione Pascal

Indice:

1. Introduzione
2. Struttura del pascal e prime istruzioni
3. Esempi di programmi
4. If… then… else…
5. Alcune funzioni grafiche
6. Turbo Pascal 7.0
7. Conclusione

Introduzione

Questa guida è stata creata per coloro che vogliono entrare nel mondo della programmazione.
Io non v’insegnerò ad usare il computer, ma soltanto a fare programmi, quindi prima di continuare dovete sapere cos’è un programma eseguibile e anche come funziona un po’ il pc. Se ancora non sapete fare queste due cose, non cominciate a comprarvi manuali, libri, … Io ho imparato ad usare il computer da solo, magari facendo qualche casino qua e la…, ma non importa.

Passiamo alla programmazione. Esistono vari linguaggi di programmazione, e tutti necessitano di un programma compilatore che crei il file eseguibile dal codice sorgente del nostro programma. Il compilatore che si usa per il Pascal è Turbo Pascal 7.0.

Il linguaggio Pascal è stato creato da un gruppo di ricercatori guidato da Niklaus Wirth negli anni 70 a Zurigo.
Entriamo ora nel vivo del Pascal.

Struttura del Pascal e prime istruzioni

Per capire la struttura del linguaggio Pascal, analizziamo un sorgente esempio:

Program esempio;
(* PARTE DICHIARATIVA *)
Begin
(* PARTE OPERATIVA *)
End.

La prima istruzione fondamentale ed obbligatoria in Pascal è PROGRAM <nome programma>;
Innanzitutto: in pascal tutto ciò che si trova tra (* *) e { } è un commento. Ciò vuol dire che il Turbo Pascal ignorerà tutto quello che vi è scritto. Queste istruzioni si chiamano commenti e sono utili per scrivere cosa si sta facendo, soprattutto in programmi molto lunghi.
Subito dopo PROGRAM viene la parte dichiarativa del programma: qui vengono dichiarate le variabili e le costanti. Le variabili sono ciò che può variare durante l’esecuzione di un programma: ad esempio, in un programma che calcoli la somma tra due numeri, ci sarebbero tre variabili: i due numeri ed il totale. Vedremo in seguito come dichiarare le variabili. Le costanti sono ciò invece che non cambia tra un’esecuzione e l’altra del programma: un esempio concreto è il pi greco. Spiegheremo in seguito anche come dichiarare le variabili.
La parte operativa è la zona dove avviene il funzionamento del programma e dove ci sono le istruzioni da eseguire. Questa comincia con BEGIN e termina con END. (punto).

Ora analizziamo un programmino un po’ più complesso (per adesso):

Program somma_di_due numeri;
Var
a,b,tot : integer;
Begin
write (‘Inserisci il primo numero:’);
read (a);
write (‘Inserisci il secondo numero:’);
read (b);
tot := a + b;
writeln (‘Il totale è ‘,tot,’’);
End.

Sicuramente non ci avrete capito quasi nulla. Analizziamo come viene dichiarata una variabile:

Var
a,b,tot : integer;

Occorre innanzitutto scrivere VAR e poi le vare variabili. INTEGER è il tipo di variabile. Ecco i tipi di varibile:
integer : numero intero
real : numero reale
char : carattere (codice ASCII)
string[ ] : parola

Nel programma avevamo anche due istruzioni: WRITE e READ.
WRITE si usa per scrivere qualcosa sullo schermo. Deve essere seguito da parentesi e apici (‘ ‘) con all’interno il testo da scrivere. READ invece legge una variabile da tastiera. Quando compare questa istruzione comincia a lampeggiare il cursore e colui che esegue il programma può decidere il valore della variabile scrivendolo e premendo Invio.

Per dare noi stessi il valore ad una variabile, dobbiamo usare il comando [variabile] := [espressione].
L’espressione è un insieme di operazioni matematiche. Gli operatori sono:

+ : segno più - addizione
- : segno meno - sottrazione
* : segno per (asterisco) - moltiplicazione
/ : diviso - divisione.

Si possono usare anche le parentesi, soltanto quelle tonde. Ecco vari esempi sulla dichiarazione del valore di una variabile:

A := (A + B) / (A + C) { A più B diviso A più C }
A := A + 1 { aumenta di 1 il valore di A }
A := 5 ( A + B) { A + B per 5 }

Le costanti vengono dichiarate usando la parola Const al posto di Var:

Const
A = 5;

Spero che siate arrivati fin qui capendo tutto. Ora passiamo a vedere alcuni esempi di programmi in Pascal e poi all’uso di Turbo Pascal 7.

Esempi di programmi

Pensiamo alla creazione di un programma che moltiplichi due numeri inseriti dell’utente. Dovremo dichiarare tre variabili ( a, b, prodotto ), far inserire dall’utente due variabili (con l’istruzione Read) e calcolare il prodotto mostrandolo.
Ecco qua come dovrebbe essere:

Program moltiplicazione;
Var
a,b,prodotto : integer;
Begin
write (‘Inserisci il primo numero da moltiplicare:’);
read (a);
write (‘Inserisci il secondo numero da moltiplicare:’);
read (b);
prodotto := a * b;
write (‘Il prodotto è’,prodotto,’’);
End.

Sulla strada di questo programma dovreste essere in grado di farne uno (da soli) che sottragga due numeri.
Prima di continuare a leggere provate a farlo da soli e poi continuate per correggere eventuali errori:

Program sottrazione;
Var
a,b,risultato : integer;
Begin
write (‘Inserisci il primo numero della sottrazione:’);
read (a);
write (‘Inserisci il secondo numero della sottrazione:’);
read (b);
risultato := a - b;
write (‘Il risultato è ‘,risultato,’’);
End.

Avrete notato che con le istruzioni write e read il testo si accoda sempre a quello precedente. Se volete che ogni volta vada a capo dovete usare WRITELN e READLN al posto di write e read.

If… then… else…

Eccoci ora davanti ad una delle funzioni più utili del Pascal (presente anche in altri linguaggi):

If… then… else… (che sta per se… allora… altrimenti…)

Questa funzione permette di fare una certa cosa solo se ne accade un’altra. Pensiamo all’ultimo programma della sottrazione di due numeri: ora potremmo fare un programma che sottragga il numero più piccolo al numero più grande così da evitare numeri negativi.
La funzione IF - THEN - ELSE si usa così:

IF [cosa che deve accadere] THEN [cosa si deve fare] ELSE [altrimenti fare questa cosa]

Attenti: IF e THEN sono obbligatori, ma ELSE è facoltativo.
Passiamo ora al nostro programma:

Program sottrazione;
Var
a,b,risultato : integer;
Begin
writeln (‘Primo numero:’);
read (a);
writeln (‘Secondo numero:’);
read (b);
if a > b then risultato := a - b; else risultato := b - a;
writeln (‘Risultato =’,risultato’’);
End.

Ecco le funzioni che si possono usare con IF-THEN-ELSE:

= : uguale
> : maggiore
< : minore
=> : maggiore o uguale
=< : minore o uguale
<> : diverso

Avete capito? Spero di sì. Sarò buono e vi farò un altro esempio. Un programma che riferisce se la persona può votare o no. State attenti e studiatelo attentamente, perché non è molto facile. Utilizza anche variabili di testo.

Progam voto;
Var
Nome : string[20[;
eta : integer;
Begin
Writeln (‘Inserisci il tuo nome:’);
read (nome);
writeln (‘Inserisci la tua età:’);
read (età);
if età => 18 then writeln (,nome,’puoi votare’); else writeln (,nome,’non puoi votare’);
End.

Anche questa sezione è finita. Passiamo alla quinta sezione dove analizzeremo alcune funzioni grafiche.

Alcune funzioni grafiche

Scrivendo tra Program e Var questa stringa sarà possibile usare alcune funzioni grafiche (spiegate dopo):
Uses CRT;

Le funzioni che vedremo serviranno a: cancellare le scritte sullo schermo, cambiare il colore del testo e dello sfondo.

Per cancellare tutte le scritte sullo schermo (utile ad inizio esecuzione):

clrscr;

Questa parola senza significato è invece un abbreviazione di Clear Screen, che vuol dire Cancella lo schermo.

Per decidere il colore del testo:

Textcolor(colore);

Ecco alcuni colori utilizzabili: black, red, yellow, green, white, lightred.
Questa funzione può essere usata più volte all’interno di un programma.

Per decidere lo sfondo del testo:

TextBackGround(colore);

I colori da utilizzare sono gli stessi della funzione textcolor.

Turbo Pascal 7.0

Borland Turbo Pascal 7.0 (abbreviato con TP) è il compilatore più usato per questo linguaggio di programmazione. E’ in inglese, ma facilissimo da usare. Per quelli che non conoscono l’inglese ecco una piccolissima guida ai comandi fondamentali:

File New -> Nuovo file
File Open -> Apre un sorgente esistente
File Save -> Salva il sorgente
Run Run -> Esegue il programma
Compile Make -> Crea un file eseguibile (EXE)

Se il vostro programma presenta degli errori TP vi aiuterà a correggerli.
TP include anche un help in inglese.
 
Top
† bird92 †
view post Posted on 18/11/2008, 20:34




Ma turbo pascal compila soltanto per windows? EXE è un formato per windows...
non è compatibile anche con linux il pascal?
 
Top
greywolf92
view post Posted on 20/11/2008, 14:41




Per linux esiste il Gnu Pascal

 
Top
† bird92 †
view post Posted on 22/11/2008, 18:35




CITAZIONE (greywolf92 @ 20/11/2008, 14:41)
Per linux esiste il Gnu Pascal

:o: :o:
Non lo sapevo!!!

Wow, grandissimo greywolf!
 
Top
greywolf92
view post Posted on 22/11/2008, 19:29




Con la scuola ho già imparato le basi del pascal, ma dato che andiamo molto a rilento volevo studiare da solo qualche guida per approfondirlo.... Secondo voi mi conviene studiarlo bene? oppure come linguaggio di programmazione non è un gran chè e dovrei dedicarmi a qualche altro ?
 
Top
~ Lucius
view post Posted on 1/12/2008, 20:15




più ne sai e meglio è! :lol:
 
Top
† bird92 †
view post Posted on 1/12/2008, 22:02




CITAZIONE (greywolf92 @ 22/11/2008, 19:29)
Con la scuola ho già imparato le basi del pascal, ma dato che andiamo molto a rilento volevo studiare da solo qualche guida per approfondirlo.... Secondo voi mi conviene studiarlo bene? oppure come linguaggio di programmazione non è un gran chè e dovrei dedicarmi a qualche altro ?

secondo me devi cominciare con l'html, poi il perl, poi il python, il php il flash e poi poi poi il c o il c++...
È una lunga strada...
 
Top
!1 BUB 1!
view post Posted on 3/12/2008, 18:34




nn riesco a istallare gnu pascal...come devo fare???
 
Top
SlackStood
view post Posted on 4/12/2008, 14:56




Vorrei segnalarvi anche freepascal: http://www.freepascal.org/download.var che è ottimo.
Per installarlo basta compilare i sorgenti normalmente come anche per gnu pascal...
 
Top
greywolf92
view post Posted on 4/12/2008, 15:01




CITAZIONE (SlackStood @ 4/12/2008, 14:56)
Vorrei segnalarvi anche freepascal: http://www.freepascal.org/download.var che è ottimo.
Per installarlo basta compilare i sorgenti normalmente come anche per gnu pascal...

:quoto: E' molto meglio del turbo Pascal
 
Top
SlackStood
view post Posted on 4/12/2008, 15:05




Adesso non so come è messo turbo pascal sono un sacco di anni che non codo più in pascal...
Però io ho quasi sempre usato free pascal.
 
Top
greywolf92
view post Posted on 4/12/2008, 15:17




Recentemente ho provato ad installare turbo pascal : lo schermo era piccolissimo e non si poteva ridimensionare e la tastiera era impostata come quella inglese ( e quindi premendo ad esempio ":" mi scriveva "<") senza possibilità di cambiarla. Ho scaricato moltissime versioni ma tutte con lo stesso problema. Navigando su internet ho visto che l' unica soluzione era quella di installare il freepascal :P
 
Top
SlackStood
view post Posted on 4/12/2008, 15:23




Ehm...ricordo che per il ridimensionamento c'è una combinazione di tasti ma non la ricordo...
Poi se usi vista è vero che turbo pascal non funziona come si deve, da quello che so su xp e versioni precedenti dovrebbe funzionare.
 
Top
greywolf92
view post Posted on 4/12/2008, 15:46




Su Vista per il ridimensionamento non c' era niente da fare :(
Sulle altre versioni anch'io so che dovrebbe funzionare bene ma sul web molti lo sconsigliano dato che ormai è "superato" :lol:
 
Top
15 replies since 26/8/2008, 15:52   3245 views
  Share