Wager Mage
Photo by cottonbro studio Pexels Logo Photo: cottonbro studio

What is the formula of lottery?

Probability of event to happen P(E) = Number of favourable outcomes/Total Number of outcomes. For example, the probability of getting a head when tossing a coin=Total number of heads(favourable outcome here) in coin / total number of possible outcomes.

What does 4 5 odds mean?
What does 4 5 odds mean?

What does 4 to 5 odds mean? 4-5 Betting Odds means that out of 9 potential outcomes, the 4/5 odds are that there will be 4 of one kind of outcome...

Read More »
How much should you bet per game?
How much should you bet per game?

To determine how much to bet on each game, take your starting bankroll amount and divide it into equal units. Once you decide this number it...

Read More »

Table of contents

Have you ever dreamt of being rich? What would you buy if you had millions of rupees? And what if you could have millions of rupees by just spending under 50 rupees? Seems like a dream but there is a possibility it happening. If you are thinking about a lottery, you are absolutely right. For those who are not familiar with it, a lottery is a gambling game that is used to raise money. At its most basic level, a lottery involves paying a small amount of money to purchase a lottery ticket, and then if we are lucky, our ticket matches the winning ticket and we win a prize, such as a large sum of money. But what is the probability of you winning a lottery? Maybe not much if you buy one, but what if you buy multiple tickets? Does that increase your chances of winning and if yes, by how much money? Today we are going to find it out by using some basic mathematics and Python programming language. So let us go through some important concepts before knowing the odds of winning a lottery, more specifically a popular lottery contest in India known as lotto-India.

Probability

Probability is the branch of mathematics that gives us a numerical description of how likely an event is to occur. Its value is a number between 0 and 1, where, roughly speaking, 0 indicates impossibility and 1 indicates certainty. We are going to use this branch of mathematics to find out how close we are to become a millionaire. We are going to cover some very basics of probability here. The possibility of an event to happen is equal to the ratio of the number of favourable outcomes and the total number of outcomes. Probability of event to happen P(E) = Number of favourable outcomes/Total Number of outcomes. For example, the probability of getting a head when tossing a coin=Total number of heads(favourable outcome here) in coin / total number of possible outcomes. Since in a coin, there is only one head, and only two possible outcomes,viz-head and tail. Putting these numbers in the above formula we get ½ i.e. 0.5 or 50%, which means that we have a 50% chance of getting a head. Do you wish to understand probability more comprehensively? Check out this probability and probability distribution. Probability courses can help learners learn about the mathematics of chance and how to apply it to real-world situations. These courses can also teach students how to use probability to make decisions and predictions.

Factorial

The factorial of a number is the product of all the integers from 1 to that number. For example, the factorial of 6 is 1*2*3*4*5*6 = 720. Factorial is not defined for negative numbers, and the factorial of zero is one, 0! = 1. Here is a simple program written in python that can calculate the factorial of any number

def factorial(n): fact=1 while(n>1): fact=fact*n n=n-1 return fact

Combinations

A combination is a mathematical technique that gives us the number of possible arrangements that can be made out of a collection of items. Note that the order of the selection does not matter and you can select the items in any order.

The formula for a combination is C(n,r) = n! / (r! (n-r)!),

What happens if the spread is too high?
What happens if the spread is too high?

A high spread means there is a large difference between the bid and the ask price. Emerging market currency pairs generally have a high spread...

Read More »
What is the shortest sport in the world?
What is the shortest sport in the world?

Short Sports People Sport Height Height Football (Soccer) 153 cm 5' 0"" Gymnastics 124.4 cm 4' 1"" Ice Hockey 106 cm 3' 6"" Ice Hockey 160 cm 5'...

Read More »

where n represents the number of items and r represents the number of items being chosen at a time.

The python program to calculate the combination is given below:

def combinations(n,k): num = factorial(n) den = factorial(k) * factorial(n-k) return num / den print(combinations(3,2)) The output is 3, which means for a list containing 3 elements if we take two items at a time, a total of three combinations are possible. For example for numbers 1,2, and 3 we can two number combinations of (1,2),(1,3), and (2,3)

Calculating the Probability of Winning a Lottery with Python

As mentioned above, we are going to calculate the probability of winning lotto India which is a popular lottery contest in India. So let me quickly go through the rules of this lottery. We have to select six numbers from 1 to 50 on one of the game panels, then select a Joker Ball from 1 to 5. For winning the jackpot prize of around 5 crore rupees, all six numbers and the joker ball must match the winning numbers and Joker Ball number. This image completely describes the winning prizes. So from the above image, it is clear that we have to always aim to get all the numbers as well as the Joker Ball right. Here is a program that gives the odds of you getting any of those prizes. We chose Python to code this because of its simplicity. Python is considered one of the easiest languages and is very user friendly. It has a simple syntax which makes it ideal for new programmers. Now let us move on to the code. The program is completely dynamic which means that it can work for other lottery competitions also which work on the same rules such as Powerball. You can customize various variables such as: Range: You can specify a different range to select numbers such as 1 to 69, which is in case of Powerball lottery. Number of choices: You can also change the number of numbers you can select, such as you can select it as 5 as in Powerball. Number of joker balls: In Powerball, there are a set of red balls which are similar to joker balls. They are 26 in number Count of matched numbers: Here you can specify the total number of our selections that match the original set of numbers. For example , if we want to know the odds and probability of matching two numbers, we specify this number as 2. Joker ball presence: This variable is True if we match the winning Joker ball or else it is set false. For example, if we want to know the odds and probability of matching two numbers and getting the joker ball number correct, we specify this as True.

Tickets: Number of Tickets Bought

def factorial(n): fact=1 while(n>1): fact=fact*n n=n-1 return fact def combinations(n,k): num = factorial(n) den = factorial(k) * factorial(n-k) return num / den def comb_ways(a,total_num,num_choices): num=factorial(num_choices)*factorial(total_num-num_choices) den=factorial(a)*factorial(num_choices-a)*factorial((total_num-num_choices)-(num_choices-a))*factorial(num_choices-a) return num/den def one_ticket_probability(total_num,tickets,num_choices,num_joker,match_num,joker_ball=False): outcome_numbers=combinations(total_num, num_choices) successful_outcome = tickets if joker_ball==True: outcome_jokerBall = num_joker else : outcome_jokerBall = (num_joker)/(num_joker-1) total_outcomes = (outcome_numbers / comb_ways(match_num, total_num, num_choices)) * outcome_jokerBall probability_winning = (successful_outcome / total_outcomes) print("You're chances of winning are {:.18f}".format(probability_winning)) print("You're chances of winning are 1 in {}".format( total_outcomes/successful_outcome)) return probability_winning, (total_outcomes / successful_outcome) total_numbers=50#Range number_choices=6 #Number of choices total_jokerBalls=5 #Number of joker balls match_numbers=6 #Countr of matched numbers Joker_present=True #Presence of joker ball tickets=1 #Total number of tickets bought for match_numbers in range(match_numbers+1): if(Joker_present): print("Joker Ball matches-",end=" ") else: print("Joker Ball does not match-",end=" ") print("Count of Numbers that matched the winning numbers = {}".format(match_numbers)) one_ticket_probability(total_numbers,tickets,number_choices,total_jokerBalls,match_numbers,Joker_present)

Output:

What does 40x wager mean?
What does 40x wager mean?

40x wagering requirements This means you must bet your bonus 40 times before it can be withdrawn. Example: Let's say you get a promotion of £50....

Read More »
Does rebar actually help concrete?
Does rebar actually help concrete?

Rebar makes concrete several times more resistant to failure. It provides tensile strength using a reinforcing bar that is resistant to corrosion....

Read More »

Chances when jokerball matches Chances without matching jokerball

Creating a GUI for the program

For the program above, we are going to design a basic User Interface using Tkinter. Here is the code which is an addition to the code in the last section. #First we define a new function that calculates #the probabilities and also gives results in a message box import tkinter as tk from tkinter import messagebox def Calculate(entries): cal = one_ticket_probability(int(entries['Total Number'].get()), int(entries['Tickets bought'].get()), int(entries['Choices given'].get()), int(entries['total_jokerballs'].get()), int(entries['Match balls'].get()), v.get()) messagebox.showinfo( "For the selected choices ", "

You're chances of winning are {:.18f}

You're chances of winning are 1 in {}

" .format(cal[0], cal[1])) #We use tkinter to make a window object root = tk.Tk() #we make a form for user to give his values def makeform(root, fields): entries = {} #These are default values for lotto-india default_vals=['50','6','5','6','1'] for field in fields: print(field) row = tk.Frame(root) lab = tk.Label(row, width=22, text=field + ": ", anchor='w') ent = tk.Entry(row) ent.insert(0,default_vals[fields.index(field)]) row.pack(side=tk.TOP, fill=tk.X, padx=5, pady=5) lab.pack(side=tk.LEFT) ent.pack(side=tk.RIGHT, expand=tk.YES, fill=tk.X) entries[field] = ent return entries fields = [ 'Total Number', 'Choices given', 'total_jokerballs', 'Match balls', 'Tickets bought' ] ents = makeform(root, fields) v = tk.IntVar() tk.Label(root, text="Jokeball matches", justify=tk.CENTER, padx=20).pack() tk.Radiobutton(root, text="Matches", padx=20, variable=v, value=True).pack(anchor=tk.CENTER) tk.Radiobutton(root, text="Not matches", padx=20, variable=v, value=False).pack(anchor=tk.CENTER) b1 = tk.Button(root, text='Calculate Odds', command=(lambda e=ents: Calculate(e))) b1.pack(side=tk.LEFT, padx=5, pady=5) b3 = tk.Button(root, text='Quit', command=root.quit) b3.pack(side=tk.LEFT, padx=5, pady=5) text2 = tk.Text(root, height=20, width=60) scroll = tk.Scrollbar(root, command=text2.yview) text2.configure(yscrollcommand=scroll.set) text2.tag_configure('bold_italics', font=('Arial', 12, 'bold', 'italic')) text2.tag_configure('big', font=('Verdana', 20, 'bold')) text2.tag_configure('color', foreground='#476042', font=('Tempus Sans ITC', 12, 'bold')) text2.insert(tk.END, '

Lottery Prediction

', 'big') quote = """ Total Number : Totals numbers in range from which numbers are to be chosen e.g. for range 1-49, Total number = 50 Choices given : Number of numbers we can select excluding the joker ball Total Jokerballs : Total number of jokerballs from which one ball is to be chosen Match balls: For how many matches you want to calculate probability Tickets : Number of Tickets bought Jokerball matches : Keep True if you want to calculate the probability of jokerball matching too """ text2.insert(tk.END, quote, 'color') text2.pack(side=tk.LEFT) scroll.pack(side=tk.RIGHT, fill=tk.Y) root.mainloop()

Output:

This brings us to the end of this article where we have learned about Probability, Combinations and how these two can be used in Python to calculate the probability of winning a lottery. If you wish to learn more about Python and the concepts of Machine Learning, upskill with Great Learning’s PG Program Artificial Intelligence and Machine Learning.

How long do banks look at gambling?
How long do banks look at gambling?

3-6 months When lenders conduct their affordability checks, they will look at your bank statements from the previous 3-6 months. This means that...

Read More »
What does 50 chance of rain mean?
What does 50 chance of rain mean?

Here are two examples where there would be a 50% probability of precipitation. Example 1: I am 100% confident that rain will form, but only 50% of...

Read More »
Who wears number 7 in football?
Who wears number 7 in football?

wingers "7" is often associated with effective and profitable wingers or second strikers. "9" is usually worn by strikers, who hold the most...

Read More »
What does a +150 bet pay?
What does a +150 bet pay?

American odds A plus sign indicates how much money you would win on a wager of $100. For example, +150 odds would earn you an additional $150 on a...

Read More »