Şimdi Ara

C dilinde birbirinden farklı random sayılar atama (2. sayfa)

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
3 Misafir - 3 Masaüstü
5 sn
62
Cevap
2
Favori
2.091
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
1 oy
Öne Çıkar
Sayfa: önceki 1234
Sayfaya Git
Git
sonraki
Giriş
Mesaj
  • Neyi ispatlamaya çalışıyorsun bilmiyorum ama burada sabit bir maske, xor ve sadece sifirinci bite bakip logic shift ile O(1) de yapılan işlemin gerçekten rastgele(?) Sonuçlar vermeyeceği zaten bariz değil mi?


    Systick veya başka bir şekilde randomize edilmiş bir seed ile başlarsak random gozuken ve tekrar etmeyen bir sayı dizisini O(1) de elde edebiliyoruz. Hash table vs gibi bir seyle tekrarlayan sayi var mi diye aramaya gore muhtemelen onlarca kat daha hizli ve herhangi ekstra memory space ihtiyaci da yok.

    integer based embedded system'lerde rastgele sayi dizisi uretmek icin neredeyse standart olarak bu tip bit manipulasyonlari kullaniliyor. Ha illa random olmasi cok onemli ise, secure processorlerde TRNG diye dedicated bir hardware unit oluyor. Cunku bunu konvansiyonel olarak yapmak, kullandığın ALU bozuk degilse zaten matematiksel olarak imkansiz.


    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Kod

    Yığını:
    import random sayılar = [*range(50)] cevap = [] for i in range(20):  index = random.randint(0, len(sayılar) - 1) cevap.append(sayılar[index]) sayılar.pop(index)

    Python'da bu şekilde yapılabilir. Aynı sayıyı tekrar bulma ihtimali yok.

  •  


    Mesele, elimizdeki ilk diziyi güncelleyip küçültmekten geçiyor.




    < Bu mesaj bu kişi tarafından değiştirildi Stack -- 1 Nisan 2021; 11:16:8 >
  • SBK S kullanıcısına yanıt

    Sorun çözüldü yeğen kendini yorma boşuna 

    Bişey demiyoruz sadece olaya yanlış şekilde atladın o kadar. Severim senin teknik konuşmalarını ben  

  • Stack S kullanıcısına yanıt

    Sizin önderdiğiniz çözümü konuda göremedim ben.

  • "random" un tanımının ne olduğu da önemli tabi.


    Eğer sonsuz sayı çekiyor olsaydık bu sayıların dağılımı (bir histogram çizdiğimizi düşünelim) uniform ise sayıların seçimine random diyebiliriz.


    Histogramda non-uniform bir distribution varsa; belli sayılar diğerlerinden anlamlı derecede fazla çekilmişse veya bazı rand() implementation'larda olduğu gibi gaussian bir dağılım varsa rastgelelikten söz edemeyiz.


    kripto amaçlı rastgele sayı üreten fonksiyon ve donanım bloklarının ne kadar "random" olduğu epey ciddi bir şekilde analiz edilir ve bunların fiziksel etkilerle belli sayıları çekmeleri için manipule edilip edilemeyeceği de incelenir. örneğin işlemcinin besleme voltajı ile oynanır, beslemeye belli frekanslarda transient noise eklenir, veya clock sinyali benzer şekilde manipule edilir. hatta işlemci sıvı azot ile veya environment chamber'da soğutulur, ısıtırlır. üretilen random sayıların distribution'una bakılır. (side-channel attack olarak da yapılır böyle şeyler)


    şu anda en "rastgele" ve yüksek throughput'lu sayı üretimi optik olarak yapılmaktadır. quantum random number generation (QRNG) denilen bu teknoloji ile rastgele sayı üreten cihazlarla ilgili ülkemizde de özellikse savunma sanayi için çalışmalar mevcuttur, prototip cihazlar vardır.





  • SBK S kullanıcısına yanıt

    Allah razı olsun senden çok istifade ettik  

  • quote:

    Orijinalden alıntı: Stack

    Allah razı olsun senden çok istifade ettik  

    İşte bu yüzden Türkçe forumlarda teknik konu başlıklarına yazmaktan çok önceleri vazgeçmiştim.


    Stackovrrflow'da, go4expert'te, hackerrank'te böyle Ortadoğu kafalı biri çıkıp sululuk yapınca, özellikle de rookie seviyede biriyse anında tekmeyi basıyorlar.


    Haydi selam ve dua ile


    < Bu ileti mobil sürüm kullanılarak atıldı >
  • SBK S kullanıcısına yanıt

    Gerçekten bir naneden anlasan konuyla doğrudan alakasız ve başkasına ait bir kodu paylaşmazdın.

    Laf salatası yerine önce sorulanı, sonra da istenileni ayırt etmeyi öğrenmelisin. Bence sen paylaşım falan yapma daha iyi!

  • quote:

    Orijinalden alıntı: Stack

    Gerçekten bir naneden anlasan konuyla doğrudan alakasız ve başkasına ait bir kodu paylaşmazdın.

    Laf salatası yerine önce sorulanı, sonra da istenileni ayırt etmeyi öğrenmelisin. Bence sen paylaşım falan yapma daha iyi!

    Samsung Galaxy S6-S9 arası bir telefon kullandiysan muhtemelen Android'in altinda Linux Kernel space'te calisan benim yazdigim bir device driver'i kullanmissindir.

    Sende bu telefondan olmadiysa bile birkac yuz milyon insan hayatlarinin bir doneminde kullandi :)


    Eger yurdisi is deneyimin yoksa veya Turkiye'de TL maas ile calisiyorsan cok gulecegim :)


    Dunning Kruger sendromu tanısı koyuyorum sana. Tedavi olarak da cok okuma, kendini gelistirme ve karsindakine saygi duyma dersleri yaziyorum.


    CollabEdit'te bir live session ile C/C++/Assembly (ARM veya Intel v86 mimarisi) algorithms, data structures konularinda tokatlamaya hazirim :) Rastgele 10 soru secelim bakalim kim time complexity ve space 'te daha iyi kod yaziyor. Son uc yildir mulakat yapiyorum, masanın diger tarafindayim. Eger bir silicon valley firmasinda Istanbul'da mulakata girdiysen ve sana sadece integer math kullanarak square root bulma gibi sorular sorulduysa karsima oturmussundur ve terler icinde cekip gitmissindir. Bu tabi ODTU, BOUN, ITU veya Koc mezunuysan veya yurtdisinda bir akademik derecen varsa gerceklesmis olabilir.


    Son bir senedir Verilog.ile IC (bilmiyorsan Integrated circut demek) design ve SystemVerilog verification yapiyor olsam da yaklasik 18 yildir embedded system software developer olarak calistim. Fena uzerim.


    Hadi git otede oyna kucultup guncelledigin dizi ve javascriptte bir kelimeyi tersten yazdirip vay beee dedirten bombos ozguveninle.




    < Bu mesaj bu kişi tarafından değiştirildi SBK -- 1 Nisan 2021; 23:44:18 >
    < Bu ileti mobil sürüm kullanılarak atıldı >




  • @SBK ben seni ta 2005 den buranın Elektronik forumundan hatırlıyorum. Elektronik forumu artık beyaz eşya tamirine döndüğü için bende buraya geldim  

    Burada da ergenden geçilmiyor  DH nin eski elektronik forumu çok sağlamdı. Benim hatırladığım ChipArchitect vardı yine VLSI tasarımında çalaışan. BlueICE vardı, i368 vardı. Hey gidi günler  

  • quote:

    Orijinalden alıntı: controller_

    @SBK ben seni ta 2005 den buranın Elektronik forumundan hatırlıyorum. Elektronik forumu artık beyaz eşya tamirine döndüğü için bende buraya geldim  

    Burada da ergenden geçilmiyor  DH nin eski elektronik forumu çok sağlamdı. Benim hatırladığım ChipArchitect vardı yine VLSI tasarımında çalaışan. BlueICE vardı, i368 vardı. Hey gidi günler  

    O zamanlardan tanisip güzel dostluklar kurduğum kişiler oldu. Birisi şu anda AMD/Austin'de GPU mimarileri.uzeirne çalışıyor, biri de Intel/Varsova'da low level network protokolleri ile ugrasiyor.

    Forum cidden guzeldi. Su anda bu.sekilde duzgun insanlarla tanisilabilecek bir ortam bilmiyorum. Retro bilgisayar forumlarinda (forum ismi vermeyeyim) gayet saglam karakterli arkadaslar var. Sanirim yasla da ilgili bu. Bu cihazlara ilgi duyan insanlar 40+ genelde.




    < Bu mesaj bu kişi tarafından değiştirildi SBK -- 2 Nisan 2021; 0:34:10 >
    < Bu ileti mobil sürüm kullanılarak atıldı >




  • SBK S kullanıcısına yanıt

    Onca işi yaptığını söylüyorsun, sonra çıkış konuyla alakasız ve başka birine ait kodu paylaşıp elaleme maskara oluyorsun  

    Senin gibileri iyi bilirim. Artık bu konuyu uzatma derim. Yoksa sen ve yardakçıların battıkça batacaksınız. Daha konuda ne yazıldığını, ne istendiğini bile algılayamıyorsun. Muhtemelen anlattığın şeyleri de (eğer doğruysa tabi) sağdan soldan kod araklayarak yapmış olmalısın! İşte şimdi buna iyi gülünür  


    Son tavsiyem sen o önemli işlerinle ilgilen. Ne işin var forum köşelerinde çoluk çocukla(!) değil mi? Hadi aslanım.

  • 
Sayfa: önceki 1234
Sayfaya Git
Git
sonraki
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.