P3Fans:
Here's a new program we just finished testing called, P3PairPredictor. Based on the last 50 draws, the program outputs( most often) three sets of four numbers. From these numbers you build a set of pairs, at least one of which, often comes up within the next 5 draws.
Below the asterisks is the C Code for the program. For those of you who generated the executable code for the C code we supplied in previous threads, the operation is the same. Just copy and paste the code into your editor and save as P3PairPredictor.c Then run your C compiler on the file. The past draws file has to be called drawsP3.txt. It is a regular text file with the latest draw on top and the oldest on the bottom. No extra characters or spaces. One draw to a line. Play is over a five day period after which the draw file is updated.
Here's an example of 1 cycle of play for the Ky Eve P3. P3PairPredictor gave the following output using the last 50 past draws from May 31, 09 and back:
Pair Number Set -> 1-1-3-5
Pair Number Set -> 1-3-3-5
Pair Number Set -> 1-3-5-5
Pair Number Set -> 3-3-4-5
Pair Number Set -> 3-4-4-5
Pair Number Set -> 3-4-5-5
From these sets we generate the pairs: 11, 13, 33, 35, 15, 55, 33, 34, 35, 44, 45, & 55
The draw results for June 1 - June 5 were: 296, 082, 546, 945, 053. P3PairPredictor
was able to snag the pairs 35, and 45, which appeared in three of the five next draws.
Enjoy!
jayemmar
****************************************************************************
#include <math.h>
#include <stdlib.h>
#include <stdio.h>
int main()
{
int i, j, temp1, temp2, temp3, temp4, a1, a2, a3, a4, a;
int drawCount = 50, hit, results, bound;
FILE *in;
int drawArray[50], knfArray[10];
int array[360] = {
12,13,14,15,16,17,18,19,23,24,25,26,
27,28,29,34,35,36,37,38,39,45,46,47,
48,49,56,57,58,59,67,68,69,78,79,89,
112,113,114,115,116,117,118,119,122,133,144,155,
166,177,188,199,223,224,225,226,227,228,229,233,
244,255,266,277,288,299,334,335,336,337,338,339,
344,355,366,377,388,399,445,446,447,448,449,455,
466,477,488,499,556,557,558,559,566,577,588,599,
667,668,669,677,688,699,778,779,788,799,889,899,
1123,1124,1125,1126,1127,1128,1129,1134,1135,1136,1137,1138,
1139,1145,1146,1147,1148,1149,1156,1157,1158,1159,1167,1168,
1169,1178,1179,1189,1223,1224,1225,1226,1227,1228,1229,1233,
1244,1255,1266,1277,1288,1299,1334,1335,1336,1337,1338,1339,
1344,1355,1366,1377,1388,1399,1445,1446,1447,1448,1449,1455,
1466,1477,1488,1499,1556,1557,1558,1559,1566,1577,1588,1599,
1667,1668,1669,1677,1688,1699,1778,1779,1788,1799,1889,1899,
2234,2235,2236,2237,2238,2239,2245,2246,2247,2248,2249,2256,
2257,2258,2259,2267,2268,2269,2278,2279,2289,2334,2335,2336,
2337,2338,2339,2344,2355,2366,2377,2388,2399,2445,2446,2447,
2448,2449,2455,2466,2477,2488,2499,2556,2557,2558,2559,2566,
2577,2588,2599,2667,2668,2669,2677,2688,2699,2778,2779,2788,
2799,2889,2899,3345,3346,3347,3348,3349,3356,3357,3358,3359,
3367,3368,3369,3378,3379,3389,3445,3446,3447,3448,3449,3455,
3466,3477,3488,3499,3556,3557,3558,3559,3566,3577,3588,3599,
3667,3668,3669,3677,3688,3699,3778,3779,3788,3799,3889,3899,
4456,4457,4458,4459,4467,4468,4469,4478,4479,4489,4556,4557,
4558,4559,4566,4577,4588,4599,4667,4668,4669,4677,4688,4699,
4778,4779,4788,4799,4889,4899,5567,5568,5569,5578,5579,5589,
5667,5668,5669,5677,5688,5699,5778,5779,5788,5799,5889,5899,
6678,6679,6689,6778,6779,6788,6799,6889,6899,7789,7889,7899};
/*
**Open files
*/
in = fopen("drawsP3.txt", "r");
if(in == NULL)
{
printf("error in opening drawsP3.txt\n");
getch();
exit(0);
}
/*
** Zero the frequency array
*/
for(i = 0; i < 10; i++)
{
knfArray[i] = 0;
}
/*
** Get the past 50 draws into memory and then
** loop through the first 20 draws and see if
** there's a pair number set for these draws
*/
for(i = 0; i < 50; i++)
{
fscanf(in, "%d", &a);
drawArray[i] = a;
}
results = 0;
start:
for(i = 0; i < 360; i++)
{
hit = 0;
/*
** Peel off the digits from the pair number set
*/
temp1 = array[i]/1000;
temp2 = (array[i] - 1000*temp1)/100;
temp3= (array[i] - 1000*temp1 - 100*temp2)/10;
temp4 = (array[i] - 1000*temp1 - 100*temp2 - 10*temp3);
for(j = 0; j < drawCount; j++)
{
/*
** Peel off the digits from this draw
*/
a = drawArray[j];
a1 = a/100;
a2 = (a - 100*a1)/10;
a3= (a - 100*a1 - 10*a2);
/*
** Check to see if at least one digit matches one
** in the key set
*/
if((a1 == temp1 || a1 == temp2 || a1 == temp3 || a1 == temp4)
||(a2 == temp1 || a2 == temp2 || a2 == temp3 || a2 == temp4)
||(a3 == temp1 || a3 == temp2 || a3 == temp3 || a3 == temp4))
{
/*
** Bump the match count when a match occurs
*/
hit++;
}
}
/*
** If the at least one number
** in the pair number set matched
** for all draws, print out the key number set
*/
if(hit == drawCount)
{
printf("Pair Number Set -> %i-%i-%i-%i\n",
temp1, temp2, temp3, temp4);
/*
** Signal that a pair number set was found
*/
results = 1;
}
}
/*
** If no pair number set was found, drop the last draw
** and search again
*/
if(results == 0)
{
drawCount = drawCount - 1;
goto start;
}
printf("Enter any key to exit\n");
getch();
close(in);
}