ho un problema in pascal non so come visualizza da un elenco di nomi solo i nomi che cominciano con la c.
i nomi sono memorizzati in un file .dat
ho un problema in pascal non so come visualizza da un elenco di nomi solo i nomi che cominciano con la c.
i nomi sono memorizzati in un file .dat
Se ti serve qualche chiarimento sono qui.codice:program quello_che_vuoi; uses crt; const n=10; type generico = record appoggio:string[30]; end; classe=array[1..n] of generico; var i:integer; conf:text; {file di testo} c:classe; carattere:char; stringa:string; trovato:boolean; Begin clrscr; Write('quale carattere vuoi cercare nel file? '); readln(carattere); {$I-} ASSIGN(conf,'c:\nome_file.txt');{gli puoi mettere qualsiasi estensione!} RESET (conf); i:=1; while (not(eof(conf))) do begin ReadLn(conf,c[i].appoggio); i:=i+1; end; CLOSE (conf); {$I+} {per vedere se la riga "i" del file inizia con una lettera che vuoi tu basta mettere riga per riga in una stringa e verificare} trovato:=false; for i:=1 to 100 do Begin stringa:=c[i].appoggio; if stringa[1]=carattere then begin write('trovato "',carattere,'" alla riga ',i); trovato:=true; end; end; if trovato=false then write('non trovato'); readln; End.
program persona;
uses crt;
CONST
lunghezmax=30;
Type
persona =RECORD
Nome:String[10];
Cognome:String[10];
data:string[10];
Sesso:Char;
END;
Var
Anagrafe:file of persona;
Indfile:string;
persona1ersona;
clrscr;
reset (anagrafe);
Writeln ('Nominativi Trovati');
while not (eof(anagrafe)) do
begin
read (anagrafe, persona1);
Qui devo inserire la condizione se il cognome inizia con la 'c' e di sesso 'm' visulizzalo sullo schermo come devo scrivere questa condizione
If (persona1.sesso = 'm') and ???????? then
writeln (persona1.Cognome, ' ', persona1.nome, ' ', persona1.sesso);
i:=i+1;
end;
readln;
end.
Quando inserisci codice nel forum lo devi racchiudere tra [CODE*] il tuo codice e [/CODE*] senza asterischi
codice:program quello_che_vuoi; uses crt; const n=10; type generico = record appoggio:string[30]; end; classe=array[1..n] of generico; var i:integer; conf:text; {file di testo} c:classe; carattere:char; stringa:string; trovato:boolean; Begin clrscr; Write('quale carattere vuoi cercare nel file? '); readln(carattere); {$I-} ASSIGN(conf,'c:\nome_file.txt');{gli puoi mettere qualsiasi estensione!} RESET (conf); i:=1; while (not(eof(conf))) do begin ReadLn(conf,c[i].appoggio); i:=i+1; end; CLOSE (conf); {$I+} {per vedere se la riga "i" del file inizia con una lettera che vuoi tu basta mettere riga per riga in una stringa e verificare} trovato:=false; for i:=1 to 100 do Begin stringa:=c[i].appoggio; if (stringa[1]=carattere) AND (stringa[1]='M') then begin write('trovato "',carattere,'" alla riga ',i); trovato:=true; end; end; if trovato=false then write('non trovato'); readln; End.
Grazie mille
Prego duemila