Doğum günü hesaplama

Başlatan mikromuh, 22 Eylül 2009, 18:19:35

mikromuh

Merhaba arkadaşlar,mikroişlemci ile doğum günü hesaplama üzerine matematiksel mantık arıyorum.Yardımcı olursanız sevinirim.Tşk.

Tagli

Doğum günü hesaplamak ne demek?
Gökçe Tağlıoğlu

mikromuh

Örneğin bugün  22.09.2009

Bu tarih bilgisi alındığında bugünün Salı olduğunu bulabileceğim matematiksel hesap arıyorum.Teşekkürler.

M_B

Eger sadece hangi gün olduğunu bulmak istiyorsanız
PCF8583 veya DS1307-DS1302 turu entegre ile yapılabilir  diye dusunuyorum. Gecerli tarihi girince sanırsam gun bilgisini verebilir.
İmkanın sınırlarını görmek için imkansızı denemek lazım.                                                             Fatih Sultan Mehmet

mikromuh

Evet,ancak farklı bir sebebten dolayı tarih bilgisi ile günü bulmaya çalışıyorum.Sistemde saat entegresi olmuyacak.Asp ile yapılmış örnek kodlar var bunları uygulamaya çalışıyorum.Bu işin matematiğni bulabilirsem işim kolaylaşır.Aradığım tam olarak bu.Teşekkürler.

Tagli

Aklıma gelen ilk çözüm bir referans tarihi ile istenilen tarih arasındaki gün sayısını bulmak. Mesela 22.09.2009'un salı olduğunu biliyoruz. Bulunması istenilen tarihle arasında kaç gün olduğunu bilirsek bu farkın mod 7 ile haftanın günü cinsine çevirebiliriz. Bunun için de her ayın kaç gün çektiğini bir tabloda saklamamız gerekir. Ayrıca şubat ayının artık günü de ayrı bir hesap konusu. Ama bu işin fazla karmaşık olacağını sanmıyorum.

Bu arada, DS1307 ve DS1302 buna çözüm getiremez (PCF8583'i tanımıyorum, onun hakkında yorum yapamam) çünkü tarih bilgisi ile haftanın günü birbirinden bağımsız. Sadece hangi ayın kaç gün çektiğini bilir bu çipler (artık yıllarda şubatın 29 gün olduğunu da bilirler).
Gökçe Tağlıoğlu

controller

Hesabım OG tarafından haksız bir şekilde pasif yapılmıştır.

SiVRiSiNEK

http://www.kodbul.piczo.com/dogum_gunu?cr=5

yukarıdaki sitede javascript kodu var kodun içinde aşağıdaki satırlarda istediğin işlem yapılıyor sanırım

var val4 = parseInt(((val2x+1)*3)/5, 10)
var val5 = parseInt(val3/4, 10)
var val6 = parseInt(val3/100, 10)
var val7 = parseInt(val3/400, 10)
var val8 = val1+(val2x*2)+val4+val3+val5-val6+val7+2
var val9 = parseInt(val8/7, 10)
var val0 = val8-(val9*7)
form.result1.value = months[val2]+" "+form.day.value +", "+form.year.value
form.result2.value = days[val0]


val0 değeri günü veriyor kodun tamamını incele bence

mikromuh

Üzerinde çalıştığım rutinde buydu.Teşekkür ederim.

hasangurlek

http://www.cyber-warrior.org, Although they like whiteness, sometimes twilight is required...  Hala evlilermi bilinmez ama kesinlikle artık uygun değiller !!!