Pascal/Librerie e funzioni predefinite: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
m rilettura |
|||
Riga 1:
{{Programmare in Pascal}}
Una '''libreria''' non è altro che un file contenente varie procedure, funzioni e/o costanti che possono essere utilizzate una volta
Il Turbo Pascal utilizza come libreria standard ''Turbo.tpl''. Questa contiene tutte le funzioni di base. Non viene mai invocata, perché lo fa in automatico il compilatore
Dall'ultimo programma osservato si nota come deve essere fatta la dichiarazione delle librerie:
uses ''nomelibreria1, nomelibreria2, ...'';
''uses'' è una parola riservata, quindi non può essere usata come nome di variabile o funzione. La dichiarazione delle librerie deve precedere quella delle variabili.
Le librerie e le rispettive funzioni analizzate in questa pagina sono chiamate "'''librerie predefinite'''" in quanto sono di norma distribuite di default dal compliatore in uso. È infatti possibile anche creare librerie personalizzate per poter agevolare il proprio lavoro in più programmi differenti.
Riga 16:
=== Funzioni di crt ===
'''clrscr;'''
Questa funzione permette di pulire lo schermo e di posizionare il cursore in alto a sinistra in posizione (1,1)
'''cursoroff; '''
'''cursoron;'''
Queste due funzioni permettono di spegnere o accendere il cursore.
'''gotoXY(''posX'', ''posY'');'''
Questa procedura permette di posizionare il cursore in una posizione precisa sullo schermo.
'''sound(''hz'');'''
'''nosound;'''
La funzione ''sound'' fa emettere alla macchina un suono alla frequenza ''hz''. Per fermare questo suono bisogna assolutamente utilizzare la procedura ''nosound''
'''delay(''time'');'''
Questa funzione fa sì che il sistema si fermi in pausa per un certo numero di millisecondi definito da ''time''. L'uso della procedura <code>delay</code> è tipicamente usata quando si fa uso di suoni. La struttura d'uso generalmente è la seguente:
Line 38 ⟶ 33:
Il risultato è un LA di durata un secondo.
La funzione delay() è però basata sul clock del processore per calcolare il tempo, quando è stato creato il Pascal ovviamente i processori non avevano la potenza di oggi. La funzione delay() è quindi difficile da controllare ma se si vogliono ottenere ritardi definiti con bassa precisione cronometrica si possono inserire più delay() di seguito o sfruttare i cicli.
'''keypressed'''
Questa funzione è di tipo boolean, inizialmente è false e restituisce true appea l'utente preme un tasto.
Line 47 ⟶ 41:
until keypressed;
in questo modo le istruzioni vengono ripetute fino a quando l'utente non preme un tasto.
'''readkey'''
Funzione che permette di leggere un carattere inserito da tastiera senza visualizzarlo.
x:=readkey;
Se si utilizza dopo "keypressed", si legge direttamente il carattere premuto per fare diventare "keypressed" false. Esempio:
repeat
Line 60 ⟶ 51:
x:=readkey;
a questo punto l'utente ha premuto un tasto, con il quale è uscito dal ciclo e ha assegnato il carattere char alla variabile X.
'''textcolor(''numero'');'''
'''textbackground(''numero'');'''
Permettono di cambiare colore al testo e allo sfondo rispettivamente. Il codice di colore può anche essere il nome in inglese del colore. Questo perché nella libreria crt sono definite anche alcune costanti fra cui proprio quelle relative ai colori. Fra l'altro si può utilizzare anche la costante blink, per creare testo intermittente. Questo uso deve essere fatto così:
textcolor(white+blink);
Tuttavia, se per compilare il programma si usa Turbo Pascal,
▲Tuttavia,se per compilare il programma si usa Turbo Pascal,se si usa la unit ''crt'' quando viene compilato il programma,potrebbe comparire l'errore ''Runtime Error 200:divide by 0'' pur senza che vi sia alcuna divisione per 0 all'interno del programma.Questo è dovuto a un problema d'incompatibilità,che non si verifica però se si usa un altro compilatore.
==== Tabella: Le frequenze delle note ====
|