# Function query

## Main Question or Discussion Point

I was wondering, if you have the function:

f(x)=A/B

and the value returned is a non-integer, what form would the function g(x) have if it were to return the decimal part of the value returned multiplied by B?

For example:

A/B=3.245862

What function would return B*0.245862?(This is a specific example of course, what I am looking for is a function that is valid for all numbers, at least for all positve integers of A, and all positive values of B) Thank you for your time.

$$B\left(A/B-floor(A/B)\right)$$

But thats the thing- what is the algebra for the floor function? is there a solution with pure algebra?

Ah I see I posted a question asking if that's what you meant, then deleted it.

Why would you need to do that by algebra I wonder, when you can achieve the same thing much more easily without algebra? Computers can do this too with the int(integer) command. One for the pure mathameticians maybe?

Last edited:
HallsofIvy
Homework Helper
But thats the thing- what is the algebra for the floor function? is there a solution with pure algebra?
?? That is perfectly good algebra. The floor function is as valid a function as x2 or $\sqrt{x}$.

okay, how about an operation that uses one of the following: multipication, division, addition, and subraction?

or calculus

matt grime
Homework Helper
How about, in magma notation for the sheer hell of it

function floor(x)
if x ge 1 then return floor(x-1); end if; // add or subtract 1 until
else if x lt 0 then return floor(x+1); end if; // you reach the range [0,1)
else return x; // then return x if x is in said range.
end function;

or does logical case by case analysis not fit into what ever arbitrary methods you've chosen as 'preferable'?

You should try not to confuse functions with methods to evaluate those functions - plenty of posters round here continually make this very important mistake.

Last edited:

10 inkey a
20 inkey b
25 a/b=x
30 print (x-int x)*b
40 Print"Another y/n?"
50 inkey$60 if inkey$="y" then goto 10
70 if inkey\$="n" then goto 80
80 Print"bye!"

run

What's the formula to return b*the result of(x-int x) without a floor funciton?

What's the derivation mathematically of the floor function using +-/* or calculus?

Last edited:
I don't believe calculus, multiplication, division, addition, and subtraction are arbitrary methods. I have just found the approximation using fourier analysis.

rcgldr
Homework Helper
Don't forget modulo. X%1 will return a value >=0 and < 1 for all positive numbers. I'm not sure if C defines what happens if X is negative. In APL, the modulo function was implemented "correctly" for negative numbers. The sign of the result is always the sign of the divisor (and not the dividend), so that (-.6)%(+1.0) = (+.4), and (+.6)%(-1.0) = (-.4), this eliminates a double step at 0, and makes the modulo function and integer division origin independent. On computers that implement a "non-restoring" divide algorithm, the results are the same as that of APL, but few computers use this method.

HallsofIvy
Homework Helper
I don't believe calculus, multiplication, division, addition, and subtraction are arbitrary methods. I have just found the approximation using fourier analysis.
I know what "multiplication, division, addition and subtraction" are , but what do you mean by "calculus" as an arithmetic method?

And why in the world would anyone use Fourier analysis to approximate something as easy to calculate exactly as the floor function? That's like using Bessel Functions to approximate x2!

matt grime