Archivio per la categoria 'Pascal'
Il linguaggio Pascal è un linguaggio ormai caduto in disuso ma è tuttavia ancora utilizzato in molte scuole per apprendere le basi della programmazione e per vederne le applicazioni alla matematica. Vediamo quindi un classico esempio che è la stampa a video delle tabelline.
Innanzitutto dichiariamo il nome del nostro programma, quindi includiamo la libreria “crt" che contiene il comando clrscr (pulisce lo schermo).
program tabellina;
uses crt;
Ora dichiariamo 3 variabili, corrispondenti ai due fattori e alla variabile di ciclo (necessaria per far funzionare il ciclo for, viene incrementata ad ogni esecuzione del ciclo stesso).
var
fat1:integer;
fat2,i:integer;
Ecco il codice vero e proprio: puliamo lo schermo ad ogni nuovo avvio del programma e chiediamo all’utente fino a che tabellina vuole arrivare, quindi stampiamo a video utilizzando due cicli for annidati: uno per le righe ed uno per le colonne.
begin
clrscr;
writeln(‘Fino a che tabellina?’);
readln(fat2);
for i:=1 to fat2 do
begin
for fat1:=1 to 10 do
write(i*fat1:4,’ ‘);
writeln;
end;
readln;
end.
Se sul nostro PC non è collegata alcuna cassa, possiamo utilizzare una funzione apposita della libreria Pascal “crt” per far suonare lo speaker interno (solitamente si trova su tutti i computer fissi). La funzione in questione è “sound”: ora vedremo come utilizzarla, con un programma di esempio (codice a fine articolo).
Innanzitutto scriviamo il nome del programma (in questo caso “program esempio;”), quindi includiamo “crt” (“uses crt;”). Iniziamo a scrivere il nostro blocco di codice (“begin”) e usiamo la funzione sound, seguita dalla frequenze del suono espressa in hertz (“sound(400);”).
Quindi utilizziamo il comando delay in modo da stabilire per quanto tempo dovrà durare il suono, in millisecondi (“delay(500);”) e il comando nosound per farlo smettere (“nosound;”). Chiudiamo il blocco di codice con un semplice “end.”.
Ovviamente potrete sbizzarrirvi come meglio credete, giocando con frequenze e durate, motivo per cui riporto una tabella con le frequenze delle varie note:
| Do |
262 |
| Do#/Reb |
277 |
| Re |
294 |
| Re#/Mib |
311 |
| Mi |
330 |
| Fa |
349 |
| Fa#/Solb |
370 |
| Sol |
392 |
| Sol#/Lab |
415 |
| La |
440 |
| La#Sib |
466 |
| Si |
494 |
Codice:
program esempio
begin
sound(400);
delay(500);
nosound;
end.