Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Stohastic / Stohastic / park / main

.c
Скачиваний:
4
Добавлен:
18.08.2019
Размер:
1.27 Кб
Скачать
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#define N 1000
long u=0.2;
int repeatsearcher(double *x)
{
 int evr=0,c,j,k;
for(j=1;j<N;j++)
    {


    if(x[j]==x[0])
        {
         evr=j;c=0;
         for(k=j+1;k<N;k++)
            if(x[k]==x[k-j]) c++;
                else break;
             //printf("cyyyyycle %d\n",c);
        if(c==N-1-j)break;

        }
    }
return evr;
}


float rand1(long*idum)
{
int NTAB=32;
int IA = 16907;
int IM =2147483647;
double AM = 1.0/IM;
int IQ= 127773;
int IR = 2836;

int NDIV = (1+(IM-1)/NTAB);
double EPS =  1.2e-7;
double RNMX = 1.0-EPS;


  int j;long k; static long iy=0;
long iv[NTAB];  float temp;
  if(*idum <= 0 || !iy)
  {
if(-(*idum)<1) *idum=1;  else *idum=-(*idum);
for (j=NTAB+7; j>=0; j--)
{
k=(*idum)/IQ;
*idum=IA*(*idum-k*IQ)-IR*k;
if( idum < 0) *idum += IM;
if(j<NTAB) iv[j]=*idum;
}
iy=iv[0];
  }
  k=(*idum)/IQ;
  *idum=IA*(*idum-k*IQ)-IR+k;
  if(*idum<0)*idum+=IM;
  j=iy/NDIV;
  iy=iv[j];
  iv[j]=*idum;
  if((temp=AM*iy)>RNMX) return RNMX;
  else return temp;
}


int main()
{
int i;double x[N];
for(i=0;i<N;i++)
{

    x[i]=rand1(&u);
   printf("%1.29f\n",x[i]);
}
printf("%d\n",repeatsearcher(x));
  return 0;
}
Соседние файлы в папке park
  • #
    18.08.20191.27 Кб4main.c
  • #
    18.08.20191.1 Кб4park.cbp
  • #
    18.08.2019214 б4park.depend
  • #
    18.08.2019370 б5park.layout