Alguna idea o ayuda por favor :(
Publicado por A (7 intervenciones) el 21/11/2006 13:16:29
Tengo un programa que de una lista de numeros dada me ha de decir la posicion en la fila y le numero de fila que ocupa el primer numero primo que se encuentre; la función para el número primo funciona por separado perfectamente, pero a la hora de ir al fichero con la lista y hacer cosas con la lista no he conseguido hacer que haga lo que debe... ¿dónde fallo..?
___________________________________________________________________________
program prueba (input, output);
type
posit=0..maxint;
function primo(p:posit):boolean;
var
I:integer;
aux:boolean;
begin
aux:=true;
I:=2;
while (I < p) and not primo do begin
if p mod I = 0 then primo:=false
else I:=I+1;
primo:=aux;
end;
end;
var
f:text;
x,y,a:posit;
begin
assign(f,'a:\datosp1.txt');
reset(f);
x:=0;
y:=0;
while not eof(d) do begin
x:=x+1;
while not eoln(d) do begin
readln(f,a);
y:=y+1;
if primo(a) = true then writeln('El n£mero se sit£a en el ',x,' lugar, en la fila ',y,'.')
else writeln('No hay primos en el fichero.');
end;
end;
close(d)
end.
___________________________________________________________________________
program prueba (input, output);
type
posit=0..maxint;
function primo(p:posit):boolean;
var
I:integer;
aux:boolean;
begin
aux:=true;
I:=2;
while (I < p) and not primo do begin
if p mod I = 0 then primo:=false
else I:=I+1;
primo:=aux;
end;
end;
var
f:text;
x,y,a:posit;
begin
assign(f,'a:\datosp1.txt');
reset(f);
x:=0;
y:=0;
while not eof(d) do begin
x:=x+1;
while not eoln(d) do begin
readln(f,a);
y:=y+1;
if primo(a) = true then writeln('El n£mero se sit£a en el ',x,' lugar, en la fila ',y,'.')
else writeln('No hay primos en el fichero.');
end;
end;
close(d)
end.
Valora esta pregunta


0