program Formula_di_Gauss;
uses crt;
var n,s,i:integer;
risp:string[10];
begin
repeat
clrscr;
s:=0;
writeln('
Calcolo della somma dei primi n numeri naturali
writeln('
tramite la formula di Gauss:
');
writeln('
n(n+1)/2
');
writeln;
writeln;
writeln('Fino a quale numero vuoi sommare?');
readln(n);
if (n<>0)and(n>0) then
for i:=1 to n do
s:=s+i;
if n<0 then
writeln('Numero non valido')
else
writeln('La somma dei primi ',n,' numeri naturali e'': ',s);
writeln;
writeln('Vuoi continuare? SI/NO');
readln(risp);
until Upcase(risp)='NO';
end.
program triangolo;
uses crt;
var n,i,k:integer;
riga:string;
begin
clrscr;
writeln('inserisci il numero di righe');
readln(n);
riga:='*';
writeln(riga:40+length(riga) div 2);
for i:=1 to n-1 do
');
begin
for k:=1 to i do
riga:=riga + '**';
writeln(riga:40 + length(riga) div 2);
riga:='*';
end;
readln
end.
program lancio_2_dadi;
uses wincrt;
var n,i,fd1,fd2,s2,s3,s4,s5,s6,s7,s8,s9,s10,s11,s12:longint;
p:real;
begin
randomize;
Writeln('Simulazione del lancio di 2 dadi');
writeln;
writeln;
writeln('Inserisci il numero di lanci:');
readln(n);
s2:=0;
s3:=0;
s4:=0;
s5:=0;
s6:=0;
s7:=0;
s8:=0;
s9:=0;
s10:=0;
s11:=0;
s12:=0;
for i:=1 to n do
begin
fd1:=random(6)+1;
fd2:=random(6)+1;
case fd1+fd2 of
2: s2:=s2+1;
3: s3:=s3+1;
4: s4:=s4+1;
5: s5:=s5+1;
6: s6:=s6+1;
7: s7:=s7+1;
8: s8:=s8+1;
9: s9:=s9+1;
10: s10:=s10+1;
11: s11:=s11+1;
12: s12:=s12+1;
end;
end;
Writeln('2 E'' uscito: ',s2,' volte');
Writeln('3 E'' uscito: ',s3,' volte');
Writeln('4 E'' uscito: ',s4,' volte');
Writeln('5 E'' uscito: ',s5,' volte');
Writeln('6 E'' uscito: ',s6,' volte');
Writeln('7 E'' uscito: ',s7,' volte');
Writeln('8 E'' uscito: ',s8,' volte');
Writeln('9 E'' uscito: ',s9,' volte');
Writeln('10 E'' uscito: ',s10,' volte');
Writeln('11 E'' uscito: ',s11,' volte');
Writeln('12 E'' uscito: ',s12,' volte');
writeln;
p:=s12/n;
writeln('probabilita'' che esca 12 = ', p:1:6);
writeln;
writeln('Premi un tasto per terminare il programma');
readln
end.
program project1;
uses crt;
var casuale, numero, i: integer;
risposta:char;
begin
repeat
clrscr;
writeln;
//writeln senza argomenti va a capo senza srivere nulla.
writeln;
writeln('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
);
writeln;
writeln('
GIOCA CON ME!
');
writeln;
writeln('Indovina il numero compreso tra 0 e 50 che ho scelto. Hai 5 possibilita''.');
writeln;
writeln;
writeln('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~'
);
writeln;
writeln;
writeln;
writeln;
randomize;
casuale:=random(51);
i:=0;
repeat
i:=i+1;
writeln;
write('Tentativo n',char(167),' ',i,': ');
(* chr(167) stampa il simbolo ° *)
readln(numero);
if casuale=numero then
writeln('Complimenti. Hai vinto!!!')
else
if numero>casuale then
writeln('Il numero scelto e'' piu'' piccolo')
else
writeln('Il numero scelto e'' piu'' grande');
until (i>=5) or (casuale=numero); // >= significa maggiore o uguale.
writeln;
if casuale<>numero then writeln('Mi dispiace. Hai perso! Ho scelto ',casuale); // <> signifiva diverso,
indica una disuguaglianza
writeln;
writeln('Vuoi giocare ancora? (S/N)');
readln(risposta);
until Upcase(risposta)='N'; // Upcase converte in maiuscolo il carattere memorizzato nella variabile risposta
// quindi possiamo rispondere sia con N che con n per terminare il programma.
writeln('Premi un tasto per terminare il programma.');
readln;
end.