I need to write a Java program that uses a Monte Carlo algorithm to calculate the
probability that next week’s lottery draw won’t have any consecutive
pairs of numbers (e.g. 8 and 9 or 22 and 23). 6 numbers are drawn
from 1 to 45.

And your point is? If you need help with anything, post what you have so far.
Just to be clear: when I say "what you have so far", in case you missunderstood it, I didn't mean "post your assignment and we'll do it for you."

The rules of Daniweb demand that you at the very least show that you've done some effort to write the code yourself.

I do apologise guys. Forgot that tiny detail. I'll post what I have shortly. Thanks for your replies. Will keep in mind next time.

here is my code. I'm not sure i got the non repeating numbers right.

package lab1;

import java.util.Random;

public class Lottery {

    public static void main(String[] args) {

        int [] x = new int[7];

        for(int i = 1; i<x.length; i++){
            int number = (int) (Math.random() * 45 + 1);
            System.out.print(number + " ");

            if(i == i {
                break;
            }
            if(i == i+1){
                break;
            }
        }

    }
}

The below code snippet is not correct. One of the 'i''s should be replaced with 'number'

            if(i == i {
                break;
            }
            if(i == i+1){
                break;
            }

Another suggestion: please use functions. This would make the program look better
Eg:

isNumberInSequence(number);


boolean isNumberInSequence(int number){
// your code here
}

You said that you need to calculate, the probability, but I do not see any logic for this. Your logic, just generates a random number and prints it. Try to put more thought into it.
Hint: You will need a bunch of random numbers since its a lottery. Not numbers from 1 to 7.

newcoder: "please use functions" ..
since Java doesn't have functions, that might pose bit of a problem.
mickdrealist: you never store the 'random' numbers you generate, so how would you be able to compare previous values to the new one(s) ?

You will need a bunch of random numbers since its a lottery. Not numbers from 1 to 7.

(S)he's not generating number 1-7 this is merely where he is going to store the seven numbers picked.

As I said before shuffling the 1-49 in an array and picking the first seven is a better way to generate the numbers than the method supplied.

For such a small dataset the results won't be noticeable so he can probably get away with it here, for much larger datasets it will matter.

This article has been dead for over six months. Start a new discussion instead.