Salve a tutti,
sono alle primissime armi con la programmazione in Delphi, lo svolgo per mezzo della scuola in cui pratico informatica e dunque programmazione. Avrei un compito per casa da svolgere, ma sono incappato in un piccolo errore x'D in pratica dovevo svolgere un applicazione che permettesse, inserito un elenco di persone con rispettiva età, di contare quanti fossero maggiorenni. Non ho avuto alcun problema fino a quando non mi è venuta in mente la brillante idea di inserire un contatore che mi permettesse, ogni tre stampe su listbox (quindi ogni tre righe), di cancellare il contenuto della listbox stessa. Il problema è che va in crash e continua a darmi un messaggio che c'è successivamente \:
Vi allego qui di seguito il codice, sperando che qualcuno mi aiuti a individuare l'errore e darmi una possibile soluzione:
Grazie in anticipo a tutti quelli che mi soccorreranno xDcodice:var Form1: TForm1; C:integer; Cont:integer; N:string[15]; E:integer; procedure TForm1.btn1Click(Sender: TObject); begin Cont:=0; while Cont<=3 do begin C:=0; Showmessage('Per interrompere l''inserimento delle persone premere asterisco ''*'' '); N:=inputbox('Inserisci il Nome', 'Nome:', ''); while N<>'*' do begin E:=strtoint(inputbox('Inserisci l''Età', 'Età', '')); if E>=18 then C:=C+1; N:=inputbox('Inserisci il Nome', 'Nome:', ''); end; if C=0 then Showmessage('Non ci sono Maggiorenni nell''elenco fornito in precedenza!') else lst1.Items.Add('Le persone Maggiorenni nell''elenco da lei fornito in precedenza sono:' + inttostr(C)); end; lst1.Clear; end;

Rispondi quotando
potresti ovviare al problema (io ci sto provando a fare un codice che selezioni ogni carattere) ma se hai detto che sei alle prime armi meglio lasciar perdere: Ti ho messo come discriminante lo "0"
