• Sábado 27 de Abril de 2024, 09:53

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Xacobeo

Páginas: [1]
1
Pascal / Re: Programa Numeros Primos
« en: Sábado 18 de Noviembre de 2006, 19:57 »
Buenas,

he probado el codigo fuente que me has enviado. gracias, pero al hacer la prueeba, al tuyo le pasa lo mismo que al mio. Al final cuenta uno más el bucle. o bien es del programa o del propio fichero.

Saludos,

2
Pascal / Programa Numeros Primos
« en: Martes 14 de Noviembre de 2006, 13:23 »
Buenas,

Me he matriculado de nuevo en la FACULTAD DE INFORMÁTICA, y como primera practica de programación, tengo que calcular, el número primo, lo que pasa es que tengo problemas a la hora de ejecutarlo.

Dicho programa tiene que leer de un fichero, en los cuales hay números, da igual que tipo sea, y tendrá que indicar si es primo, o no es primo, pero a la hora d ejecutarlo en la última instrucción, el bucle me lo hace una vez más (dependiendo si cambio las condiciones), y a parte si el número es 0 o bien hay más espacios en blanco, "peta".

Program Numero_Primo (fichero,output);
 
Var
 Fichero: Text;
 Numero,  Coord_X, Coord_Y: Integer;
 final,Primo: Boolean;
 h:char;

 Function numeroprimo(numero:integer):boolean;
 var
  valor,resto_div: integer;
  begin
  valor := 1; resto_div :=1;
   if numero = 1 then
    primo := true


   else
    begin
      while resto_div <> 0 do
      begin
        valor := valor +1;
        resto_div:= (numero mod valor);
      end;
   if numero = valor then numeroprimo := true
   else numeroprimo := false;
 end;
end;

 Procedure salida_pantalla(numero1:integer;var primo:boolean);
 Begin
   writeln;
   Writeln('********************************************************');
   Writeln('* Nombre del Alumno: Jos‚ Antonio Barreiro Calvi¤o     *');
   Writeln('* Asignatura: Fundamentos de Programaci¢n (FP I)       *');
   Writeln('* Curso: ITIG (Ingenieria T‚cnica Inform tica Gesti¢n) *');
   Writeln('* N£mero de Matr¡cula: bd003                           *');
   Writeln('********************************************************');
   writeln;
   if primo = false then
     writeln (output,'El N£mero: ',numero1, ' no es n£mero primo en la pos X:', coord_x, ' pos Y:', coord_y)
   else
       writeln (output,'El N£mero: ',numero1, ' es n£mero primo en la pos X:', coord_x, ' pos Y:', coord_y);
  End;

 Begin
  primo := true; coord_x:=0; coord_y := 1;
  assign (fichero, 'numeros.txt');
  reset(fichero);
  repeat
   coord_x:=coord_x+1;
   read(fichero,numero);
   primo:=numeroprimo(numero);
   salida_pantalla (numero,primo);
   if eoln(fichero) then
        begin
         coord_x := 0; coord_y := 1;
        end;
    if  eof(fichero) then
     writeln;
     writeln('Se ha llegado al final de fichero. Pulse tecla ....');
   until (eof(fichero));
  close (fichero);
 End.

Alguna sugerencia !!!!!!

Gracias de antemano

Páginas: [1]