Cita:
Empezado por chino150
Esto es lo que e logrado gracias a su ayuda
...
...
...
pero debo de darle varios click al boton del mensaje para llegar al resultado final.
|
El problema que veo es que el ShowMessage lo has puesto dentro del ciclo for
; la idea principal es que primero se ejecute el ciclo(se haga todo el calculo necesario para saber la cantidad de vocales,consonantes,etc) y al final
recien se muestre los resultados, fuera del ciclo for.
De ésta manera:
Código Delphi
[-]procedure TForm1.Button1Click(Sender: TObject);
var
i,cont,numVoc, numConso :Integer;
const
Alfabeto=['A'..'Z'];
Vocales=['A','E','I','O','U','Á','É','Í','Ó','Ú'];
Consonantes=Alfabeto-Vocales;
begin
NumVoc := 0;
NumConso := 0;
for i:= 0 to Length(Memo1.Text) - 1 do begin if UpCase(Memo1.Text[i]) in Vocales then
Inc(NumVoc);
if UpCase(Memo1.Text[i]) in Consonantes then
Inc(NumConso);
end;Cont := Length( Memo1.Text);
ShowMessage(' letras: '+(IntToStr(Cont)) + ' Vocales: ' + (IntToStr(NumVoc)) +'Consonantes: '+ (IntToStr(NumConso))); ;
end;
end.
Nota: seguro está que tu código se puede optimizarlo mejor, pero como eres nuevo en programacion no te voy a exigir demasiado.
Saludos..