--programma : Conta righe e caratteri di un file --autore : G. Naini --revisore: G. Petrini with Ada.Text_Io, Ada.Integer_Text_Io, Ada.Command_Line, Ada.Strings.Unbounded; use Ada.Text_Io, Ada.Integer_Text_Io, Ada.Command_Line, Ada.Strings.Unbounded; procedure wcg is Mio_File : File_Type; Lung,ac : Natural; Num_char : Natural :=0; Num_righe : Natural :=0; --Num_parole : Natural :=0; Str : STRING(1..100); ch : CHARACTER; begin ac := Argument_Count; Put("Argument_Count: "); Put(ac,width=>2); New_line; if Ac /= 1 then Put("L'argomento dev'essere esattamente 1"); else Lung := Argument(1)'Last; Str(1..Lung) := Argument(1)(1..Lung); -- Put("Dammi un file di testo: "); -- Get_Line(Str, Lung); Open(Mio_File,In_File,Str(1..Lung)); New_Line; while not End_Of_File(Mio_file) loop if Num_righe > 0 then skip_line(mio_file); end if; while not End_Of_Line(Mio_file) loop get(mio_file, ch); Num_char:=Num_char+1; delay (0.005); Put(ch); end loop; Num_righe:=Num_righe+1; new_line; end loop; put("Numero caratteri: "); put(Num_char, width =>0); new_Line; put("Numero righe: "); put(Num_righe, width =>0); end if; end wcg;