Tekil Mesaj gösterimi
Alt 25 Aralık 2010, 19:03   #1
Çevrimdışı
CesuryureK
Kullanıcıların profil bilgileri misafirlere kapatılmıştır.
IF Ticaret Sayısı: (0)
IF Ticaret Yüzdesi:(%)
Tarih Dönüştürme [ Hicri - Miladi ]




--------------------------
Tarih: 25 Aralık 2010
Yazar: CesuryureK
Bilgi: Emeğe Saygı

---------------------------


Takvim Dönüştürme

Bilindiği üzere Türkiye 1926 yılından sonra miladi takvimi kullanmaya başlamıştır.
Lakin 1926 yılından önceki dönemlerde Hicri takvim kullanılmaktaydı.
1926 yılından önceki bir tarihi miladi takvime göre hangi yıla denk geldiğini öğrenmemiz için mecburi bazı matematiksel işlemler yapmak zorundayız.
Örneğin;
2010 Miladi yılını Hicri yılına dönüştürmek için;
2010 - 621 = 1389
1389 / 33 = 42.09
Eğerki Bölme işleminde çıkan sonuçta noktadan(Virgülden) sonraki ilk rakam(42.09) 5'e eşit ve 5'ten büyükse noktadan önceki(42.09) kısma +1 İlave ediyoruz. Değilse noktadan önceki kısmı direk alıyoruz. Noktadan sonraki ilk rakam "0" 5'e eşit ve 5'ten büyük olmadığı için direk alıp işleme devam ediyoruz.
1389 + 42 = 1431
Demekki 2010 Miladi Yılı 1431 Hicri Yılına Denk Gelir.
-----
Aynı durumun tersi de söz konusu
Elimizde bir hicri yıl varsa ve hangi miladi yıla eşit gelir bilmiyorsak, mecburi bazı matematiksel işlemler yapacağız.
Örneğin 1431 Hicri Yılı hangi Miladi yıla denk geldiğini öğrenmek istiyorsak;
1431 / 33 = 43.36
Noktadan sonraki ilk rakam ".36" 5'e ve 5'ten büyük olmadığı için noktadan önceki kısmı direk alıyoruz. "43."
1431 - 43 = 1388
1388 + 622 = 2010

Kodun da çalışma mantığı aynen bu şekilde olup işte Bu gibi matematiksel işlemlerle uğraşmayıp Kod ile rahatlıkla öğrenebiliriz
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


Kullanım:
Kişi kendisi kullanacaksa /Hicri Yıl: Belirtilen yılın Miladi Yıla Denkliğini verir.
Herhangi bir kanalda da;
!Hicri Yıl
.Hicri Yıl
!Miladi Yıl
.Miladi Yıl

şeklinde de sorgulanabilir.
Hicri ve Miladi sözcüklerinin tüm harf kombinasyonlarında da çalışacaktır. Hıcrİ gibi

Ne işe yarar yahu ne gerek vardı diyenler birgün lazım olursa kullanmayıp gidip hesap makinesini eline alıp hesaplasın
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.


*DİPNOT: Kodu yazma nedenim, Bir mezarlığın önünden geçerken birinin
Doğum yılı: 1358
Ölüm yılı: 1999
diye gördüm ve doğum yılının hicri yıl olduğunu hemen farkettim ve böyle bir kod yazmak istedim.



SCREEN:


Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.




Kod:   Kodu kopyalamak için üzerine çift tıklayın!
Alias Hicri { if (33 // $1) { if (%HicriBak == on) { set -u5 %Hicriver $calc($calc($1 - $calc($1 / 33)) + 622) } elseif (%HicriBak != on) { echo -a $chr(22) $1 Hicri Yılı $calc($calc($1 - $calc($1 / 33)) + 622) Miladi Yılına Denk Gelir | Takvim } } elseif (33 \\ $1) { var %HicriBol $calc($1 / 33) var %HicriYuvarla $mid($gettok(%HicriBol,2,46),1,1) var %HicriAna $gettok(%HicriBol,1,46) if (%HicriYuvarla >= 5) { if (%HicriBak == on) { set -u5 %Hicriver $calc($calc($1 - $calc(%HicriAna + 1)) + 622) } elseif (%HicriBak != On) { echo -a $chr(22) $1 Hicri Yılı $calc($calc($1 - $calc(%HicriAna + 1)) + 622) Miladi Yılına Denk Gelir | Takvim } } else { var %HicriBol $calc($1 / 33) var %HicriAna $gettok(%HicriBol,1,46) var %HicriSon $calc($1 - %HicriAna) if (%HicriBak == on) { set -u5 %Hicriver $calc(%HicriSon + 622) } elseif (%HicriBak != on) { echo -a $chr(22) $1 Hicri Yılı $calc(%HicriSon + 622) Miladi Yılına Denk Gelir | Takvim } } } } Alias Miladi { Var %Bir $1 var %Cikar $calc(%Bir - 621) if (33 \\ %Cikar) { var %MiladBol $calc(%Cikar / 33) var %MiladYuvarla $mid($gettok(%MiladBol,2,46),1,1) var %MiladNokta $gettok(%MiladBol,1,46) if (%MiladYuvarla >= 5) { if (%MiladiBak == on) { set -u5 %Miladiver $calc($calc(%MiladNokta + 1) + %Cikar) } elseif (%MiladiBak != on) { echo -a $chr(22) $1 Miladi Yılı $calc($calc(%MiladNokta + 1) + %Cikar) Hicri Yılına Denk Gelir | Takvim } } elseif (%MiladYuvarla < 5) { if (%MiladiBak == on) { set -u5 %Miladiver $calc(%MiladNokta + %Cikar) } elseif (%MiladiBak != on) { echo -a $chr(22) $1 Miladi Yılı $calc(%MiladNokta + %Cikar) Hicri Yılına Denk Gelir. | Takvim } } } if (33 // %Cikar) { if (%MiladiBak == on) { set -u5 %Miladiver $calc($calc(%Cikar / 33) + %Cikar) } elseif (%MiladiBak != on) { echo -a $chr(22) $1 Miladi Yılı $calc($calc(%Cikar / 33) + %Cikar) Hicri Yılına Denk Gelir. | Takvim } } } Alias Takvim { if (%MiladiBak == on) || (%HicriBak == on) { Set %Echo /msg %TakvimChan | TakvimBilgi } else { set %Echo Echo -a | TakvimBilgi } } Alias TakvimBilgi { %Echo 4HİCRİ TAKVİM BİLGİSİ %Echo * Hicri Takvim Hz. Muhammed'in Mekke'den Medine'ye hicretini (622 Yılı) başlangıç kabul eden ve ayın dünya çevresinde dolanımını esas alan bir takvim sistemidir. %Echo * Ay Esaslı Takvimdir. %Echo - %Echo 4MİLADİ TAKVİM BİLGİSİ %Echo * Hz. İsa'nın doğum gününü (0 Yılı) tarih başlangıcı olarak alınmıştır. %Echo * Dünyanın Güneş Etrafında Dönüşünü Esas Aldığı için Güneş Esaslı Bir Takvimdir. %Echo * Julien Takvimi Olarak da Bilinir. %Echo * Türkiye Bu Takvimi 1926 Yılından İtibaren Kullanmıştır. unset %TakvimChan %Echo } on *:TEXT:*:#: { if $regex($1,/(^[!.]H(i|İ|ı)cr(i|İ|ı)$)/i) && !$2 { msg $chan Lütfen Tarih Belirtin! | halt } if $regex($1,/(^[!.]H(i|İ|ı)cr(i|İ|ı)$)/i) && !$regex($2,\d) { msg $chan şşş $nick Sen Hiç Yazıyla Rakam Gördün mü? Tarih Kısmı Rakamdan Oluşmalıdır! } elseif $regex($1,/(^[!.]H(i|İ|ı)cr(i|İ|ı)$)/i) && $2 && $regex($2,\d) { set %HicriBak on set %TakvimChan $Chan $hicri($2) msg $chan $chr(22) $2 Hicri Yılı %Hicriver Miladı Yılına Denk Gelir. | .Takvim | unset %HicriBak } if $regex($1,/(^[!.]M(i|İ|ı)lad(i|İ|ı)$)/i) && !$2 { msg $chan Lütfen Tarih Belirtiniz. Kullanımı: !Miladi 2010 } elseif $regex($1,/(^[!.]M(i|İ|ı)lad(i|İ|ı)$)/i) && ($2 < 622) { Msg $Chan Hicri Takvim Başlangıcı 622 Senesidir. O Yüzden Verdiğiniz Tarihten Önceki Yıllara Hicri Öncesi Yıllar Denilir ve Tarihi Verilmez! | halt } elseif $regex($1,/(^[!.]M(i|İ|ı)lad(i|İ|ı)$)/i) && $2 && !$regex($2,\d) { msg $chan şşş $nick Sen Hiç Yazıyla Rakam Gördün mü? Tarih Kısmı Rakamdan Oluşmalıdır! } elseif $regex($1,/(^[!.]M(i|İ|ı)lad(i|İ|ı)$)/i) && $2 && $regex($2,\d) { set %MiladiBak on set %TakvimChan $Chan $miladi($2) msg $chan $chr(22) $2 Miladi Yılı %Miladiver Hicri Yılına Denk Gelir. | .Takvim | unset %MiladiBak } }


Umarım Tarih'e Faydamız Olur.
Hoşça Paylaşımlar..

__________________
Şimdi Saat Sensizliğin Ertesi..

Konu CesuryureK tarafından (25 Aralık 2010 Saat 19:32 ) değiştirilmiştir.
 
Alıntı ile Cevapla

IRCForumlari.NET Reklamlar
sohbet odaları eglen sohbet bizimmekan