hello everyone, I am having problems with this program, I don´t know where is the problem. It´s function is to read a txt. So could yo help me?
this is the program:
And this is the txt:
5
ProfesorCiruela LlaveInglesa Cocina
SenioritaEscarlata activo Cocina 4 14
Estudio SalaDeBaile SenioraBlanco Candelabro
Vestibulo Salon SenioraCeleste Cuchillo SalaDeBillar Biblioteca SeniorVerde Tubo Invernadero SenioritaEscarlata Cuerda Comedor CoronelMostaza Revolver
CoronelMostaza activo Estudio 5 9
Vestibulo Salon SenioraCeleste Cuchillo Comedor
Estudio SalaDeBaile SenioraBlanco Candelabro SalaDeBillar Biblioteca SeniorVerde Tubo CoronelMostaza
SenioraBlanco activo Vestibulo 5 9
SalaDeBillar Biblioteca SeniorVerde Tubo CoronelMostaza
Estudio SalaDeBaile SenioraBlanco Candelabro Vestibulo Salon SenioraCeleste Cuchillo Comedor
SenioraCeleste activo SalaDeBillar 4 9
Invernadero SenioritaEscarlata Cuerda Revolver
Estudio SalaDeBaile SenioraBlanco Candelabro Vestibulo Salon SenioraCeleste Cuchillo Comedor
SeniorVerde eliminado Invernadero 0 14
Vestibulo Salon SenioraCeleste Cuchillo SalaDeBillar Biblioteca SeniorVerde Tubo Invernadero SenioritaEscarlata Cuerda Comedor CoronelMostaza Revolver
CoronelMostaza
this is the program:
program leerarchivo; const se='/'; type jugadores =(Jugador,CPU1,CPU2,CPU3,CPU4,CPU5); estado= (activo,eliminado); // estados de los jugadores en la partida mazo= (Biblioteca,Cocina,Comedor,Estudio,Vestibulo,Salon , Invernadero,SalaDeBaile,SalaDeBillar,SenioraBlanco , SenioraCeleste,ProfesorCiruela,SenioritaEscarlata, CoronelMostaza, SeniorVerde,Candelabro,Cuchillo,Cuerda,LlaveIngles a,Revolver,Tubo); lugares= Biblioteca..SalaDeBillar; personajes= SenioraBlanco..SeniorVerde; armas = Candelabro..Tubo; tablero= array [1..5] of array [1..5] of lugares; sobre= array [1..3] of mazo; manos= array [1..6] of array [jugadores] of mazo; listas= array [jugadores] of array [mazo] of boolean; //Lista de sospechosos posibles=array [1..9] of lugares; arreglo_cartas= array[1..18] of mazo; fichaTec=record // Datos de los participantes peon : personajes; // peon del jugador ubicacion:lugares; // ubicacion del jugador estatus: estado; // estado del jugador end; fichas = array [jugadores] of fichaTec; var lugar:tablero; Crimen:sobre; culpable:personajes; arma:armas; escena:lugares; J1:fichas; baraja:mazo; mano:manos; ultjug:jugadores; gameover:boolean; lista:listas; numjug:integer; jugact:jugadores; var arreglo:arreglo_cartas; ganador:boolean; resp:(acusar,sospechar); nombreArchivo:string; resp2:(guardar,jugar); i:mazo; contador:integer; archivo:text; numcartas: array[jugadores] of integer; numlistas:array [jugadores] of integer; control:integer; dum:string; temp:array [jugadores] of array [1..21] of mazo; afg:integer; jugturno:personajes; tur:jugadores; begin writeln; writeln('lectura de archivo'); writeln; writeln('introduzca el nombre de la partida'); readln(nombreArchivo); assign(archivo,nombreArchivo); reset(archivo); while not eof (archivo) do begin readln(archivo,numjug); if numjug=3 then begin readln(archivo,crimen[1],crimen[2],crimen[3]); readln(archivo,j1[jugador].peon,j1[jugador].estatu s,j1[jugador].ubicacion,numcartas[jugador],numlist as[jugador]); for control:=1 to numcartas[jugador] do read(archivo,mano[control][jugador]); readln(archivo,dum); for control:=1 to numlistas[jugador] do read(archivo,temp[jugador][control]); readln(archivo,dum); readln(archivo,j1[cpu1].peon,j1[cpu1].estatus,j1[c pu1].ubicacion,numcartas[cpu1],numlistas[cpu1]); if j1[cpu1].estatus=activo then begin for control:=1 to numcartas[cpu1] do read(archivo,mano[control][cpu1]); readln(archivo,dum); for control:=1 to numlistas[cpu1] do read(archivo,temp[cpu1][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu1] do read(archivo,temp[cpu1][control]); readln(archivo,dum); end; readln(archivo,j1[cpu2].peon,j1[cpu2].estatus,j1[c pu2].ubicacion,numcartas[cpu2],numlistas[cpu2]); if j1[cpu2].estatus=activo then begin for control:=1 to numcartas[cpu2] do read(archivo,mano[control][cpu2]); readln(archivo,dum); for control:=1 to numlistas[cpu2] do read(archivo,temp[cpu2][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu2] do read(archivo,temp[cpu2][control]); readln(archivo,dum); end; readln(archivo,jugturno); for tur:=jugador to cpu2 do begin if j1[tur].peon=jugturno then jugact:=tur; end; for control:=1 to numlistas[jugador] do lista[jugador][temp[jugador][control]]:=true; for control:=1 to numlistas[cpu1] do lista[cpu1][temp[cpu1][control]]:=true; for control:=1 to numlistas[cpu2] do lista[cpu2][temp[cpu2][control]]:=true; end else if numjug=4 then begin readln(archivo,crimen[1],crimen[2],crimen[3]); readln(archivo,j1[jugador].peon,j1[jugador].estatu s,j1[jugador].ubicacion,numcartas[jugador],numlist as[jugador]); for control:=1 to numcartas[jugador] do read(archivo,mano[control][jugador]); readln(archivo,dum); for control:=1 to numlistas[jugador] do read(archivo,temp[jugador][control]); readln(archivo,dum); readln(archivo,j1[cpu1].peon,j1[cpu1].estatus,j1[c pu1].ubicacion,numcartas[cpu1],numlistas[cpu1]); if j1[cpu1].estatus=activo then begin for control:=1 to numcartas[cpu1] do read(archivo,mano[control][cpu1]); readln(archivo,dum); for control:=1 to numlistas[cpu1] do read(archivo,temp[cpu1][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu1] do read(archivo,temp[cpu1][control]); readln(archivo,dum); end; readln(archivo,j1[cpu2].peon,j1[cpu2].estatus,j1[c pu2].ubicacion,numcartas[cpu2],numlistas[cpu2]); if j1[cpu2].estatus=activo then begin for control:=1 to numcartas[cpu2] do read(archivo,mano[control][cpu2]); readln(archivo,dum); for control:=1 to numlistas[cpu2] do read(archivo,temp[cpu2][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu2] do read(archivo,temp[cpu2][control]); readln(archivo,dum); end; readln(archivo,j1[cpu3].peon,j1[cpu3].estatus,j1[c pu3].ubicacion,numcartas[cpu3],numlistas[cpu3]); if j1[cpu3].estatus=activo then begin for control:=1 to numcartas[cpu3] do read(archivo,mano[control][cpu3]); readln(archivo,dum); for control:=1 to numlistas[cpu3] do read(archivo,temp[cpu3][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu3] do read(archivo,temp[cpu3][control]); readln(archivo,dum); end; readln(archivo,jugturno); for tur:=jugador to cpu3 do begin if j1[tur].peon=jugturno then jugact:=tur; end; for control:=1 to numlistas[jugador] do lista[jugador][temp[jugador][control]]:=true; for control:=1 to numlistas[cpu1] do lista[cpu1][temp[cpu1][control]]:=true; for control:=1 to numlistas[cpu2] do lista[cpu2][temp[cpu2][control]]:=true; for control:=1 to numlistas[cpu3] do lista[cpu3][temp[cpu3][control]]:=true; end else if numjug=5 then begin readln(archivo,crimen[1],crimen[2],crimen[3]); readln(archivo,crimen[1],crimen[2],crimen[3]); readln(archivo,j1[jugador].peon,j1[jugador].estatu s,j1[jugador].ubicacion,numcartas[jugador],numlist as[jugador]); for control:=1 to numcartas[jugador] do read(archivo,mano[control][jugador]); readln(archivo,dum); for control:=1 to numlistas[jugador] do read(archivo,temp[jugador][control]); readln(archivo,dum); readln(archivo,j1[cpu1].peon,j1[cpu1].estatus,j1[c pu1].ubicacion,numcartas[cpu1],numlistas[cpu1]); if j1[cpu1].estatus=activo then begin for control:=1 to numcartas[cpu1] do read(archivo,mano[control][cpu1]); readln(archivo,dum); for control:=1 to numlistas[cpu1] do read(archivo,temp[cpu1][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu1] do read(archivo,temp[cpu1][control]); readln(archivo,dum); end; readln(archivo,j1[cpu2].peon,j1[cpu2].estatus,j1[c pu2].ubicacion,numcartas[cpu2],numlistas[cpu2]); if j1[cpu2].estatus=activo then begin for control:=1 to numcartas[cpu2] do read(archivo,mano[control][cpu2]); readln(archivo,dum); for control:=1 to numlistas[cpu2] do read(archivo,temp[cpu2][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu2] do read(archivo,temp[cpu2][control]); readln(archivo,dum); end; readln(archivo,j1[cpu3].peon,j1[cpu3].estatus,j1[c pu3].ubicacion,numcartas[cpu3],numlistas[cpu3]); if j1[cpu3].estatus=activo then begin for control:=1 to numcartas[cpu3] do read(archivo,mano[control][cpu3]); readln(archivo,dum); for control:=1 to numlistas[cpu3] do read(archivo,temp[cpu3][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu3] do read(archivo,temp[cpu3][control]); readln(archivo,dum); end; readln(archivo,j1[cpu4].peon,j1[cpu4].estatus,j1[c pu4].ubicacion,numcartas[cpu4],numlistas[cpu4]); if j1[cpu4].estatus=activo then begin for control:=1 to numcartas[cpu4] do read(archivo,mano[control][cpu4]); readln(archivo,dum); for control:=1 to numlistas[cpu4] do read(archivo,temp[cpu4][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu4] do read(archivo,temp[cpu4][control]); readln(archivo,dum); end; readln(archivo,jugturno); for tur:=jugador to cpu4 do begin if j1[tur].peon=jugturno then jugact:=tur; end; for control:=1 to numlistas[jugador] do lista[jugador][temp[jugador][control]]:=true; for control:=1 to numlistas[cpu1] do lista[cpu1][temp[cpu1][control]]:=true; for control:=1 to numlistas[cpu2] do lista[cpu2][temp[cpu2][control]]:=true; for control:=1 to numlistas[cpu3] do lista[cpu3][temp[cpu3][control]]:=true; for control:=1 to numlistas[cpu4] do lista[cpu3][temp[cpu4][control]]:=true; end else if numjug=6 then begin readln(archivo,crimen[1],crimen[2],crimen[3]); readln(archivo,crimen[1],crimen[2],crimen[3]); readln(archivo,j1[jugador].peon,j1[jugador].estatu s,j1[jugador].ubicacion,numcartas[jugador],numlist as[jugador]); for control:=1 to numcartas[jugador] do read(archivo,mano[control][jugador]); readln(archivo,dum); for control:=1 to numlistas[jugador] do read(archivo,temp[jugador][control]); readln(archivo,dum); readln(archivo,j1[cpu1].peon,j1[cpu1].estatus,j1[c pu1].ubicacion,numcartas[cpu1],numlistas[cpu1]); if j1[cpu1].estatus=activo then begin for control:=1 to numcartas[cpu1] do read(archivo,mano[control][cpu1]); readln(archivo,dum); for control:=1 to numlistas[cpu1] do read(archivo,temp[cpu1][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu1] do read(archivo,temp[cpu1][control]); readln(archivo,dum); end; readln(archivo,j1[cpu2].peon,j1[cpu2].estatus,j1[c pu2].ubicacion,numcartas[cpu2],numlistas[cpu2]); if j1[cpu2].estatus=activo then begin for control:=1 to numcartas[cpu2] do read(archivo,mano[control][cpu2]); readln(archivo,dum); for control:=1 to numlistas[cpu2] do read(archivo,temp[cpu2][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu2] do read(archivo,temp[cpu2][control]); readln(archivo,dum); end; readln(archivo,j1[cpu3].peon,j1[cpu3].estatus,j1[c pu3].ubicacion,numcartas[cpu3],numlistas[cpu3]); if j1[cpu3].estatus=activo then begin for control:=1 to numcartas[cpu3] do read(archivo,mano[control][cpu3]); readln(archivo,dum); for control:=1 to numlistas[cpu3] do read(archivo,temp[cpu3][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu3] do read(archivo,temp[cpu3][control]); readln(archivo,dum); end; readln(archivo,j1[cpu4].peon,j1[cpu4].estatus,j1[c pu4].ubicacion,numcartas[cpu4],numlistas[cpu4]); if j1[cpu4].estatus=activo then begin for control:=1 to numcartas[cpu4] do read(archivo,mano[control][cpu4]); readln(archivo,dum); for control:=1 to numlistas[cpu4] do read(archivo,temp[cpu4][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu4] do read(archivo,temp[cpu4][control]); readln(archivo,dum); end; readln(archivo,j1[cpu5].peon,j1[cpu5].estatus,j1[c pu5].ubicacion,numcartas[cpu5],numlistas[cpu5]); if j1[cpu5].estatus=activo then begin for control:=1 to numcartas[cpu5] do read(archivo,mano[control][cpu5]); readln(archivo,dum); for control:=1 to numlistas[cpu5] do read(archivo,temp[cpu5][control]); readln(archivo,dum); end else begin readln(archivo,dum); for control:=1 to numlistas[cpu5] do read(archivo,temp[cpu5][control]); readln(archivo,dum); end; readln(archivo,jugturno); for tur:=jugador to cpu5 do begin if j1[tur].peon=jugturno then jugact:=tur; end; for control:=1 to numlistas[jugador] do lista[jugador][temp[jugador][control]]:=true; for control:=1 to numlistas[cpu1] do lista[cpu1][temp[cpu1][control]]:=true; for control:=1 to numlistas[cpu2] do lista[cpu2][temp[cpu2][control]]:=true; for control:=1 to numlistas[cpu3] do lista[cpu3][temp[cpu3][control]]:=true; for control:=1 to numlistas[cpu4] do lista[cpu3][temp[cpu4][control]]:=true; for control:=1 to numlistas[cpu5] do lista[cpu5][temp[cpu5][control]]:=true; end; end; close(archivo); writeln('hola'); readln; end.
And this is the txt:
5
ProfesorCiruela LlaveInglesa Cocina
SenioritaEscarlata activo Cocina 4 14
Estudio SalaDeBaile SenioraBlanco Candelabro
Vestibulo Salon SenioraCeleste Cuchillo SalaDeBillar Biblioteca SeniorVerde Tubo Invernadero SenioritaEscarlata Cuerda Comedor CoronelMostaza Revolver
CoronelMostaza activo Estudio 5 9
Vestibulo Salon SenioraCeleste Cuchillo Comedor
Estudio SalaDeBaile SenioraBlanco Candelabro SalaDeBillar Biblioteca SeniorVerde Tubo CoronelMostaza
SenioraBlanco activo Vestibulo 5 9
SalaDeBillar Biblioteca SeniorVerde Tubo CoronelMostaza
Estudio SalaDeBaile SenioraBlanco Candelabro Vestibulo Salon SenioraCeleste Cuchillo Comedor
SenioraCeleste activo SalaDeBillar 4 9
Invernadero SenioritaEscarlata Cuerda Revolver
Estudio SalaDeBaile SenioraBlanco Candelabro Vestibulo Salon SenioraCeleste Cuchillo Comedor
SeniorVerde eliminado Invernadero 0 14
Vestibulo Salon SenioraCeleste Cuchillo SalaDeBillar Biblioteca SeniorVerde Tubo Invernadero SenioritaEscarlata Cuerda Comedor CoronelMostaza Revolver
CoronelMostaza