[ Foro de Pascal ]
Hola tengo que hacer un programa que cuenta cuantas "a", "b", "C", etc tiene la constitucion argentina, hay alguna funcion o forma de no crear una condicional gigante?
program Constitucion2uno;
uses crt;
var Fc : Text ;
nom : String;
art:char;
cuenta:integer;
BEGIN
nom:='C:\UBI\CNconSL.TXT';
Assign(Fc,nom );
ReSet(Fc);
cuenta:=0;
While not(Eof(Fc)) do begin
Read(Fc, Art);
if IoResult = 0 then
Else
Write('IoResult <> 0');
If (art = 'A') or (art = 'a') then begin
While Not(Eof(Fc)) and (art = 'A')or (art = 'a') do begin
cuenta:=cuenta+1;
Write(Art) ;
Read(Fc, Art);
end ;
end;
End;
write(cuenta);
Close(Fc);
END.
En general, no te hará falta crear un condicional gigante, ni con "if" ni con "case". Una alternativa mucho más compacta es usar un array en el que guardarás la cantidad de veces que aparece cada letra.
(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)