Libreria crt

Topic sul pascal.

Libreria crt

Postby Fabriz on Tue Oct 03, 2006 9:44 pm

Siccome mi hanno dato il via libera, procedo.


Libreria Crt

Requisiti Minimi

# Conoscenza Parziale/Minima del concetto di Libreria in Programmazione;
# Conoscenza base del Linguaggio Pascal;


Dichiarazione

In Pascal (come in C, ad esempio) è necessario dichiarare le Librerie che si vorranno utilizzare nel programma. Questo solitamente è fatto dopo l'intestazione:
Code: Select all
Program libreria;
uses crt;


La parola riservata per la chiamata di Librerie è uses (come var o function). Tramite di essa potrò di seguito inserire il nome della Libreria, in questo caso crt (ma anche Dos, graph3 ecc...).

Funzioni disponibili con la Libreria

# Clrscr

Clrscr, come writeln o readln, non è altro che una procedura. Letteralmente significa clear screen e, intuitivamente, l'effetto risultante è la pulizia di tutto lo schermo.

Code: Select all
Program clear;
uses crt;
begin
       clrscr;
       writeln('Schermo Pulito');       
       readln
end,


Prima:

Code: Select all
C:\Documents and Settings\Fabriz\Desktop> program.pas //lancio il prog







Dopo:
Code: Select all
Schermo Pulito







# Delay

La procedura Delay, in inglese ritardo, ha la funzione di ritardare l'esecuzione di un programma. Sostanzialmente si basa sulla frequenza del computer per effettuare il ritardo.

Code: Select all
Delay(100);


La dichiarazione va fatta con un parametro attuale in ingresso, che corrisponde al numero di millisecondi da ritardare. Il paramtro passato è di formato "word" (non vi preoccupate se non sapete cosa sono, farò una guida anche su quello ;) ) ovvero può essere passato, al più, il più grande numero binario a 16 bit, cioe 2^16=65536, che tradotto corrisponde a poco più di un minuto.

# GoToXY

La procedura Goto permette di posizionarsi con il cursore in una determinata zona dello schermo. In ingresso vanno dati 2 valori che saranno rispettivamente No. Riga e Colonna relative alla posizione desiderata. I valori massimi sono 25(righe) e 80(colonne).

Code: Select all
Program goto;
uses crt;
begin
       writeln('Ciao!');
       gotoxy(1,20);       
       writeln('Ciao!');       
       readln
end,


Output:

Code: Select all
Ciao!              Ciao!       








# Textcolor & Textbackground

Due procedure che si occupano di un fattore più "estetico". La prima permette, con un paramtro in ingresso corrispondente al colore, di poter avere tutto il testo di un colore diverso dal bianco. La seconda invece si occupa dello sfondo.

Tabella dei colori:

0. Nero
1. Blu
2. Verde
3. Azzurro
4. Rosso
5. Rosso Magenta
6. Marrone
7. Bianco
8. Grigio
9. Blu elettrico
10. Verde chiaro
11. Celeste
12. Rosa
13. Rosso chiaro
14. Giallo
15. Argento

Questa tabella vale sia per il paramtro in ingresso nella procedure Textcolor che in Textbackground. Teoricamente esistono valori superiori al 15, che causano il lampeggio del testo (vedi Blink [128]), ma personalmente non l'ho mai provato, quindi non posso assicurare.


# Window

La procedure Window ha come utilizzo quello di limitare la scrittura ad un'area del video (un pò come Mouse Guardian di Keit per il mouse ;) ).
In ingresso vanno passati 4 paramtri, che corrispondono alle 2 coordinate dei due punti di limitazione (in alto a sinistra e basso a destra):

La sintassi è la seguente:

Code: Select all
Program winzoz;
uses crt;
begin
       window(1,1,80,25)
       readln
end,


In questo caso l'area delimitata sarà tutto lo schermo.



S.La lezione è terminata, andate in pace.
A.Rendiamo grazie a Dio.


#Disclaimer

Guida a cura di JsBach( che è più chic di S3raph :D ) per dubbi,chiarimenti,critiche e quant'altro:

# s3raph1c@gmail.com
# IRC server: irc.azzurra.org chan: #BigBug
# In giro per i Forums del mondo ;)
Bit wrote:Ma sisi cosa? che ca**o c'è da ridere? bha


Dead on my sweet Piano.


IO NON SONO AMICO DI GOOGLE
User avatar
Fabriz
Diagramma a Blocchi
 
Posts: 209
Joined: Sun Jul 02, 2006 4:15 pm

Libreria crt

Sponsor

Sponsor


Postby Falcon on Tue Oct 03, 2006 9:50 pm

Bella guida JsBach
Linux Slackware User
User avatar
Falcon
Java Programmer
 
Posts: 542
Joined: Sat Jul 08, 2006 8:38 am

Postby k8 on Tue Oct 03, 2006 9:59 pm

Bravo
Big-Bug cerca collaboratori.
Scrivete senza abbreviazioni e senza k, grazie.
k8
Admin
 
Posts: 2127
Joined: Tue Jun 06, 2006 4:00 pm

Postby Criphox on Tue Oct 03, 2006 11:34 pm

Davvero ottima, bravo :clap: :clap: :clap: :clap: :clap: :clap:
User avatar
Criphox
Algoritmo
 
Posts: 141
Joined: Tue Sep 05, 2006 10:28 pm
Location: Benevento


Return to Pascal

Who is online

Users browsing this forum: No registered users and 1 guest

cron