| husonet | 15.04.2004 - 00:32:35 |
| Arkadaşlar bu konu Forum'da Çok soruluyordu ilgimi çekti ve sizler için yazdım. Hayırlı olsun...
Yazdığım Kodlar Türk Tarih Kurumu Sayfasına göre test edebilirsiniz. Ben on onbeş defa test ettim çalışıyor. http://www.ttk.gov.tr/takvim.asp Uses kısmına Math unit'ini eklemeyi unutmayın ayrıca form'unuza 1 adet DateTimePicker bileşeni ve 1 adet Button ekleyiniz. Function IntPart(FloatNum:Double):Double; Begin if FloatNum < -0.0000001 Then Result:= Ceil(FloatNum -0.0000001) Else Result:= Floor(FloatNum +0.0000001); End; procedure TForm1.Button1Click(Sender: TObject); var Tarih:TDateTime; JD, L,N, J:TDateTime; Gun, Ay, Yil: Word; AyStr:String; begin Tarih := DateTimePicker1.Date; DecodeDate(Tarih, Yil, Ay, Gun); jd := IntPart((1461*(Yil + 4800 + IntPart((Ay-14)/ 12)))/ 4) + IntPart((367*(Ay-2-12*(IntPart((Ay-14)/ 12))))/ 12)-IntPart((3*(IntPart((Yil+4900+IntPart((Ay-14)/ 12))/ 100)))/ 4)+Gun-32075; L := Jd - 1948440 + 10632; N := IntPart((l-1)/10631); L := L - 10631 * N + 354; J := (IntPart((10985-L)/5316))*(IntPart((50*L)/17719))+(IntPart(L/5670))*(IntPart((43*L)/15238)); L := L-(IntPart((30-J)/15))*(IntPart((17719*J)/50))-(IntPart(J/16))*(IntPart((15238*J)/43))+29; Ay := Ceil(((IntPart((24*L)/ 709)))); Gun := Ceil(L-IntPart((709*ay)/ 24)); Yil := Ceil(30* N + J -30); Case (Ay) Of 1: AyStr:= 'Muharrem'; 2: AyStr:= 'Safer'; 3: AyStr:= 'Rebiü''l- Evvel'; 4: AyStr:= 'Rebiü''l- Ahir'; 5: AyStr:= 'Cemaziye''l- Evvel'; 6: AyStr:= 'Cemaziye''l- Ahir'; 7: AyStr:= 'Recep'; 8: AyStr:= 'Saban'; 9: AyStr:= 'Ramazan'; 10: AyStr:= 'Sevval'; 11: AyStr:= 'Zi''l-ka''de'; 12: AyStr:= 'Zi''l-Hicce'; End; if AyStr = 'Sevval' Then //Örnek 14/11/2004 Tarihi Ramazan Bayramı Begin if (Gun >= 1) and (Gun <=3) then ShowMessage('Ramazan Bayramı Tatili !!!'); End Else if AyStr = 'Zi''l-Hicce' Then //Örnek 21/01/2005 Tarihi Kurban Bayramı if (Gun >= 10) and (Gun <=14) then ShowMessage('Kurban Bayramı Tatili !!!'); ShowMessage(IntToStr(Gun) + ' ' + AyStr+ ' ' + IntToStr(Yil)); end; Görüşlerinizi yazarsanız sevinirim. Hüseyin Özdemir. huseyin@durmus.net | |
| oguzozturk74 | 15.04.2004 - 01:15:52 |
| Ellerine sağlık Hüseyin kardeş.. :)
Saygılar Oğuz ÖZTÜRK | |
| hdayi | 15.04.2004 - 10:13:24 |
| Ellerine sağlık Hüseyin.
3 Rebiü'l Evvel 1390'da doğmuşum. Sanırım miladi takvimi tercih edeceğim (yaş biraz fazla çıktı da :) ) | |
| husonet | 15.04.2004 - 10:29:50 |
| Rica Ederim.
Bu arada HDayi Hocam size Amca mı desem Abi mi desem ne desem siz bayağı genç gösteriyorsunuz. Bu gençliğinizin sırrı nedir? Benden 8 Yaş büyüksünüz. (9 Mayıs 1970) lisiniz galiba Yan yana gelsek eminimki benden 8 yaş buyuk olduğuna inanmazlar Aksini savunurlar. Maaşallah. Bu arada bende bakayım Kaç yaşındayım 28 Rebiü''l- Evvel 1398 çıkıyor. Bunda sonra yaşımı soran olursa 1398 doğumluyum diyeceğim. :lol: :lol: :lol: :lol: İyi Çalışmalar. | |
| husonet | 15.04.2004 - 10:30:53 |
| Ayrıca benim şimdiye kadar emekli olmam lazımdı Yaş oranını 610 seneyemi çıkardılar? :roll: | |
| mege | 15.04.2004 - 10:34:01 |
| ah ah ramazan bayramı 14 Kasım Pazara geliyor, içim yandı aya gitti bal gibi tatil :evil: Kurban bayramında 21 Ocak Cuma ya :cry: :cry:
gitti tatiller ehüüü, allahtan yılbaşı ramazanla çakışmıyor, yoksa o tatilde giderdi. ya biz buara niye diğer dinlerin bayramlarını kutlamıyoruz :P yazık değilmi gayrimüslim vatandaşlarımıza, şimdi paskalya bayramı falan olsa iyi olmazmıydı :) şaka biyana hocam program güsel olmuş elinize sağlık. Doğum günüm 25 Zi'l Hicce 1401 :) vay be Fatihin Fedaisi ile beraber doğmuşuz :) | |
| hdayi | 15.04.2004 - 10:34:20 |
| Valla Hüseyin özel bir sırrım yok. Allah vergisi. Normale bakarsak herhalde acaip yaşlı görünmem lazım, çay, sigara, kahve ne ararsan var. Sadece çok uyurum :)
Bu arada iyice açık etmişsin yaşımı falan, genç gösterdiğim için daha gencim falan diyordum herkese ben, şimdi ne diyeceğim :) | |
| coderlord | 22.02.2005 - 15:00:23 |
| Mükemmel.. Tam aradığım şeydi. Bir ara kendim yazayım dedim. Nette aradım bunun formülünü. Ramazan bayramı hangi güne geliyor öğrenmek için. Ancak baktım ki iş ayın yörünge hesabına gidiyor, vazgeçmiştim. Teşekkürler. | |
| bobasturk | 22.02.2005 - 18:30:30 |
| merhabalar,
hüseyin abi deneyemedim ama eminimki güzel olmuştur. neden deneyemedim derseniz bu soruyu sormaya utanıyorum ama fonction u nereye yazacağımı bilemedim. bildiğim kadarı ile private veya public kısmına yazılıyor ama oralara yazdım begin alanını kırmızıya boyuyor ve bekliyor. begin de bi hata var diyor ama bilemedim hata 'END' expected but 'BEGİN' found nerde yanlışım var bilemedim. kolay gelsin. | |
| husonet | 22.02.2005 - 18:50:44 |
| Form una 1 adet dateTimePicker ve Bir adet button ekle kodu implementation kısmının altına yapıştır. Sonra da Buton un OnClick eventine bir kere tıkla Ardından Run yap.
Fonksiyonıumuz bu Function IntPart(FloatNum:Double):Double;
Begin if FloatNum < -0.0000001 Then Result:= Ceil(FloatNum -0.0000001) Else Result:= Floor(FloatNum +0.0000001); End; Geri kalanı Button bileşenimizin OnClickEvent Codu. Kolay gelsin... | |
| bobasturk | 22.02.2005 - 21:03:50 |
| merhabalar,
6 cemaziye'l-evvel 1389 doğumlu imişim. garip geldiği kadar da hoş. abi yardımın için sağol gördüğün gibi işi çözdüm. fonction deyince yukarıya bi yere yazıldığını sanmış idim o yüzden karıştırdım. yorduğum için özür dilerim ve eline sağlık derim. kolay gelsin | |
| P206 | 23.02.2005 - 10:29:57 |
| Bende 20 Cemaziye'l- Ahir 1400 doğumluymuşum. :) Ama Bende yaşımı hiç göstermem :) en fazla 1405 doğumlu gibi . | |
| P206 | 31.08.2005 - 11:29:27 |
| @Husonet daha önce kodunu incelemiştim ama bu gün lazım oldu kullandım. Sana Teşekkür ederim.
Kurban bayramı için <=14 yerine <=13 ile değişmesi lazım yoksa bayram 5 gün oluyor :) Birde kandilleri de ekledim belki bakşa arkadaşların işine yarar. If AyStr = 'Recep' Then begin If gun = 26 Then ShowMessage('Miraç Kandili'); If gun = 6 Then ShowMessage('Regaip Kandili') End; If AyStr = 'Saban' Then begin If gun = 14 Then ShowMessage('Berat Kandili') End; If AyStr = 'Rebiü''l- Evvel' Then begin If gun = 11 Then ShowMessage('Mevlid Kandili') End; If AyStr = 'Ramazan' Then begin If gun = 26 Then ShowMessage('Kadir Gecesi') End; Herkese iyi çalışmalar.. | |