[linux-programlama] Re: yuzdeli rastgele sayi..

---------

From: Huseyin Mizan (hmizan@eliop.com.tr)
Date: Tue 09 Mar 2004 - 06:43:06 EST

  • Next message: Orhan Berent: "[linux-programlama] Re: DENEYİMLİPROGRAMCILAR ARIYORUZ (ViceBusiness.com)"

    Selamlar

    Yanıtlar gerçekten güzelve ben de ayrıca c programlamayı referans alarak
    bir do while dongusu icersinde herbir yüzde x sayisi icin farklı olan bir
    for dongusu ile ihtiyac duyulan elemanlar uretilerek daha sonrasında while
    sartında random seçim sartını kontrol ederken cıkısa zorlayabilirsiniz gibi
    gelyor bana.Tabiiki bunu her for dongusunden cıkısta continue sozcügü ile
    while sartını kontrol etmeye zorlamanız gerekir alamında dusunmemiz gerekir
    yani

    do
    {
    n_kontrol=0;
    for (controlsayi=0 ; controlsayi<=yuzde_n ; controlsayi++)
    n_kontrol=1;
    continue;

    n_kontrol=0;
    for (controlsayi=0 ; controlsayi<=yuzde_m ; controlsayi++)
    n_kontrol=2;
    continue;

    n_kontrol=0;
    for (controlsayi=0 ; controlsayi<=yuzde_x ; controlsayi++)
    n_kontrol=3;
    continue;
    }
    while(random (z)_conditions)

    switch (n_kontrol)
    {

    case 1:
    printf("Rasgele uretim sayiniz 1 yani yuzde_n");
    break;
    case 2:
    printf("Rasgele uretim sayiniz 2 yani yuzde_m");
    break;
    case 3:
    printf("Rasgele uretim sayiniz 3 yani yuzde_x");
    break;
    default :
    printf("yuzde_x,yuzde_m,yuzde_n icin hicbir sayı girmediniz tekrar
    girebilirsiniz/*yorum kısmı*/)");
    }

    yukaridaki örnek sadece her yuzde m,n,x degeri icin for donguleri icinde
    kalarak ,
    for dongu islevi bitince while sartı kontrolu ile (continue nedeni
    ile)kendisini
    cikisa zorlamaktadir. Tabii burada goremedigim kısimlar olabilir ama bu
    mantık
    yaklaşık sonucu verecektir.Belki de bu random while kısmında sistem saatini
    bir
    çarpan olarak kullanmalıdır.veya kulanıcınn bir yanıtı olabilir bu size
    kalmıs bir
    tasarim.Önerimi denemedim ve sizin icin mantık anlamsız gelebilir .bu sadece
    bir
    öneri ve while kısmını istediginiz herhangibir sartla kontrol edebilirsiniz
    -----Original Message-----
    From: linux-programlama-bounce@liste.linux.org.tr
    [mailto:linux-programlama-bounce@liste.linux.org.tr]On Behalf Of Serdar
    KÖYLÜ
    Sent: Tuesday, March 09, 2004 9:51 AM
    To: linux-programlama@liste.linux.org.tr
    Subject: [linux-programlama] Re: yuzdeli rastgele sayi..

    Selamlar..

    Optimizasyon meselesi :)

    Eger "optimize for speed (Optimize for Less CPU Usage)" hiz icin
    optimize etmek istiyorsaniz array kullanmak iyidir. Yok, "Optimize for
    size" olarak dusunuyorsaniz bir fonksiyon ile yapmak gerekir.

    Diger yandan mesela 5 adet deger varsa, cogu zaman 100 elemanli bir
    array yapmak pek akillica degildir. Ornegin,

    A->%40
    B->%5
    C->%15
    D->%30
    E->%10

    ise, 1 tane B, 8 tane A, 3 tane C, 6 tane D, 2 tane E olmak uzere, 20
    elemanli bir array yeterli olacaktir. OKEK/OBEB Vs. mevzulari.

    Olaya birde su acidan bakin, eger siz 100.000 deger icinden bazilarinin
    farkli frekanslarda olmasini istiyor olsaydiniz, size ne kadar bir array
    gerekirdi?

    Saygi ve sevgiler..

    > merhaba..
    >
    > yardimlariniz icin tesekkur ederim...
    >
    > rastgelelik kavrami acisindan en dogru cozum herbir sayisi dize icerisinde
    > yuzde oraninca tekrarlamak sanirim..
    >
    > tekrar tesekkurler :)
    >
    >
    >
    >
    >


  • Next message: Orhan Berent: "[linux-programlama] Re: DENEYİMLİPROGRAMCILAR ARIYORUZ (ViceBusiness.com)"

    ---------

    Bu arsiv hypermail 2.1.6 tarafindan uretilmistir.