M M C , M C & etc Random Number Generator

/* ........Random Number Generator.........*/
/*.........Author: Sudipta Kumar paik......*/
/*.........Date: 16/02/2008Time:11:47 pm...*/

#include stdio.h >
#include stdlib.h >
#include dos.h >
#include math.h >

main()
{
int a,b,k,i,j,m,nn,seed,r[50];
char c;


clrscr();

start:
printf("\n\n\n ==========================================================");
printf("\n ==========================================================");
printf("\n Your Choice : ");
printf("\n ==========================================================");
printf("\n [a]= MIXED MULTIPLICATIVE CONGRUENTIAL (M M C) GENERATOR:");
printf("\n [b]= MULTIPLICATIVE CONGRUENTIAL (M C) GENERATOR:");
printf("\n [c]= ADDITIVE CONGRUENTIAL GENERATOR:");
printf("\n [d]= ARITHMATIC CONGRUENTIAL GENERATOR:");
printf("\n [e]= EXIT:");
printf("\n ==========================================================");
printf("\n Choice: ");
c=getchar();
printf("\n ==========================================================");
switch(c)
{ case 'a':

printf("\n Enter the INTEGER Values of a: ");
scanf("%d",&a);
printf("\n Enter the INTEGER Values of b: ");
scanf("%d",&b);
printf("\n Enter the INTEGER Values of m: ");
scanf("%d",&m);

printf("\n Numbers of Random Numbers to be generated n= ");
scanf("%d",&nn);

printf("\n\n [ %d ] Random Numbers are..........\n\n",nn);

r[0]=1;

for(i=1; i<=nn; ++i)
{
r[i]=(a*r[i-1]+b)%m;
printf(" °%4d° ",r[i]);
}

break;

case 'b':

printf("\n Enter the INTEGER Values of a: ");
scanf("%d",&a);
printf("\n Enter the INTEGER Values of m: ");
scanf("%d",&m);
printf("\n Numbers of Random Numbers to be generated n= ");
scanf("%d",&nn);
printf("\n\n [ %d ] Random Numbers are..........\n\n",nn);

r[0]=1;
b=0;

for(i=1; i<=nn; ++i)
{
r[i]=(a*r[i-1]+b)%m;
printf(" °%4d° ",r[i]);
}

break;

case 'c':

printf("\n Enter the INTEGER Values of b: ");
scanf("%d",&b);
printf("\n Enter the INTEGER Values of m: ");
scanf("%d",&m);

printf("\n Numbers of Random Numbers to be generated n= ");
scanf("%d",&nn);

printf("\n\n [ %d ] Random Numbers are..........\n\n",nn);

r[0]=1;
a=1;

for(i=1; i<=nn; ++i)
{
r[i]=(a*r[i-1]+b)%m;
printf(" °%4d° ",r[i]);
}

break;

case 'd':

printf("\n Enter the INTEGER Values of r1: ");
scanf("%d",&r[1]);
printf("\n Enter the INTEGER Values of r2: ");
scanf("%d",&r[2]);
printf("\n Enter the INTEGER Values of m: ");
scanf("%d",&m);

printf("\n Numbers of Random Numbers to be generated n= ");
scanf("%d",&nn);

printf("\n\n [ %d ] Random Numbers are..........\n\n",nn);

for(i=1; i<=nn-2; ++i)
{
r[i+2]=(r[i]+r[i+1])%m;
printf(" °%4d° ",r[i+2]);
}

break;

case 'e':

printf("\n\n\n\t\t\t\t\t\t ............Thanks");
printf("\n\n\n\t\t\t\t\t\t ............Develop By Sudipta");
delay(1400);
exit(1);

}
printf("\n\n\n\t\t\t\t\t\t ............Press Enter");
getch();
goto start;
}

No comments:

Post a Comment