Yiğit Güneli | yiit.org

And Now For Something Completely Different

geçen gün ruby dökümanlarını karıştırmıştım. kendimi biraz yeterli hissetmeye başladım. bugun lab’da kubilay metine ruby’i anlatırken ceasar şifresini tek satır kod ile yazdım dedi, ben de özendim uğraştım eve gelince. ufak bi hile ile de olsa tek satırda şöyle bir şey oluyor:

gets.chop!.each_byte{|i| i=(i+29).modulo(29)+97; print i.chr}

gets kullanıcıya metin girişi yaptırtıyor.
chop string’in sonundaki satırsonu siliyor.
each_byte stringler için bir yineleyici. burda her seferinde her karakteri i’ye atıyor.
modulo mod alma methodu.
i.chr ise i tamsayısının karşılık geldiği karakteri temsil ediyor.

bu satırın içinde metnin kaç harf kaydıralacağını almayı beceremedim, 29′a eşitledim şimdilik, ama uğraşmaya devam ediyorum. :)

none

Comments | Trackback | July 12th, 2007

< salise saniyenin kaçta kaçıdır? || Lift Your Skinny Fists Like Antennas To Heaven >

Yorum Yazın

  •  
  •  
  •  

Bu konuya gelen yeni yorumları rss ile takip edebilirsiniz: comments feed.

And Now For Something Completely Different

geçen gün ruby dökümanlarını karıştırmıştım. kendimi biraz yeterli hissetmeye başladım. bugun lab’da kubilay metine ruby’i anlatırken ceasar şifresini tek satır kod ile yazdım dedi, ben de özendim uğraştım eve gelince. ufak bi hile ile de olsa tek satırda şöyle bir şey oluyor:

gets.chop!.each_byte{|i| i=(i+29).modulo(29)+97; print i.chr}

gets kullanıcıya metin girişi yaptırtıyor.
chop string’in sonundaki satırsonu siliyor.
each_byte stringler için bir yineleyici. burda her seferinde her karakteri i’ye atıyor.
modulo mod alma methodu.
i.chr ise i tamsayısının karşılık geldiği karakteri temsil ediyor.

bu satırın içinde metnin kaç harf kaydıralacağını almayı beceremedim, 29′a eşitledim şimdilik, ama uğraşmaya devam ediyorum. :)

edit: gayet ince bir yazı alanım olduğu için kod alt satıra da kaymış, oysa değil, yanyana onlar.

Comments | Trackback | May 29th, 2007

< bahar şenliği || .co.uk >

3 yorum “ruby ceasar cipher”

  1. gerekli*bonvoyaj* yazmış. June 12th, 2007 15:26

    pehh ruby de neymişş ayrıcaa bu siteye girdiimde ekran titrio ufaklık
    bu pek hoşuma gitmedi.

  2. gerekli*bonvoyaj* yazmış. June 18th, 2007 01:47

    **R**
    yiit yazı yazmana ihtiyacım var :( kimse yeni yazılar yazmıyorrrr

    PS:R for real. I mean i mean it :)

  3. yiit yazmış. June 18th, 2007 12:26

    deli midir nedir.

Yorum Yazın

  •  
  •  
  •  

Bu konuya gelen yeni yorumları rss ile takip edebilirsiniz: comments feed.