Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 18-05-2004
inetplus inetplus is offline
Miembro
 
Registrado: feb 2004
Posts: 36
Poder: 0
inetplus Va por buen camino
Invalid Floating Point Operation

Como se puede determinar la causa de este tipo de errore ?

Existe alguna variable que puedan darle a uno un indicio del causante del problema.

un saludo
Responder Con Cita
  #2  
Antiguo 18-05-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Yo creo que esás atacando el problema desde un ángulo equivocado. Dicho así es muy ambiguo; mejor platícanos qué código es el que te genera dicho error.

// Saludos
Responder Con Cita
  #3  
Antiguo 18-05-2004
sanxpue sanxpue is offline
Miembro
 
Registrado: jul 2003
Posts: 196
Poder: 21
sanxpue Va por buen camino
Talking Que....

¡¡¡Que
Ese error no lo marca cuando divides entre cero

Conocidisimo el error de punto flotante
__________________
saludos desde Puebla Mexico..
asanxt@hotmail.com
"como siempre a sus ordenes y siempre con buena cara"
'lolita me excitas, perversa piel de melocotón'
Responder Con Cita
  #4  
Antiguo 18-05-2004
inetplus inetplus is offline
Miembro
 
Registrado: feb 2004
Posts: 36
Poder: 0
inetplus Va por buen camino
Ojala pudiese darte mas información en donde se produce el error, voy a darte una explicación un tanto mas certera, el sistema funciona en forma perfecta en una PC Pentium IV y un K6 de 500. No ocurre lo mismo en otro K6 de las mismas caracteristicas de este ultimo pero con menos memoria.

El error se produce al iniciar su ejecución.
Responder Con Cita
  #5  
Antiguo 18-05-2004
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
No sé si tenga que ver pero había algunos pentium que tenían un error. Existe una directiva al compilador para esto: {U+}.

// Saludos
Responder Con Cita
  #6  
Antiguo 17-03-2012
MiguelR MiguelR is offline
Registrado
NULL
 
Registrado: ene 2012
Posts: 1
Poder: 0
MiguelR Va por buen camino
invalid floating point operation

a mi me marca ese problema con este código, soy nuevo y no se mucho, agradecería mucho la ayuda
Código:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Memo1: TMemo;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
m:array[1..10,1..10] of extended;
v:array[1..10] of extended;
a,i,j,x,z:integer;
k,b:extended;
linea:string;
archivo:textfile;
begin
    a:=strtoint(edit2.text);
    assignfile(archivo,edit1.text);
    reset(archivo);
    for i:=1 to a do
    for j:=1 to a do
    read(archivo,m[i,j]);

    z:=1;
    x:=1;
    b:=1;
    k:=0;
    while i<>a do begin
        for i:=z to (z+1) do begin
            k:=m[i,j];
            b:=b*k;
            for j:=x to a do begin
                v[j]:=(m[i,j])/(k);
            end;
        end;
        for i:=i+1 to a do begin
            k:=m[i,j];
            for j:=j to a do begin
                if k<>0 then
                m[i,j]:=((v[j])/(k))+m[i,j]
                else break;
            end;
        end;

        z:=z+1;
        x:=x+1;
    end;

    m[i,j]:=(m[i,j])*b;
    memo1.lines.add(floattostr(m[i,j]));
end;

end.
Responder Con Cita
  #7  
Antiguo 17-03-2012
Avatar de newtron
[newtron] newtron is offline
Membrillo Premium
 
Registrado: abr 2007
Ubicación: Motril, Granada
Posts: 3.462
Poder: 21
newtron Va camino a la fama
Hola.

Yo creo que en algún momento alguna variable está cogiendo un valor disparatado así que deberías ir depurando el programa paso a paso mirando qué valor cogen las variables para detectar en qué linea de da el error.

Saludos
__________________
Be water my friend.
Responder Con Cita
  #8  
Antiguo 17-03-2012
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Bienvenido a clubdelphi, MiguelR, ¿ya leiste nuestra guía de estilo?, gracias por tu colaboración.
Responder Con Cita
  #9  
Antiguo 17-03-2012
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Miguel.

El primer error que veo es que aquí:
Código Delphi [-]
begin
  a:=strtoint(edit2.text);
  ...
  for i:=1 to a do
    for j:=1 to a do
      read(archivo,m[i, j]);
Cargas a x a valores en la matriz m. Pero inmediatamente luego de entrar al bucle while y sin asignarle valor a j, haces:
Código Delphi [-]
    ...
    while i<>a do
    begin
      for i:=z to (z+1) do
      begin
        k:= m[i,j]; // <- ¡ Aquí !
        ...
Resulta que j, luego de salir del ciclo for, tiene un valor de a+1 y el valor de m[i, (a+1)] es indeterminado ya que nunca se le asigno algo...

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 19:10:35.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi