Solved

Posted on 2011-03-24

Math

How to write a program using this statement, int n = (int)Math.floor(Math.random()*100000+1);?

lass GuessingGame {

public static void main(String[] args) {

int n = (int)Math.floor(Math.random()*100000+1);

int sum = 0;

int digit;

number = x;

digit = x % 10;

sum += digit;

x = x/10;

digit = x % 10;

sum += digit;

x = x/10;

digit = x % 10;

sum += digit;

x = x/10;

digit = x % 10;

sum += digit;

System.out.println("Given number= "+number+"; sum of digits = "+sum);

}

}

How to write a program using this statement, int n = (int)Math.floor(Math.rando

lass GuessingGame {

public static void main(String[] args) {

int n = (int)Math.floor(Math.rando

int sum = 0;

int digit;

number = x;

digit = x % 10;

sum += digit;

x = x/10;

digit = x % 10;

sum += digit;

x = x/10;

digit = x % 10;

sum += digit;

x = x/10;

digit = x % 10;

sum += digit;

System.out.println("Given number= "+number+"; sum of digits = "+sum);

}

}

3 Comments

Comment Utility

what exactly are you trying to accomplish? Have the computer guess a number that the user randomly chose between 1 and 100,000??? if so - I'd have it do the following - (pseudo-coded as I am not good with languages)

Get Random Number between 2 and 100,000 and store in Guess

Set Low Guess = 0

Set High Guess = 100001

Start Loop

Ask User if Guess is correct and ask for lower or higher

If higher

move guess to low guess

if guess + 100 < high guess

add 100 to guess goto start loop

else if guess +10 < high guess

add 10 to guess goto start loop

else add 1 to guess goto start loop

if lower

move guess to high guess

if guess - 100 > low guess

subtract 100 from guess goto start loop

else if guess - 10 > low guess

subtract 10 from guess goto start loop

else subtract 1 from guess goto start loop

End Loop

NOTE - the more nested if's you put in the faster the program should get to the correct number.

Get Random Number between 2 and 100,000 and store in Guess

Set Low Guess = 0

Set High Guess = 100001

Start Loop

Ask User if Guess is correct and ask for lower or higher

If higher

move guess to low guess

if guess + 100 < high guess

add 100 to guess goto start loop

else if guess +10 < high guess

add 10 to guess goto start loop

else add 1 to guess goto start loop

if lower

move guess to high guess

if guess - 100 > low guess

subtract 100 from guess goto start loop

else if guess - 10 > low guess

subtract 10 from guess goto start loop

else subtract 1 from guess goto start loop

End Loop

NOTE - the more nested if's you put in the faster the program should get to the correct number.

Comment Utility

Your program is fine (well, it has errors), but you should really use a loop. Like this:

```
public static void main(String[] args)
{
int n = (int)Math.floor(Math.random()*100000+1);
int sum = 0;
int digit;
int x = n;
while(x > 0)
{
digit = x % 10;
x /= 10;
sum += digit;
}
System.out.println("Given number= "+number+"; sum of digits = "+sum);
}
```

Title | # Comments | Views | Activity |
---|---|---|---|

find distance using springs and slopes | 23 | 129 | |

Excel Stat for Dummies - What's the difference between STD.P and STD.S | 4 | 50 | |

A second problem of optics | 12 | 106 | |

Interest rate formula | 7 | 46 |

Join the community of 500,000 technology professionals and ask your questions.

Connect with top rated Experts

**11** Experts available now in Live!