• Regolamento Macrocategoria DEV
    Prima di aprire un topic nella Macrocategoria DEV, è bene leggerne il suo regolamento. Sei un'azienda o un hosting/provider? Qui sono anche contenute informazioni per collaborare con Sciax2 ed ottenere l'accredito nella nostra community!

Guida Introduzione alla programmazione in pascal

Findix

Utente bannato
Autore del topic
1 Ottobre 2008
1.012
0
Miglior risposta
0
Buongiorno a tutti carissimi utenti dello sciax2, girando per queste sezioni ho notato che manca una vera e propria guida alla programmazione in pascal.

Purtroppo non sono un professore in materia quindi vi spiegherò principalmente quello che so...



LE BASI

Un programma in pascal comincia in questo modo:

Codice:
Perfavore, Entra oppure Registrati per vedere i codici!

l'inserimento di program é obbligatorio altrimenti non potremmo dare il via al nostro programma, dove vedete untitled naturalmente andrà il nome che vorrete assegnare al vostro programma.

Le // servono a fare un commento che rimanga su una sola linea, quindi se andate da capo non apparirà più in quel colore violaceo

Mentre le { } servono per un commento che sfocia su più righe (ricordatevi di chiudere la parentesi alla fine del commento.

Guardando bene, noterete la presenza delle scritte VAR e CONST.
Sotto alla scritta VAR dichiarerete le variabili da usare.

Esempio:

VAR
a, b, c, d: integer;

Mentre sotto la scritta CONST le costanti.

Esempio:

C: 10;
S: 1000;

da ricordare che i valori in VAR possono cambiare, ad esempio se metto un valore in a A successivamente questo valore può mutare, mentre in CONST il valore non cambierà mai.

Detto questo ci avviamo alla creazione di un programmino facile facile che mostri sullo schermo la somma tra tre numeri.



Codice:
Perfavore, Entra oppure Registrati per vedere i codici!

avrete sicuramente notato l'uso di alcune scritture nel nostro programma, bene vi spiegherò a cosa servono.

Innanzi tutto troviamo WRITE, questa scrittura serve a far apparire sullo schermo quello che scrivete tra le parentesi e tra gli apici WRITE('ciao') o solo un valore o un carattere WRITE (S). Troviamo anche WRITELN il quale ha la stessa funzione di WRITE, ma invece di scriverlo sulla stessa linea fa si che il programma vada daccapo.

Leggendo bene troviamo la funzione READLN, questa funzione serve per chiedere in INPUT dei valori o dei caratteri, sta all'utente decidere.

Notate che READLN(a) si differenzia da READLN; perché quest'ultimo é un comando che fa si che il prompt dei comandi non si chiuda quando l'utente digita un comando.

Infine troviamo l'istruzione := la quale é un'istruzione di assegnazione, cioé un'istruzione che serve a dare ad una variabile il valore di un'intera istruzione compiuta dopo :=

In breve

S:= A+B+C;

fa si che sia assegnato ad S la somma delle tre variabili A, B, C.

da ricordare alla fine di ogni istruzione ci deve essere il ; altrimenti commetterete un errore.

LE ISTRUZIONI DI CONTROLLO

In ogni programma che si rispetti ci deve essere un'istruzione che faccia si che ci sia un bivio, un'istruzione che serva a controllare e scrivere sullo schermo qualcosa se l'utente fa qualcosa di sbagliato o addirittura contenga altre istruzioni che servono se l'utente inserisce numeri negativi, positivi ecc. questa istruzione é rappresentata da:

IF (cosa devo controllare) begin
(istruzione)
end
else begin
(istruzione)
end;

ma vediamola sotto forma di programma.

P.S. (ricordate una cosa, l'istruzione else begin può essere omessa se non serve, mentre if then begin no)

Codice:
Perfavore, Entra oppure Registrati per vedere i codici!


lo scrivo adesso visto che prima l'ho scordato, la funzione WIRTE comprende anche la visione sullo schermo di un valore, basta chiudere l'apice, mettere una virgola dopo l'apice e mettere la lettera con la quale é rappresentata la variabile. Ricordate anche che la scritta in Rosso é quella che vedrete sullo schermo.

I CICLI


Finalmente passiamo alla parte che più mi piace, i cicli.
I cicli sono usati spesso quando c'é un'istruzione di controllo, questi servono a rifare un'azione più volte fino a quando l'istruzione di controllo non é stata soddisfatta.

Non so quanti cicli esistano, ma io ne conosco solo tre, e sono i seguenti:

Ciclo Pre-condizionale

While (istruzione di controllo)
do begin

(istruzione)

end;


Ciclo Post-condizionale


Repeat

(istruzioni)

until (istruzione di controllo);


Ciclo contatore

For (variabile) to (variabile) do begin

(blocco di istruzioni)

end;


praticamente c'é poco da dire, i cicli funzionano come li vedete negli esempi qui sopra, solo il ciclo FOR ha una pecurialità...

Codice:
Perfavore, Entra oppure Registrati per vedere i codici!

e sarebbe che conta tutti i numeri da un determinato valore ad un altro, mentre negli altri cicli se capita lo dovrete scrivere come istruzione.

Il ciclo FOR ha una seconda opzione, e cioé quella di contare i numeri dal più grande al più piccolo, cioé in ordine decrescente, e a differenza di

FOR TO DO BEGIN

questo ciclo si scrive così

Codice:
Perfavore, Entra oppure Registrati per vedere i codici!


la mia guida finisce qui, purtroppo non posso aggiungere altro visto che é un corso basilare per pascal, quindi sarebbe inutile spiegarvi altre cose.

Un saluto allo Sciax2


Credits To Findix

N.B. SE VOLETE RIPPARE ALMENO METTETE I CREDITI
--------------- AGGIUNTA AL POST ---------------
inserisco anche le varie misure che le variabili possono assumere

Byte = occupa 1 byte e può assumere valori da 0 a 255;
Shortint = occupa 2 bytes e può assumere valori da -128 a 127;
Word = occupa 2 bytes e può assumere valori da 0 a 65535;
Integer = occupa 2 bytes e può assumere valori da -32768 a 32767;
Longint = occupa 4 bytes e può assumere valori da -2147483648 a 2147483647;
Real = occupa 6 bytes e può assumere valori da -2,9e+39 a 1,7e+38 (11-12 cifre decimali);
Boolean = occupa 1 bit e può assumere due valori, true o false;
Char = occupa 1 byte e può assumere il valore di un carattere;
String = occupa un numero variabile di bytes (minimo 10), che varia a seconda della sua lunghezza. Può contenere sequenze di caratteri (frasi);
Text = serve per modificare i file (assume valori solo tramite la procedura assign).
 
Ultima modifica: