Maik81ftl hat geschrieben:aber da sich die Schaltjahre aller 100 Jahre wiederholen, sehe ich hier kein problem eines Fehlers.
... das ist falsch - alle 4 Jahre!
sry aber da muß ich wirklich mit aller mach wieder Sprechen...
Schaltjahre z.B. von 1900!
da haben wir 1900, 1904, 1908, 1912, 1916,..., 1996.
ergo? Von dieser sichweise aller 100 Jahre.
des Wären denne ab 2000 wie folgt.
2000, 2004, 2008, 2012, 2016, ... , 2096.
Dazu brauchst nix sagen! sogesehen haben wir beide hier recht.
1900 war KEIN Schaltjahr, 2000 dagegen schon.
Schaltjahr ist wenn das Jahr durch 4 teilbar ist, aber nicht wenn es durch 100 teilbar ist es sei denn es ist durch 400 teilbar.
Maik81ftl hat geschrieben:
baba hat geschrieben:
Maik81ftl hat geschrieben:da für mich auch die Option eines Schaltjahres dazugehört, habe ich mir da schon mit dieser kleinen Funktion abgeholfen
Selbst wenn du IsLeapYear nutzt, wirst du dein Code (was ich bisher gesehen habe) um fast 90% kürzen können, würdest du die vorhandenen Funktionen nutzen, gerade bei deinem Projekt solltest du dir unbedingt die ganzen Date-/Timefunktionen aus der unit dateutils ansehen.
Function TForm1.Schaltjahr: Boolean;
var B: Byte;
C: String;
begin
C:= DateToStr(Date);
B:= Length(C);
C:= C[b-1] + C[b];
Result:= IsLeapYear(StrToInt(C));
end;
// lässt sich dann einfach schreiben
Function TForm1.Schaltjahr: Boolean;
begin
Result:= IsLeapYear(YearOf(Date)));
end;
Für viele deiner mühsam erstellten Algorythmen existieren bereits extra hierfür eingebaute Funktionen.
Einfach mal in der Dokumentation der RTL studieren, damit kannst du dir viel sparen.
DiBo33 hat geschrieben:Für viele deiner mühsam erstellten Algorythmen existieren bereits extra hierfür eingebaute Funktionen.
Einfach mal in der Dokumentation der RTL studieren, damit kannst du dir viel sparen.
Recht hast du und das gebe ich offen und Ehrlich zu. Aber mal ehrlich? warum einfach wenn man nur so auf Fehlern lernt?
Und ich nicht ein Leitsatz in Programmierung unter anderem der?
Erst programmieren und dann vereinfachen?
klar ist zwar doppelte Arbeit, aber Lernen will ich ja auch was.
aba ein glück hab i die HP im LT.
Glaube mir, auch wenn Du die Empfehlung 100 mal befolgst, bleibt noch immer viel zu viel zum programmieren und vereinfachen übrig. Nimm jede Hilfe die Du bekommen kannst und der Tip mit der RTL hilft nicht nur, er bringt Dich gewiss auch auf ganz neue Ideen.
Aber keiner kommt ehrlich gesagt in die Richtung, wie des Design mal aussehen soll.
Hab nun auch eine bestimmte Function so ändern müßen, das ich ich genau das erreiche, was ich im Grunde meine.
Somit ist das Formblatt1 im großen und Ganzen a schon fertig. nur noch der Feinschlif, dann kann ich auf das eigendliche Thema zurückgreifen. Drucken des DrawGrid
Ubuntu 10.04 LTS ist meine Heimat. Lazarus ist meine Sprache und der Kreis Segeberg meine LIEBE
Maik81ftl hat geschrieben:Aber keiner kommt ehrlich gesagt in die Richtung, wie des Design mal aussehen soll.
.. na das Design mußt Du schon selbst gestalten. Ich bin zwar seit 22 Jahren verheiratet, aber dieses Thema, na ja und Gynäkologen werden sicher in anderen Foren aktiv sein.
Wenn es z.B. um ein Beispiel für Wetteraufzeichnungen, Temperatur, Windstärke, Niederschlag, Sonnenstunden, etc. geht findest Du hier sicher gute Vorschläge, die müsstest Du eben nur für Deine Anwendung anpassen. Also bleibt es letzendlich doch wieder an Dir hängen.
pluto hat geschrieben:Mein Beispiel musst du natürlich anpassen. Das dürfte aber das leichtes sein.
Jopp Pluto. den werd ich jeden. Hoffe, das ich es bis zur fertig stellung hinbekomme, das Lazarus bei mir aus Plattformübergreifen progis erstellt, da kann i denne mal das fertig hier Vorstellen.
sonst de OS version.
Ubuntu 10.04 LTS ist meine Heimat. Lazarus ist meine Sprache und der Kreis Segeberg meine LIEBE