Division durch Null

Eröffnet von Yvel273 im Board Equilla - Ideen umsetzen und programmieren

RateOfChange Funktion generiert trot Checks den Division durch Null Fehler
Seitenlänge102030
Seite 1 von 1
#8: 23.11.2018 13:06 hdaschulte
Vom Verfasser oder vom Besitzer der Diskussion gelöscht.
#7: 22.11.2018 15:12 hdaschulte
Vom Verfasser oder vom Besitzer der Diskussion gelöscht.
#6: 22.11.2018 14:57 hdaschulte
@Yvel273 (#1)

folgender code generiert den division durch null fehler E3008 :
if V <> 0 .............

das vermeide ich so:

if V = 0
then V = V[1]
else ................. ;

MfG hda

Wer wissen will, braucht nicht zu glauben.
#5: 19.11.2018 14:27 fritzr
Der Beitrag wurde vom Verfasser bearbeitet. Originalbeitrag anzeigen.
@Yvel273 (#4)
Wenn ich den Test weglasse, kriege ich trotz der Codeänderung den Fehler im DAX:
wow, wie hast Du das nur herausgefunden ?
Ich hatte an anderer Stelle schon mal Probleme mit Rechnungstermen als Übergabeargument. Seitdem versuche ich, nur eine Variable zu übergeben.
#4: 19.11.2018 13:33 Yvel273
@fritzr (#3)
wow, wie hast Du das nur herausgefunden ? :)

so kann man sogar den test weglassen nur
var:

q;


q = (h-l)/v;
Value1 = RateOfChange(q , 1);
Value2 = RateOfChange(V, 1);

genuegt.
vielen dank !
#3: 19.11.2018 12:52 fritzr
Der Beitrag wurde vom Verfasser bearbeitet. Originalbeitrag anzeigen.
@Yvel273 (#1)
mit
var:
q;

if V <> 0 and H-L <> 0 then begin
q = (h-l)/v;
Value1 = RateOfChange(q , 1);
Value2 = RateOfChange(V, 1);
end;

tritt der Fehler nicht mehr auf. Keine Ahnung, warum. Evtl. ein Rundungsproblem, da der Quotient sehr klein werden kann.
#2: 19.11.2018 11:45 fritzr
Vom Verfasser oder vom Besitzer der Diskussion gelöscht.
#1: 18.11.2018 16:25 Yvel273
folgender code generiert den division durch null fehler E3008 :
if V <> 0 and H-L <> 0 then begin
Value1 = RateOfChange((H-L)/ V , 1);
Value2 = RateOfChange(V, 1);
end;


da auch die aufgerufene funktion einen check eingebaut hat :
Inputs:

Price( NumericSeries ),
Period( NumericSimple );


If Price[Period] <> 0 Then
    RateOfChange = ( 100 * Price / Price[Period] ) - 100;

verstehe ich nicht wie es dennoch zu dem error kommt...

kann jemand eine loesung dafuer finden ?