![]() |
frage zu einem programmcode...
huhu,
hab in der schule ne aufgabe aufbekommen... hab die mal hier hochgeladen als bild ![]() den qellcode hab ich mal schon gemacht und wollt gerne wissen, ob des richtig so ist... ich werd das ganze wohl als oneclick machen, aber das ist ja erstmal egal... ich hoffe ihr könnt die schrift von meinem lehrer lesen... is ne formel zur berechnung, an welchem tag man geboren ist... kommt am ende ne zahl von 1 bis 7 raus und welcher tag da was ist, kann sich ja jeder denken ;o) ich bin mir nur mit der variablenzustellung nich so sicher, welche nun real sein sollen und welche integer und eben, ob ich das alles richtig umgesetzt habe mit den ganzen ausnahmen für die formel... ich danke euch allen schonmal im vorraus
Code:
var
z, t, m, j, Jh,a,b,c,d:real; code:integer; s:string; begin VAL (form1.edit1.text, t, code); // einlesen von t VAL (form1.edit2.text, m, code); // einlesen von m VAL (form1.edit3.text, j, code); // einlesen von j VAL (form1.edit4.text, Jh, code); // einlesen von Jh j:=j MOD 100 // wichtig für jahr j Jh:=Jh MOD 100 // wichtig für jahrhundert Jh a:=((m+1)*26) DIV 10 // teil a der gleichung berechnen b:=(5*j) DIV 4 // teil b der gleichung berechnen c:=Jh DIV 4 // teil c der gleichung berechnen d:=(2*Jh)-1 // teil c der gleichung berechnen z:=((t+a+b+c)-d) MOD 7 // formel zur berechnung der „Tagnummer“ if m=1 then m:=13; // januar umrechnen in m:=13 if m=2 then m:=14; // februar umrechnen in m:=14 if m=1 then j:=j-1; // wenn januar dann jahr :=j-1 if m=2 then j:=j-1 // wenn februar dann jahr :=j-1 if z:=((t+a+b+c)-d) MOD 7=-z then z+7; // wenn ((t+a+b+c)-d) MOD 7 negativ, dann Tagesummer z um 7 erhöhen if j=-1 then j:=99; if j:=-1 then Jh:=Jh-1; str (z:2:10,s); form1.edit5.text:=s; end; |
Re: frahe zu einem programmcode...
Grobe Einschätzung : der Code ist nicht von Deinem Lehrer. 8) Welcher Monat hat 26 Tage ? :shock: Und was soll der Rest ? Sieht etwas seltsam aus. Irgendein Dummer wird das schon für Dich erledigen. :mrgreen:
|
Re: frahe zu einem programmcode...
Zitat:
|
Re: frahe zu einem programmcode...
Zitat:
|
Re: frahe zu einem programmcode...
Hai KosMottchen,
erst einmal: "Herzlich Willkommen in der Delphi-PRAXiS" :hi: Zu den Berechnungen haben ja andere schon etwas gesagt. Aber Du hast auch "logik" Fehler im Code
Delphi-Quellcode:
Bei der ersten IF-Abfrage prüfst Du ob m=1 ist und setzt die Variable dann auf 13. Dadurch wird die nächste Abfrage auf m=1 natürlich nie mehr zutreffen. Das sebe gilt für m=2.
.
. if m=1 then m:=13; // januar umrechnen in m:=13 if m=2 then m:=14; // februar umrechnen in m:=14 if m=1 then j:=j-1; // wenn januar dann jahr :=j-1 if m=2 then j:=j-1 . . Du musst die Operationen also in eine Abfrage packen:
Delphi-Quellcode:
Das nur als anmerkung zu deinen IF-Abfragen. Über die Richtigkeit der Berechnungen möchte ich damit nichts sagen ;-)
begin
. if (m = 1) then begin m := 13; j := j - 1; end; if (m = 2) then begin m := 14; j := j - 1; end; end; |
Re: frahe zu einem programmcode...
gutem morgen,
dann sag ich schonmal danke dafür und werde das gleich mal umändern und dann mal versuchen zu starten, was mir nur leider hier unter linux nich möglich ist... :( @ hans: die aufgabe is vom lehrer, aber der code is von mir... den habe ich schon gemacht, da ich ja nich verlangen kann, dass ihr mir hier den gesamten code präsentiert ;o) ich wollt wie gesagt nur wissen, obs richtig so ist ;o) mfg halloween |
Re: frahe zu einem programmcode...
wenn du mit linux arbeitest versuch doch das ganze mal in C zu programmieren und ändere es danach einfach in Delphi um
|
Re: frahe zu einem programmcode...
hab den Code mal ausprobiert, mit Round vor dem mod, wos nötig ist.
Für heute kam der richtige Tag raus :-D , nur sonst wars falsch... :stupid: |
Re: frahe zu einem programmcode...
Zitat:
danke, dann werd ich mir da mal nen kopf machen, bzw mein infolehrer^^ @Angel4585: das prob is ja.. ich lern gard seit 3 monaten delphi in der schule... da hab ich noch keinen plan, wie ich was in c schreibe und dann einfach in delphi umwandle... dass ich mit c unter linux was machen kann, das weiß ich ja, weil ich mich mal infomiert habe, obs mit delphi unter linux geht... aber dem is ja leider nicht so :( |
Re: frage zu einem programmcode...
dazu nimmst du am besten kylix :thumb:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:23 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