AsD, ho visto solo ora l'edit.
Tra fare un programma che, al posto di rilevare due interi, rilevi altri tipi di variabili cambia solo il dimensionamento delle variabili: al posto di
var num1,num2:integer; metti
var num1,num2:float;
In questo caso viene richiesto l'intero, ma è solo perché è un programma a scopo didattico, altrimenti si sarebbe scelto un altro tipo di variabile a seconda delle necessità.
Mentre ripulivo il desktop ho trovato gli esercizi, visto che è un po' che non ci si sente te li posto tutti (tanto ne mancavano due, e probabilmente li hai già finiti):
Codice:
(* radice quadrata *)
program radiceQuadrata;
uses crt;
var x,rad_x:real;
begin
clrscr;
write('Inserire un numero: ');
readln(x);
if x>=0 then
begin
rad_x:=sqrt(x);
writeln('La radice quadrata di ',x,' è ',rad_x);
end
else
writeln('La radice quadrata di ,x, è un numero immaginario');
writeln('Premere invio per chiudere...');
readln
end.
(* fine *)
(* pari o dispari *)
program pariDispari;
uses crt;
var num:integer;
begin
clrscr;
write('Inserire un numero: ');
readln(num);
if num > 0 then
begin
if (num mod 2)=0 then
writeln('Il numero ',num,' è pari')
else
writeln('Il numero ',num,' è dispari');
end
else
writeln(num' è inferiore a 0');
writeln('Premere invio per chiudere...');
readln
end.
(* fine *)
(* divisibili per 2 e 3 *)
program divisibilita2e3;
uses crt;
var num1,num2:integer;
begin
clrscr;
write('Inserire numero1: ');
readln(num1);
write('Inserire numero2: ');
readln(num2);
if (((num1 mod 2)=0) and ((num1 mod 3)=0)) then
begin
if (((num2 mod 2)=0) and ((num2 mod 3)=0)) then
writeln('Sia ',num1,' che ',num2,' sono divisibili per 2 e per 3')
else
writeln('Solo ',num1,' è divisibile per 2 e per 3');
end
else
begin
if (((num2 mod 2)=0) and ((num2 mod 3)=0)) then
writeln('Solo ',num2,' è divisibile per 2 e per 3')
else
writeln('Ne ',num1,' che ',num2,' sono divisibili per 2 e per 3');
end;
writeln('Premere invio per chiudere...');
readln
end.
(* fine *)
(* calcolatrice *)
program calcolatrice;
uses crt;
var num1,num2,risultato:real;
var operazione:integer;
begin
clrscr;
write('Inserire numero1: ');
readln(num1);
write('Inserire numero2: ');
readln(num2);
write('Operazione 1=addizione 2=sottrazione 3=moltiplicazione 4=divisione : ');
readln(operazione);
if operazione=1 then
risultato:=num1+num2;
if operazione=2 then
risultato:=num1-num2;
if operazione=3 then
risultato:=num1*num2;
if operazione=4 then
begin
if num2=0 then
writeln('Impossibile dividere per 0')
else
risultato:=num1/num2;
end;
writeln('Risultato = ',risultato);
writeln('Premere invio per chiudere...');
readln
end.
(* fine *)