Velocity Reviews > Java > Hey common folks let a "newbie" in and please answer my question! :) (even if its darn simple!)

# Hey common folks let a "newbie" in and please answer my question! :) (even if its darn simple!)

Robocop
Guest
Posts: n/a

 02-22-2004
Hi Folks!
heres my question

adding: 1 - 1/3 + 1/5 - 1/7 + 1/9 - 1/11 + 1/13 - 1/15....

this is what i tried

to get ODD nos. i wrote 2*i+1 when *first line* is executed it adds
up all the odd deno. fraction, and in second sum it subtracts 1/3, 1/7
....., so shouldn't i multiple the second line by 2? so that it
subtract 1/3 , 1/7 and then again subtracts from the remaining sum?
like this::: sum = sum - 2*sign/(2*i+1) ; // MODIFIED SECOND LINE

sum = sum + sign /i; //----FIRST LINE
sum = sum - sign / (2*i+1); //----SECOND LINE

[code]
public class Strtry
{
public static void main (String[] parameters)
{

double sum = 0;
double sign = 1;
long start = System.currentTimeMillis();
for (int i = 1; i < 1000000000; i = 2*i +1)
{
sum = sum + sign /i;
sum = sum - sign / (2*i+1);

}
long finish = System.currentTimeMillis();
IO.println((finish - start)/1000);
IO.println(4*sum);
}
}

nos
Guest
Posts: n/a

 02-22-2004

"Robocop" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed) om...
> Hi Folks!
> heres my question
>
> adding: 1 - 1/3 + 1/5 - 1/7 + 1/9 - 1/11 + 1/13 - 1/15....
>
> this is what i tried
>
> to get ODD nos. i wrote 2*i+1 when *first line* is executed it adds
> up all the odd deno. fraction, and in second sum it subtracts 1/3, 1/7
> ...., so shouldn't i multiple the second line by 2? so that it
> subtract 1/3 , 1/7 and then again subtracts from the remaining sum?
> like this::: sum = sum - 2*sign/(2*i+1) ; // MODIFIED SECOND LINE
>
> sum = sum + sign /i; //----FIRST LINE
> sum = sum - sign / (2*i+1); //----SECOND LINE
>
>
>
> [code]
> public class Strtry
> {
> public static void main (String[] parameters)
> {
>
> double sum = 0;
> double sign = 1;
> long start = System.currentTimeMillis();
> for (int i = 1; i < 1000000000; i = 2*i +1)
> {
> sum = sum + sign /i;
> sum = sum - sign / (2*i+1);
>
> }
> long finish = System.currentTimeMillis();
> IO.println((finish - start)/1000);
> IO.println(4*sum);
> }
> }

--
System.out.println(2);

Andrew Hobbs
Guest
Posts: n/a

 02-22-2004
We are not paid servants. It is Saturday night Sunday morning and there are
probably not many people lurking at the moment. They have better things to
do. (Plus it would probably be better to try asking these sort of questions
on comp.lang.java.help).

what was wrong with your code?

I can also give you a hint about problems. In a case like this, what is the
problem. I presume you aren't getting the answer you expect. (If not why
are you asking a question. Especially on something as simple as this
arithmetic problem) In that case the first thing you should suspect is that
your code is wrong. So why not limit the case to just a few cycles in the
for loop and get it to print out the first dozen numbers. Just to make sure
it is doing what you expected. It would have been obvious what is wrong and
would have suggested a solution. You would learn a whole lot more than
trying to get other people to write it for you.

Cheers

Andrew

--
************************************************** ******
Andrew Hobbs PhD

MetaSense Pty Ltd - www.metasense.com.au
12 Ashover Grove
Carine W.A.
Australia 6020

61 8 9246 2026
metasens AntiSpam @iinet dot net dot au

************************************************** *******

"Robocop" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed) om...
> Hi Folks!
> heres my question
>
> adding: 1 - 1/3 + 1/5 - 1/7 + 1/9 - 1/11 + 1/13 - 1/15....
>
> this is what i tried
>
> to get ODD nos. i wrote 2*i+1 when *first line* is executed it adds
> up all the odd deno. fraction, and in second sum it subtracts 1/3, 1/7
> ...., so shouldn't i multiple the second line by 2? so that it
> subtract 1/3 , 1/7 and then again subtracts from the remaining sum?
> like this::: sum = sum - 2*sign/(2*i+1) ; // MODIFIED SECOND LINE
>
> sum = sum + sign /i; //----FIRST LINE
> sum = sum - sign / (2*i+1); //----SECOND LINE
>
>
>
> [code]
> public class Strtry
> {
> public static void main (String[] parameters)
> {
>
> double sum = 0;
> double sign = 1;
> long start = System.currentTimeMillis();
> for (int i = 1; i < 1000000000; i = 2*i +1)
> {
> sum = sum + sign /i;
> sum = sum - sign / (2*i+1);
>
> }
> long finish = System.currentTimeMillis();
> IO.println((finish - start)/1000);
> IO.println(4*sum);
> }
> }