Hirdetés

Új hozzászólás Aktív témák

  • Sianis

    addikt

    Sziasztok!

    Úgy tűnik kész a program közzé teszem a forrást, hátha lát benne valaki komolyabb hibát.

    #include <stdlib.h>
    #include <stdio.h>
    #include <math.h>
    #include <conio.h>

    #define random(range) (rand() % (range))

    main()
    {
    char a;
    unsigned int i,j,k,l,t,M,N,db;
    double szam,szoras,szoras2,xatlag,szumma,r1,r2;
    double xi[3000];
    FILE *fout;

    srand(time(NULL));
    fout=fopen(''ki.txt'', ''w'');
    printf(''\nNyitrai Istvan Statisztika feladata.'');
    printf(''\nKerem adja meg a kiserletek szamat!'');
    scanf(''\n%d'',&M);
    printf(''\nKerem adja meg a valtozok szamat!(max 3000)'');
    scanf(''\n%d'',&N);
    if (N>3000)
    {
    printf(''/n Tul nagy elemszam,inditsa ujra.'');
    exit;
    }
    xatlag=0;
    db=M;
    /*printf(''\nKivanja latni az adatokat? (0/1)'');
    scanf(''%s \n'',&a);
    if (a=='i')*/
    for (i=0;i<N;i++)
    { // N kezdet
    xi=0;
    l=0;
    r2=0;
    for(j=0;j<M;j++)
    { //M kezdet
    r1=0;
    r2=0;
    for (k=0; k<12; k++)
    { // k kezdet
    szam=(random(10000));
    szam=szam/10000;
    r1+=szam;
    } // k vég
    r1=r1-(double)6;
    r1=r1*(double)8.1666;
    fprintf(fout,''\n%8.3lf'',r1);
    r2=(((double)1.2*r1)+(double)1);
    if (r1<(double)0)
    if (r1>(double)(-0.1666))
    {
    fprintf(fout,'' megfelel %8.4lf'',r2);
    l++;
    }
    else { fprintf(fout,'' nem felel meg %8.4lf'',r2);}
    else { fprintf(fout,'' nem felel meg %8.4lf'',r2);}
    }
    //printf(''\ni = %d'',(int)i);
    xi
    =l/(double)M;
    xatlag=xatlag+xi;
    }
    printf(''\nxatlag összesen: %lf'',xatlag);
    xatlag=(xatlag/N);
    printf(''\n\n\n A szimulacio vegerdmenye: %3.8lf valoszinuseggel esik a megadott hatarok kozze.'',xatlag);
    printf(''\n A pontos vegerdmeny : 0.008 .'');
    getch();
    fclose(fout);
    }


    Kérdésem a következő...hogyan lehetne úgy számot generálni, hogy 5-6 tizedesjegyű pontossággal állít elő 0-1 között? Nekem eddig 4-ig sikerült eljutni, ha feljebb veszem a 10000-ig generálást, akkor már hibás számok generálódnak. Ötlet esetleg?</p>


    MOD: Kicsit bugos a PH motor, a ''-t ' '-nek írja...ha kódként írom be...

    [Szerkesztve]

Új hozzászólás Aktív témák