AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Delphi - Code Hilfe

Ein Thema von ConTaCt · begonnen am 26. Feb 2007 · letzter Beitrag vom 28. Feb 2007
Antwort Antwort
Seite 2 von 2     12   
fLaSh11
(Gast)

n/a Beiträge
 
#11

Re: Delphi - Code Hilfe

  Alt 26. Feb 2007, 19:09
...schau mal in meinen Beitrag
  Mit Zitat antworten Zitat
Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#12

Re: Delphi - Code Hilfe

  Alt 26. Feb 2007, 19:14
Zitat von shmia:
Die Schaltjahrermittlung ist in der VCL schon enthalten.
In der Unit SysUtils gibt es die Funktion IsLeapYear().
Hier der Sourcecode dazu:
Delphi-Quellcode:
function IsLeapYear(Year: Word): Boolean;
begin
  Result := (Year mod 4 = 0) and ((Year mod 100 <> 0) or (Year mod 400 = 0));
end;
Bitte lies dir nochmals die 1. Anwort den Unwissenden durch!
Er hat lang und breit erklärt, wie du deine Fragen stellen sollst, aber mir scheint, das ist noch nicht ganz angekommen.
Delphi-Quellcode:
if IsLeapYear(2007) then Caption:='Schaltjahr'
  else Caption:='Kein Schaltjahr';
Blackheart
  Mit Zitat antworten Zitat
ConTaCt

Registriert seit: 22. Feb 2007
37 Beiträge
 
#13

Re: Delphi - Code Hilfe

  Alt 27. Feb 2007, 08:28
Zitat von Alexander Roth:
Ich hatte keine Lust den PDF runterzuladen, denke aber das es um Ostern und Feiertage geht. So was habe ich acuh schon für die Schule gemacht und openscource ins Netz gestellt, (in Turbo Pascal).

Schau mal hier: http://alexander.freewebspace4all.de....htm#Feiertage

Schaltjahr ist dabei.

PS:@Muhkuh: Neues Avatar

hier funktioniert die Seite, aber keine Datei zum downloaden!^^
  Mit Zitat antworten Zitat
ConTaCt

Registriert seit: 22. Feb 2007
37 Beiträge
 
#14

Re: Delphi - Code Hilfe

  Alt 27. Feb 2007, 09:12
bräuchte noch eine letzte hilfe!
und zwar!

wenn ich das so schreibe hier!

function IsLeapYear(Year: Word): Boolean;
begin
Result := ((Year mod 19 = 0) or (Year mod 4 = 0) or (Year mod 7 = 0)) and ((Year mod 100 <> 0) or (Year mod 400 = 0));
end;

kommt dieser Error:
expected END but received FUNCTION at line ...

kann mir einer erklären warum!?

hier finde ich nichts und google spuckt auch nichts aus!
bitte um schnelle hilfe!
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#15

Re: Delphi - Code Hilfe

  Alt 27. Feb 2007, 09:41
Du musst die Funktion nicht kopieren, sondern nur verstehen, was du anscheindend nicht tust!
Der Befehl "mod" heißt ausgeschrieben "Modulo" (Siehe Wikipedia).

Und zwar gibt dir Modulo den Rest von zwei Ganzzahlen an.

Das Jahr 2000 nehmen wir als Beispiel:
2000 mod 1000 => 0
Dann mit dem Jahr 2007:
2007 mod 1000 => 7

Und dass musst du nun mit allen Überprüfen.
Das macht man, wenn man ein Neuling ist mit If.
Delphi-Quellcode:
if <Bed> then
begin
  <Anw. 1>;
  <Anw. 2>;
  .
  .
  .
end;
Zu Deutsch:
Code:
Wenn Bedingung (<Bed>) erfüllt, dann
beginne
  Anweisung 1
  Anweisung 2
  .
  .
  .
ende
Zusätzlich kannst du auch mit "else" überprüfen, ob der Fall nicht zutrifft:
Delphi-Quellcode:
if <Bed> then
begin
  <Anw. 1>;
  <Anw. 2>;
  .
  .
  .
end else if <Andere Bed> then
begin
  <Anw. 3>;
  <Anw. 4>;
  .
  .
  .
end;
else
begin
  <Anw. 5>;
  <Anw. 6>;
  .
  .
  .
end;
Zu Deutsch:
Code:
Wenn Bedingung (<Bed>) erfüllt, dann
beginne
  Anweisung 1
  Anweisung 2
  .
  .
  .
ende ansonsten wenn andere Bedingung (<Andere Bed>) erfüllt, dann
beginne
  Anweisung 3
  Anweisung 4
  .
  .
  .
ende ansonsten
beginne
  Anweisung 5
  Anweisung 6
  .
  .
  .
ende
Also musst du zuerst überprüfen, ob der Rest (siehe Modulo) von 1000 gleich 0 ist. Wenn dem so ist, dann ist es ein Schaltjahr... Ansonsten musst du überprüfen ob der Rest von 100 nicht 0 ist, oder der Rest von 4 wieder null ist:
if (<Bed 1>) or (<Bed 2>) then Logisches Oder
if (<Bed 1>) and (<Bed 2>) then Logisches Und

Das dürfte erstmal reichen!

PS: Bist du dir sicher, dass du erst 2-3 Tage mit Delphi programmiert hast? Ich würde erstmal so die Grundtechniken lernen. Die DSDT sollte dir da helfen.
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
ConTaCt

Registriert seit: 22. Feb 2007
37 Beiträge
 
#16

Re: Delphi - Code Hilfe

  Alt 27. Feb 2007, 09:44
ja bin ich!

ich hab sonst nur 4 Jahre VB programmiert!^^

aber wenn ich das so programmiere in VB, dann funktioniert!^^

kein plan warum^^

außerdem, die Grundlagen haben wir nicht gemacht^^!
sondern nur was der unterschied zwischen VB und Delphi is
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#17

Re: Delphi - Code Hilfe

  Alt 27. Feb 2007, 11:53
Zitat von ConTaCt:
ich hab sonst nur 4 Jahre VB programmiert!^^
OOPs... Entschuldige, dass ich es ggf. ziemlich "Neuling"-artig geschrieben habe

Aber ich hoffe, du hast den Zweck verstanden

Du kannst ja zwei Funktionen deklarieren:
Delphi-Quellcode:
function IsLeapYear(AYear : Integer) : Boolean;
function EasterSunday(AYear : Integer) : Integer
In den beiden Funktionen machst du je eine Aufgabe Ist dann ein bisschen getrennter, und kommt nicht durcheinander.

Nun zum "EasterSunnday": Diese Funktion gibt dir "d + e" wieder (da ist es egal, ob März oder April).
Dann kannst du in der "Berechnen"-Methode daraus errechnen, ob es April oder März ist.
Es ist der März, wenn der Rückgabewert + 22 nicht größer als 31 ist. Ansonsten ist es der April! Kleiner Tipp: Speichere den Rückgabewert in einer Variable.
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Benutzerbild von Alexander Roth
Alexander Roth

Registriert seit: 17. Mai 2004
Ort: Kenn
574 Beiträge
 
Turbo Delphi für Win32
 
#18

Re: Delphi - Code Hilfe

  Alt 27. Feb 2007, 15:54
Zitat von ConTaCt:
Zitat von Alexander Roth:
Ich hatte keine Lust den PDF runterzuladen, denke aber das es um Ostern und Feiertage geht. So was habe ich acuh schon für die Schule gemacht und openscource ins Netz gestellt, (in Turbo Pascal).

Schau mal hier: http://alexander.freewebspace4all.de....htm#Feiertage

Schaltjahr ist dabei.

PS:@Muhkuh: Neues Avatar

hier funktioniert die Seite, aber keine Datei zum downloaden!^^
So ein Mist. Da war doch echt verdammt viele Defekte Links. Ist korrigiert.

Gruß Alexander
Alexander Roth
Ich bin umgestiegen auf: Lazarus und Ubuntu! Alles OpenSource!

Besuch doch mal: www.roth.us.ms
  Mit Zitat antworten Zitat
ConTaCt

Registriert seit: 22. Feb 2007
37 Beiträge
 
#19

Re: Delphi - Code Hilfe

  Alt 27. Feb 2007, 23:06
gg!

danke!

sollte ich das LipYear da nicht mit string definieren!??

sry, aber die links funktionieren noch immer nicht!
  Mit Zitat antworten Zitat
Benutzerbild von xZise
xZise

Registriert seit: 3. Mär 2006
Ort: Waldbronn
4.303 Beiträge
 
Delphi 2009 Professional
 
#20

Re: Delphi - Code Hilfe

  Alt 28. Feb 2007, 07:45
Ne Du musst ja nur wissen, ob es ein "LeapYear" ist

Delphi-Quellcode:
if IsLeapYear(...) then
  lblLeapYear.Caption := 'Das Jahr ' + IntToStr(...) + ' ist ein Schaltjahr'
else
  lblLeapYear.Caption := 'Das Jahr ' + IntToStr(...) + ' ist kein Schaltjahr'
Es wäre auch so möglich:
Delphi-Quellcode:
var
  modifier : string;

if IsLeapYear(...) then
  modifier := 'ein'
else
  modifier := 'kein'

lblLeapYear.Caption := 'Das Jahr ' + IntToStr(...) + ' ist ' + modifier + ' Schaltjahr'
Fabian
Eigentlich hat MS Windows ab Vista den Hang zur Selbstzerstörung abgewöhnt – mkinzler
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz