Oppure

Loading
31/03/13 16:35
Crisped
Non capisco cosa ci sia di sbagliato in questo programma, qualcuno più esperto di me potrebbe correggermelo?

program dipendenti;
uses crt;
type q_nome= string [20];
var i, n, anno, anno_rif, cf: integer;
    qual, qual_rif: q_nome;
    stip: real;

procedure procedura(anno:q_nome; anno_rif:integer;
                    qual:q_nome; qual_rif:q_nome; cf:integer; stip:real);

Begin
  if (anno= anno_rif) and (qual= qual_rif) then
  writeln('il codice fiscale è ', cf, ' e lo stipendio è ', stip:6:2);
  readln;
end;

Begin
  clrscr;
  writeln('Inserisci l anno di riferimento');
  readln(anno_rif);
  writeln('Inserisci la qualifica di riferimento');
  readln(qual_rif);
  writeln('Inserisci il numero di dipendenti');
  readln(n);

  for i:=1 to n do
  begin
    writeln('Inserisci il codice fiscale');
    readln(cf);
    writeln('Inserisci lo stipendio');
    readln(stip);
    writeln('Inserisci la qualifica');
    readln(qual);
    writeln('Inserisci l anno');
    readln(anno);
    procedura(anno, anno_rif, qual, qual_rif, cf, stip);
  end;
end.









Ultima modifica effettuata da Crisped 31/03/13 16:36
aaa
31/03/13 16:57
Poggi Marco
Ciao!

Il programma non funziona perché nel sottoprogramma "procedura" anno è dichiarato come q_nome, - una stringa - anziché integer.
aaa
31/03/13 17:17
Crisped
Grazie mille ora va :)
aaa