-
FlexPro
- Auf einen Blick
- Features & Optionen
- Einsatzgebiete
- Alle Vorteile
- Neu in FlexPro 2021
- FlexPro gratis testen
- FlexPro View OEM Freeware
- Kaufberatung
- Login
- Language
- +49 6894 929600
- infoweisang.com
- Google Maps
- Produkte
- News
- Support
- Unternehmen
- Jobs
- Kontakt
- Login
- Language
- +49 6894 929600
- infoweisang.com
- Google Maps
For Schleifen
- Dieses Thema hat 4 Antworten und 2 Teilnehmer, und wurde zuletzt aktualisiert vor 18 Jahre, 5 Monaten von
rax23@gmx.de.
-
AutorBeiträge
-
Oktober 26, 2004 um 2:58 am Uhr #12527
rax23@gmx.de
MitgliedVersuche schon seit einigen Minuten eine For Schleife mit folgender Sturktur zum laufen zu bringen. Dabei sollen alle Werte die größer als 15 sind durch ein Fragezeichen ersetzt und jeweils der Wert vor dem Wert größer 15 und der danach. Um die ? wieder einen ordentlichen Wert zu geben sollen diese interpoliert werden. Der Datensatz besteht dabei nur aus y Werten. Das Problem ist nur das die Schleife immer direkt das i zu dem Endwert inkrementiert und in der if Schleife danach für i der letzte Platzhalter steht. Die Schleife läuft also einfach nicht von i=0 bis Endwert!
Dim y,i
y=ChL2_v_r_o_u.y
For i=0 to NumberOfElements(y)-1 do
if y > 15 then
y[i-1] = ?
y = ?
y = ?end
end
return InterpolateVoidValues(y)
Auch habe ich es schon mit einer “For Each Value…In” Anweisung probiert:
Dim y,i
y=ChL2_v_r_o_u.y
For Each Value i In y do
if y > 15 then
y[i-1] = ?
y = ?
y = ?end
end
return InterpolateVoidValues(y)
Aber dabei besteht genau das gleiche Problem!
Oktober 26, 2004 um 3:25 am Uhr #8853Bernhard Kantz
TeilnehmerIf i is the highest index y[i+1] doesn’t exist. The highest index of the dataset is NumberOfElements(dataset) – 1.
But in this case you should not use a for loop because this method is very slow. Instead of that you should use the FPScript function ValuesAboveLevel.Oktober 26, 2004 um 4:38 am Uhr #8854rax23@gmx.de
Mitgliedi isn’t the highest index and y[i+1] does exist! The loop with the “For Each Values…End” function does work. But how can I work with the ValuesAboveLevel function? How do I get all elements higher than 15 replaced through a interpolated value when using the ValuesAboveLevel function?
Oktober 26, 2004 um 6:04 pm Uhr #8855Bernhard Kantz
TeilnehmerUse the operation Set values which lie above the level to void of the ValuesAboveLevel function instead of the for-loop. Then you can use the FPScript function InterpolateVoidValues to interpolate the values above the level.
Oktober 26, 2004 um 6:04 pm Uhr #8190rax23@gmx.de
MitgliedVersuche schon seit einigen Minuten eine For Schleife mit folgender Sturktur zum laufen zu bringen. Dabei sollen alle Werte die größer als 15 sind durch ein Fragezeichen ersetzt und jeweils der Wert vor dem Wert größer 15 und der danach. Um die ? wieder einen ordentlichen Wert zu geben sollen diese interpoliert werden. Der Datensatz besteht dabei nur aus y Werten. Das Problem ist nur das die Schleife immer direkt das i zu dem Endwert inkrementiert und in der if Schleife danach für i der letzte Platzhalter steht. Die Schleife läuft also einfach nicht von i=0 bis Endwert!
Dim y,i
y=ChL2_v_r_o_u.y
For i=0 to NumberOfElements(y)-1 do
if y > 15 then
y[i-1] = ?
y = ?
y = ?end
end
return InterpolateVoidValues(y)
Auch habe ich es schon mit einer “For Each Value…In” Anweisung probiert:
Dim y,i
y=ChL2_v_r_o_u.y
For Each Value i In y do
if y > 15 then
y[i-1] = ?
y = ?
y = ?end
end
return InterpolateVoidValues(y)
Aber dabei besteht genau das gleiche Problem!
-
AutorBeiträge
- Du musst angemeldet sein, um auf dieses Thema antworten zu können.