Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   Date-Unit: Datumsberechnungen (https://www.delphipraxis.net/44234-date-unit-datumsberechnungen.html)

moritz 15. Apr 2005 20:11


Date-Unit: Datumsberechnungen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Servus Leute,

ich schreibe gerade eine Date-Unit, die mir einige Berechnungen mit Daten durchführen kann. Heute habe ich sei fertiggestellt und auch mehrfach positiv getestet. Da auf dieser Basis allerdings ein neues Programm von mir entsteht, muss ich sicher sein, dass kein Fehler drin ist. Deswegen meine Bitte an euch: Die angehängt Anwendung zeigt euch zu einem Geburtsdatum einige Daten wie Alter, letzter Geburtstag, nächste Geburtstag und Sternzeichen an. Könntet ihr jeweils euer Geburtsdatum und schauen, ob alle Angaben stimmt? Wäre super!

Die Unit soll später Open-Source werden.

Vielen Dank, Moritz

Edit1: Erste Fehler ausgebessert.
Edit2: Schaltjahrprobleme verbessert.
Edit3: Einige kleine Problemverbesserungen

Pr0g 15. Apr 2005 20:33

Re: Date-Unit: Datumsberechnungen
 
Scheint alles zu stimmen.

MfG Pr0g

Lannes 15. Apr 2005 20:48

Re: Date-Unit: Datumsberechnungen
 
Hallo,

Geboren am 29.2.2000 :mrgreen:

hier mal kurz Zitat aus Wikipedia
Glatt durch 4 teilbare Jahre sind Schaltjahre.
Glatt durch 100 teilbare Jahre sind jedoch keine Schaltjahre.
Glatt durch 400 teilbare Jahre sind aber wieder Schaltjahre.

Geboren z.B. am 04.05.88 = 1917 Jahr alt :pale:

Mit dem verbesserten Programm getestet.

//Edit, mit meinem Geburtstag kommt er klar :hello:

moritz 15. Apr 2005 22:54

Re: Date-Unit: Datumsberechnungen
 
Hallo,

erstmal danke für das Feedback :) Das Problem mit den Schaltenjahren ist jetzt draußen.

Gruß

Steve 16. Apr 2005 07:43

Re: Date-Unit: Datumsberechnungen
 
Hi,

scheint alles zu funzen :)

Gruß
Stephan :dance:

Chatfix 21. Okt 2005 14:22

Re: Date-Unit: Datumsberechnungen
 
Also bei funzt es auch :)

moritz 21. Okt 2005 14:27

Re: Date-Unit: Datumsberechnungen
 
Okay, und weil der Beitrag jetzt eh wieder da ist, hab ich ne neue Version hochgeladen, in der ich intern noch ein paar Bugs ausgemistet hab.

Chatfix 21. Okt 2005 14:33

Re: Date-Unit: Datumsberechnungen
 
Auch mit dem neuen Programm geht alles supi :)

freak4fun 21. Okt 2005 15:02

Re: Date-Unit: Datumsberechnungen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo :hi:,
ich hab da ein kleines Grafikproblem. Siehe Bild. :)

MfG
freak

moritz 21. Okt 2005 15:54

Re: Date-Unit: Datumsberechnungen
 
Moin!

Ich bin leider nicht so der nonVCL-Profi, wollte das hier aber mal machen, um Platz zu sparen. Das Programm sollte aber trotzdem funktionieren :)

Gruß

RonnyKIEL 21. Okt 2005 16:57

Re: Date-Unit: Datumsberechnungen
 
Hallo,
auch bewi mir kappt es einwandfrei.
Gruß, Ronny

engine 21. Okt 2005 21:12

Re: Date-Unit: Datumsberechnungen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo moritz,

um es gleich vorweg zu nehmen, ich bin nicht am 29.02.2004 geboren.
Wenn doch, wäre dein Programm der Meinung ich sei 0 Jahre alt. :gruebel:
Jetzt stellt sich mir die Frage, wie Geburtstage an einem 29.02 definiert werden.


Gruß ... engine

moritz 23. Okt 2005 13:04

Re: Date-Unit: Datumsberechnungen
 
Moin!

Tjoa, das mit dem verdammten 29.2 ist so ne Sache. Ich habe mich bei der Zählmethode dazu entschieden, den nächsten existierenden Tag als nächsten Geburtstag zu definieren. Und am 29.2. ist das natürlich nur alle 4 Jahre.
Aber da werde ich vermutlich noch was ändern müssen, damit die armen davon nicht benachteiligt werden.

Gruß

engine 23. Okt 2005 20:25

Re: Date-Unit: Datumsberechnungen
 
Hallo Moritz,

Die Tage vom aktuellen Datum bis zum letzten Schaltjahr kannst du ja ausrechnen.
Nun noch die Jahre bis zum letzten Schaltjahr.
Delphi-Quellcode:
function JahreNachSchaltjahr(TageNachSchaltjahr : integer) : integer;
begin
  if TageNachSchaltjahr < 365 then
  begin
    Result := 0;
    Exit;
  end;
  if TageNachSchaltjahr > 1460 then //mehr wie vier Jahre
  begin
    Result := -1;
    Exit;
  end;
  Result := Round((TageNachSchaltjahr / 365) -0.5);
end;
Das addierst du mit den Jahren zwischen dem Geburtstag und dem letzten Schaltjahr.

engine

alzaimar 23. Okt 2005 21:32

Re: Date-Unit: Datumsberechnungen
 
Soweit ich weiss, feiern die armen Würstchen, die an einem 29.2 Geburtstag haben, von Amts wegen am 1.3 ihren Geburtstag.

ManuMF 10. Okt 2006 18:49

Re: Date-Unit: Datumsberechnungen
 
Zitat:

Zitat von moritz
Die Unit soll später Open-Source werden.

Wieviel später? :mrgreen:

Oder anders ausgedrückt: Wird die Unit noch weiterentwickelt? Wird es sie als Freeware geben?

moritz 10. Okt 2006 19:04

Re: Date-Unit: Datumsberechnungen
 
Moin!

Hm...das ist jetzt natürlich blöd. Also, die Unit gehört zu einem Programm von mir, für das ich die letzten 2 Jahre immer weniger Zeit hatte und die nächsten zwei Jahre sicher keine Zeit haben werde - aus diesem Grund habe ich es vor einigen Wochen an eine Firma weitergegeben.

Etz gestaltet die Sache sich da natürlich komplizierter, weil die Firma den Quellcode (und damit auch die Unit) zwar weiterentwickelt, und zwar auch als Freeware, allerdings nicht OpenSource. Was hältst du davon: Sobald die neue Version erscheint, frage ich mal nach, ob da ne Möglichkeit besteht?

Müsstest mich halt evtl nochmal erinnern *g*

lg, mo

ManuMF 11. Okt 2006 13:51

Re: Date-Unit: Datumsberechnungen
 
Das mit der Zeit kann ich verstehen...

Zitat:

Zitat von moritz
Sobald die neue Version erscheint, frage ich mal nach, ob da ne Möglichkeit besteht?

Ja, das wäre nett. :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz