realbasic-nug.it
[Top] [All Lists]

Re: Calcolo formuletta

To: REALbasic NUG Italian <realbasic-nug dot it at lists dot realsoftware dot com>
Subject: Re: Calcolo formuletta
From: Marco Bambini <marco at sqlabs dot net>
Date: Sun, 26 Feb 2006 13:33:40 +0100
Delivered-to: realbasic-nug dot it at lists dot realsoftware dot com
References: <CCDB0CE4-3F0E-438F-BC57-A97D9DDA0AF9 at tin dot it> <4114065D-E1E3-453A-BF2E-AE6F8033B20C at sqlabs dot net>
Invece di LucioSign, potresti usare anche questo trick:

Max(Sign(k - k0), 0)

in questo modo se il segno è negativo, la funzione ritorna 0, altrimento 1.

---
Marco Bambini
http://www.sqlabs.net
http://www.sqlabs.net/blog/



On Feb 26, 2006, at 1:00 PM, Marco Bambini wrote:

Oppure potresti usare una versione modificata della funzione Sign (value) quella che c'è in RB ritorna -1 in caso value sia negativo e +1 nel caso sia positivo. Potresti crearti la tua funzione "LucioSign" che ritorni 0 se value < 0, oppure 1.
In questo caso la formula sarebbe:

A = B + m * ((k - k0) * LucioSign((k - k0)))

---
Marco Bambini
http://www.sqlabs.net
http://www.sqlabs.net/blog/



On Feb 26, 2006, at 12:10 PM, Lucio Liberi wrote:

Ciao a tutti.

Devo eseguire un banale calcolo, che pero' e' funzione di un parametro 'k'

la formuletta somiglia a questa (la rendo semplice per ovvi motivi...)

A=B                        se k <  k0
A=B+m(k-k0)         se k > k0

naturalmente la cosa si risolve mooolto semplicemente con un 'if' o con un bel (e piu' elegante) Select case...

La domanda che vi pongo e' questa:

posso mettere davanti a (k - k0) un qualche operatore che mi ritorni 0 (zero) in caso di valore negativo? E quindi tornerei alla formula A=B e quindi scriverei
UNA sola volta

A=B +m (k - k0)

L'operatore MOD a che serve?

Perdonate la mia PROFONDA ignoranza....


Lucio




<Prev in Thread] Current Thread [Next in Thread>