![]() |
if ... or ... else - Anwendungen
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo!
Ich bescheftige mich mit Delphi noch nicht so lang und so weiter und hab folgendes Problem: Ich mach gerade ein Prog, das den Schulabschluss überprüft und bei der Überprüfung, überprüft er erst übergang 11, RSA und HAS. Nur ist das Prob, wenn ich bei der Ü11 überprüfung alle anwendungen beende und beim testen alle fächer wo es kurse gibt die höchste kurse anklicke springt er bei der überprüfung zum ende hin und zeigt nichts an und wenn ich drei end's zum ende der procedur verschiebe geht das, aber dann wenn die ganzen fächer die note 6 haben und über all die schlechteren kurse angeklickt sind springt er da zum end. hin und zeigt nichts an... wo liegt der fehler weis echt nicht mehr weiter
Delphi-Quellcode:
procedure TForm1.abClick(Sender: TObject);
begin hsa.visible:=false; hsa2.visible:=false; rsa.visible:=false; ue11.visible:=false; ka.visible:=false; gesamt:=((deutsch_n) + (englisch_n) + (mathematik_n) + (franz_n) + (physik_n) + (chemie_n) + (biologie_n) + (relligion_n) + (gl_n) + (bwu_n) + (sport_n) + (kunst_n) + (musik_n) + (latein_n) + (wpu4_n) + (wpu2_n)); if (((deutsch_k='e') and (englisch_k='a') and (mathematik_k='a')) or ((deutsch_k='g') and (englisch_k='a') and (mathematik_k='a')) or ((deutsch_k='e') and (englisch_k='b') and (mathematik_k='a')) or ((deutsch_k='e') and (englisch_k='a') and (mathematik_k='b'))) then begin if (((deutsch_k='e') and (physik_k='e') and (chemie_k='e') and (biologie_k='e')) or ((deutsch_k='g') and (physik_k='e') and (chemie_k='e') and (biologie_k='e')) or ((deutsch_k='e') and (physik_k='g') and (chemie_k='e') and (biologie_k='e')) or ((deutsch_k='e') and (physik_k='e') and (chemie_k='g') and (biologie_k='e')) or ((deutsch_k='e') and (physik_k='e') and (chemie_k='e') and (biologie_k='g'))) then begin if (((deutsch_n<=6) and (physik_n<=2) and (chemie_n<=3) and (biologie_n<=3)) or ((deutsch_n<=3) and (physik_n<=6) and (chemie_n<=2) and (biologie_n<=3)) or ((deutsch_n<=3) and (physik_n<=3) and (chemie_n<=6) and (biologie_n<=2)) or ((deutsch_n<=2) and (physik_n<=3) and (chemie_n<=3) and (biologie_n<=6)) or ((deutsch_n<=2) and (physik_n<=6) and (chemie_n<=3) and (biologie_n<=3)) or ((deutsch_n<=3) and (physik_n<=2) and (chemie_n<=6) and (biologie_n<=3)) or ((deutsch_n<=3) and (physik_n<=3) and (chemie_n<=2) and (biologie_n<=6)) or ((deutsch_n<=2) and (physik_n<=3) and (chemie_n<=3) and (biologie_n<=3))) then begin if ((deutsch_n<6) or (mathematik_n<6) or (englisch_n<6) or (gl_n<6)) then begin if (gesamt<=52) then begin ue11.visible:=true; end; end; end; end; end else begin if (deutsch_n<=4) and (deutsch_k='e') and (englisch_n<=4) and (englisch_k='a') and (mathematik_n<=4) and (mathematik_k='a') and (physik_n<=4) and (physik_k='e') and (chemie_n<=4) and (chemie_k='e') and (biologie_n<=4) and (biologie_k='e') and (franz_n<=4) and (franz_k='a') and (relligion_n<=4) and (gl_n<=4) and (bwu_n<=4) and (sport_n<=4) and (kunst_n<=4) and (musik_n<=4) and (latein_n<=4) and (wpu4_n<=4) and (wpu2_n<=4) then begin rsa.visible:=true; end else begin if (deutsch_n<=4) and (englisch_n<=4) and (mathematik_n<=4) and (physik_n<=4) and (chemie_n<=4) and (biologie_n<=4) and (franz_n<=4) and (relligion_n<=4) and (gl_n<=4) and (bwu_n<=4) and (sport_n<=4) and (kunst_n<=4) and (musik_n<=4) and (latein_n<=4) and (wpu4_n<=4) and (wpu2_n<=4) then begin hsa.visible:=true; hsa2.visible:=true; end else begin ka.visible:=true; end; end; end; end; |
Re: if ... or ... else - Anwendungen
Ich habe mir dieses Monstrum jetzt nicht wirklich angesehen, aber Du solltest vielleicht mal ein paar Hilfsvariablen einführen, um die bool'schen Ausdrücke übersichtlicher zu machen.
Außerdem muss ich sagen, habe ich nicht ganz kapiert, was mir dieses an Satzzeichen-Entzug leidende Gebilde sagen will: Zitat:
Peter |
Re: if ... or ... else - Anwendungen
Delphi-Quellcode:
procedure TForm1.abClick(Sender: TObject);
begin hsa.visible:=false; hsa2.visible:=false; rsa.visible:=false; // Die Abschlüsse ue11.visible:=false; ka.visible:=false; gesamt:=((deutsch_n) + (englisch_n) + (mathematik_n) + (franz_n) + (physik_n) + (chemie_n) + (biologie_n) + (relligion_n) + (gl_n) + (bwu_n) + (sport_n) + (kunst_n) + (musik_n) + (latein_n) + (wpu4_n) + (wpu2_n)); // Gesamtnote if (((deutsch_k='e') and (englisch_k='a') and (mathematik_k='a')) or ((deutsch_k='g') and (englisch_k='a') and (mathematik_k='a')) or ((deutsch_k='e') and (englisch_k='b') and (mathematik_k='a')) or ((deutsch_k='e') and (englisch_k='a') and (mathematik_k='b'))) then begin if (((deutsch_k='e') and (physik_k='e') and (chemie_k='e') and (biologie_k='e')) or ((deutsch_k='g') and (physik_k='e') and (chemie_k='e') and (biologie_k='e')) or ((deutsch_k='e') and (physik_k='g') and (chemie_k='e') and (biologie_k='e')) or ((deutsch_k='e') and (physik_k='e') and (chemie_k='g') and (biologie_k='e')) or ((deutsch_k='e') and (physik_k='e') and (chemie_k='e') and (biologie_k='g'))) then begin if (((deutsch_n<=6) and (physik_n<=2) and (chemie_n<=3) and (biologie_n<=3)) or ((deutsch_n<=3) and (physik_n<=6) and (chemie_n<=2) and (biologie_n<=3)) or ((deutsch_n<=3) and (physik_n<=3) and (chemie_n<=6) and (biologie_n<=2)) or ((deutsch_n<=2) and (physik_n<=3) and (chemie_n<=3) and (biologie_n<=6)) or ((deutsch_n<=2) and (physik_n<=6) and (chemie_n<=3) and (biologie_n<=3)) or ((deutsch_n<=3) and (physik_n<=2) and (chemie_n<=6) and (biologie_n<=3)) or ((deutsch_n<=3) and (physik_n<=3) and (chemie_n<=2) and (biologie_n<=6)) or ((deutsch_n<=2) and (physik_n<=3) and (chemie_n<=3) and (biologie_n<=3))) then begin if ((deutsch_n<6) or (mathematik_n<6) or (englisch_n<6) or (gl_n<6)) then begin if (gesamt<=52) then begin ue11.visible:=true; end; end; end; end; end // ^Ü11 überprüfung^ else begin if (deutsch_n<=4) and (deutsch_k='e') and (englisch_n<=4) and (englisch_k='a') and (mathematik_n<=4) and (mathematik_k='a') and (physik_n<=4) and (physik_k='e') and (chemie_n<=4) and (chemie_k='e') and (biologie_n<=4) and (biologie_k='e') and (franz_n<=4) and (franz_k='a') and (relligion_n<=4) and (gl_n<=4) and (bwu_n<=4) and (sport_n<=4) and (kunst_n<=4) and (musik_n<=4) and (latein_n<=4) and (wpu4_n<=4) and (wpu2_n<=4) then begin rsa.visible:=true; end // ^RSA überprüfung^ else begin if (deutsch_n<=4) and (englisch_n<=4) and (mathematik_n<=4) and (physik_n<=4) and (chemie_n<=4) and (biologie_n<=4) and (franz_n<=4) and (relligion_n<=4) and (gl_n<=4) and (bwu_n<=4) and (sport_n<=4) and (kunst_n<=4) and (musik_n<=4) and (latein_n<=4) and (wpu4_n<=4) and (wpu2_n<=4) then begin hsa.visible:=true; hsa2.visible:=true; end // ^HSA überprüfung^ else begin ka.visible:=true; //Kein Abschluss end; end; end; end; OK noch mal: Wenn ich auf Abschluss berechnen klicke und die Einstellungen so lasse (siehe Bild) geht er jede Zeile durch und zeigt am ende 'Kein Abschluss' an. Aber wenn ich alle Fächer wo es Kurse gibt, den höchsten Kurs anklicke (E oder A), erfüllt diese Einstellung bei der Überprüfung eine Zeile nicht (ist klar, wegen den Noten '6'). Das Problem hab ich gelöst, indem ich 3 end's unter der Ü11 Überprüfungen raus genommen habe und am ende der Procedur platziert habe. Aber dann geht die Anfangseinstellung nicht mehr (siehe Bild), da springt das Programm wieder auf end. und zeigt nichts an. |
Re: if ... or ... else - Anwendungen
nach welchen kriterien reihst du denn ein ? O_o
|
Re: if ... or ... else - Anwendungen
Zitat:
was? |
Re: if ... or ... else - Anwendungen
er fragte, auf welche weise du die zeilen einrückst.
mfG mirage228 |
Du wirst das Problem wahrscheinlich nicht finden, wenn du nicht (wie Peter Lustig vorschlug) ein paar Hilfsvariablen benutzt und denen das Ergebnis deiner ANDs und ORs zuweist. Es gehört zwar nicht gerade zu meinen Steckenpferden, aber dieses Monster:
Delphi-Quellcode:
ließe sich bestimmt etwas kürzen. Musst du aber gar nicht mal. Es würde schon genügen, wenn du deine Bedingungen nicht direkt prüfst, sondern sie einer bspw. einer Bool-Variablen zuweist:
if(((deutsch_k='e') and (englisch_k='a') and (mathematik_k='a')) or
((deutsch_k='g') and (englisch_k='a') and (mathematik_k='a')) or ((deutsch_k='e') and (englisch_k='b') and (mathematik_k='a')) or ((deutsch_k='e') and (englisch_k='a') and (mathematik_k='b'))) then
Delphi-Quellcode:
dann könnte deine if-Bedingung danach wie folgt aussehen:
GuterJunge := (((deutsch_k='e') and (englisch_k='a') and (mathematik_k='a')) or
((deutsch_k='g') and (englisch_k='a') and (mathematik_k='a')) or ((deutsch_k='e') and (englisch_k='b') and (mathematik_k='a')) or ((deutsch_k='e') and (englisch_k='a') and (mathematik_k='b')));
Delphi-Quellcode:
Dadurch wird´s übersichtlicher, du erkennst die Verschachtelungen der begin/end-Blöcke besser, und du dürftest das eigentliche Problem damit wahrscheinlich von selbst aufspüren.
if GuterJunge then
begin // und hier geht´s dann mit anderen Bedingungen // bzw. Hilfsvariablen weiter end; |
Re: if ... or ... else - Anwendungen
Zitat:
wie 'auf welcher weise einrücken' - gibt mir ein beispiel... @ MathiasSimmack: ha jetzt hab ich es verstanden, ich probier es mal aus, aber jetzt will ich erst ein buch (der richter und sein henker) zu ende lesen. Vielen Dank erstmal |
Re: if ... or ... else - Anwendungen
Moin!
Zitat:
Nomalerweise:
Delphi-Quellcode:
Bei dir sieht's so aus:
procedure irgendwas;
begin if (a = 10) or (b = 20) or (c = 30) then // das hab ich nur wegen dem Beispiel in die nächste Zeile getan begin doAnything; doAnythingElse; end; end;
Delphi-Quellcode:
Aber nun zu deinem Problem:
procedure irgendwas;
begin if (a = 10) or (b = 20) or (c = 30) then begin .... end; end; Was ist englisch_k und mathematik_k und so? Ich seh nicht wirklich durch in deinem Quellcode. Aber ich empfehl dir auf jeden Fall erstmal das ganze so zu machen wie's MathiasSimmack geschrieben hat. Vieleicht gibt's ja ne einfachere Möglichkeit die ich zur Zeit in deinem Quellcode nicht erkenne. MfG Niels |
Re: if ... or ... else - Anwendungen
@Niels: Ich wollt´s auch gerade erklären. :) So fasse ich mich aber kurz und verweise mal auf die
![]() |
Re: if ... or ... else - Anwendungen
Hier haben wir nochmal den
![]() PS: Durch Verwendung des Arithmetischen Operators + lässt sich bei dir bestimmt noch einiges vereinfachen MfG Niels |
Re: if ... or ... else - Anwendungen
*lach*
der quellcode sieht so aus:
Delphi-Quellcode:
procedure irgendwas;
begin if (a = 10) or (b = 20) or (c = 30) then begin .... end; end; weil ich jede if abfrage in eine Zeile geschrieben habe (if (a = 10) or (b = 20) or (c = 30) then) und weil eine if abfrage so lang ist bracht er zb 4 zeilen oder mehr (je nach auflösung). Das kann man sich eigentlich denken, oder? |
Re: if ... or ... else - Anwendungen
Es war nur ein Beispiel....
Das was stört ist z.B. das else was immer irgendwo mitten in der Zeile Hängt und begin, sowie end gehören auf die selbe Höhe wie if und werden nicht eigerückt. :wink: PS: Du kannst doch trotzdem der Übersicht halber jedes 'or (....)' in eine einzelne Zeile packen. Nicht nur wegen dem Forum sondern wegen deiner Übersicht im Delphi! MfG Niels |
Re: if ... or ... else - Anwendungen
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:
Oh Vorsicht... Es ist nicht gut 'or' in eine neue zeile zu packen, denn wenn das programm zb die erste zeile 'if ...' den bedingungen nicht erfüllt, aber die zweite schon 'or...' dann überprüft das Programm nicht mehr die zweite Zeile und überprüft dann 'else ...' und die end's haben den gleichen abstand wie die begin's, was übersichtlicher ist. Hier habe ich ein Bild von meinem Quelltext |
Re: if ... or ... else - Anwendungen
Moin!
Natürlich wird alles überprüft...das war auch nur meine Meinung dazu, dass man den QT etwas anders strukturieren sollte als du es gemacht hast (es war nicht nur meine Meinung) :wink: Naja mach wie du denkst PS: Das hat eigentlich nix mehr mit deinem Thema zu tun. Um mal wieder drauf rückzukommen: Ich kenn die zu erfüllenden Anforderungen an allgemein bildenen Schulen nicht, wenn du die mal plz posten würdest könnte ich dir vieleicht helfen das ganze zu vereinfachen. MfG Niels |
Re: if ... or ... else - Anwendungen
Zitat:
Was Du jedoch wahrscheinlich mal gelesen und dann dann nicht mehr richtig erinnert hast: Delphi wertet einen Bool'schen Ausdurck nur soweit aus, bis das Ergebnis fest steht. Wenn Du also ausdruck1 OR ausdruck2 OR ausdruck3 hast und ausdruck1 schon wahr ist, dann schaut sich Delphi den Rest gar nicht mehr weiter an. Deshalb sollte man, wenn ein Bool'scher Ausdruck aus Funktionen besteht, die Funktionen, welche schneller sind, an den Anfang stellen. |
Re: if ... or ... else - Anwendungen
hi,
Delphi-Quellcode:
wie du sicher (nicht) weisst, ignoriert delphi leerzeilen/freiräume, also ist das egal wo das steht.
Es ist nicht gut 'or' in eine neue zeile zu packen, denn wenn das programm zb die erste zeile 'if ...' den bedingungen nicht erfüllt, aber die zweite schon 'or...' dann überprüft das Programm nicht mehr die zweite Zeile und überprüft dann 'else ...'
Theoretisch könntest du deinen ganzen code den du da hast in einer zeile schreiben. btw: auf deinem bild, da ist dein else in der mitte ziemlich komisch...man sieht kaum auf welches if sichd as bezieht |
Re: if ... or ... else - Anwendungen
Liste der Anhänge anzeigen (Anzahl: 1)
Abend!
Ich hab das jetzt so gemacht wie es MathiasSimmack vorgeschlagen hat, aber der Fehler ist immer Noch da. @ Peter Lustig Aber wenn ausdruck1 nicht wahr ist hat er ausdruck2 nicht mehr überprüft und ist dann auf end. gesprungen. @ Niels ..._k heißt Kurs ..._n heißt Note Im anhang ist einmal 'noten', da stehen die Noten und Kurse die Man haben muss und 'Muster', da ist Berechnungsbogen für den Realschulabschluss (ein Muster). Hier noch ein Link (einmal in doc und pdf) zu den Gesetzen für den Abschluss: ![]() ![]() Da wird es ab 'Vierter Teil' interresant (§54-64) |
Re: if ... or ... else - Anwendungen
Liste der Anhänge anzeigen (Anzahl: 1)
und hier der Quellcode vom Prog und im Anhang das Programm.
[edit=MrSpock]Langen Quelltext wie gewünscht entfernt. Mfg, MrSpock[/edit] |
Zum Thema "Einrückung, und Wie bekomme ich es hin, dass die Zeile nicht zu lang wird", verweise ich noch mal auf meinen Beitrag:
Zitat:
@de_arg: Wenn du das Programm anhängst, warum postest du den Quellcode der Unit dann noch mal? Bitte nimm den Sch*** mal raus, damit der Beitrag wieder eine akzeptable Breite hat. |
Re: if ... or ... else - Anwendungen
Nachtrag:
Ich weiß nicht, ob´s der Fehler ist, aber du hast einen Dreher drin: In deinem Posting auf Seite 1 prüfst du zuerst die Kurse Deutsch, Englisch und Mathe, und dann noch mal Deutsch, Physik, Chemie und Bio. In deinem angehangenen Programm (auch zu sehen in der geposteten Unit) prüfst du zuerst Deutsch, Physik, Chemie und Bio, und dann Deutsch, Englisch und Mathe. Vielleicht macht´s auch keinen Unterschied ... :? ... Aber wenn ich davon ausgehe, dass der Code auf Seite 1 richtig ist, dann müsste deine Bedingung mit den Hilfsvariablen eigentlich so aussehen:
Delphi-Quellcode:
oder kürzer:
if ue11_2 then
begin if ue11_1k then begin if ue11_1n then begin if ue11_3 then begin if (gesamt<=52) then begin ue11.visible:=true; end; end; end; end; end
Delphi-Quellcode:
Und dann hast du trotzdem noch eine Bedingungsprüfung mit einem Haufen ANDs und ORs:
if ue11_2 then
begin ue11.Visible := (ue11_1k) and (ue11_1n) and (ue11_3) and (gesamt <= 52); end
Delphi-Quellcode:
Siehst du auch, was ich sehe? Die Noten sind alle <= 4, in der oberen Bedingung prüfst du lediglich noch ein paar Kurse. Also, kürzen:
if(deutsch_n<=4) and (deutsch_k='e') and (englisch_n<=4) and
(englisch_k='a') and (mathematik_n<=4) and (mathematik_k='a') and (physik_n<=4) and (physik_k='e') and (chemie_n<=4) and (chemie_k='e') and (biologie_n<=4) and (biologie_k='e') and (franz_n<=4) and (franz_k='a') and (relligion_n<=4) and (gl_n<=4) and (bwu_n<=4) and (sport_n<=4) and (kunst_n<=4) and (musik_n<=4) and (latein_n<=4) and (wpu4_n<=4) and (wpu2_n<=4) then begin rsa.visible:=true; end else begin if(deutsch_n<=4) and (englisch_n<=4) and (mathematik_n<=4) and (physik_n<=4) and (chemie_n<=4) and (biologie_n<=4) and (franz_n<=4) and (relligion_n<=4) and (gl_n<=4) and (bwu_n<=4) and (sport_n<=4) and (kunst_n<=4) and (musik_n<=4) and (latein_n<=4) and (wpu4_n<=4) and (wpu2_n<=4) then
Code:
Und damit sieht´s bloß noch so aus:
WasIsnDas2 := (deutsch_n<=4) [b]and[/b] (englisch_n<=4) [b]and[/b]
(mathematik_n<=4) [b]and[/b] (physik_n<=4) [b]and[/b] (chemie_n<=4) [b]and[/b] (biologie_n<=4) [b]and[/b] (franz_n<=4) [b]and[/b] (religion_n<=4) [b]and[/b] (gl_n<=4) [b]and[/b] (bwu_n<=4) [b]and[/b] (sport_n<=4) [b]and[/b] (kunst_n<=4) [b]and[/b] (musik_n<=4) [b]and[/b] (latein_n<=4) [b]and[/b] (wpu4_n<=4) [b]and[/b] (wpu2_n<=4); WasIsnDas1 := [color=#ff0000](WasIsnDas2)[/color] [b]and[/b] (deutsch_k='e') [b]and[/b] (englisch_k='a') [b]and[/b] (mathematik_k='a') [b]and[/b] (physik_k='e') [b]and[/b] (chemie_k='e') [b]and[/b] (biologie_k='e') [b]and[/b] (franz_k='a');
Delphi-Quellcode:
Wenn das alles deine Probleme nicht löst, dann solltest du noch mal in diesen Dokumenten nachschauen, ob du die Berechnungen wirklich richtig übernommen hast.
if WasIsnDas1 then begin
rsa.Visible := true end else begin if WasIsnDas2 then Ein Wort noch zu den "OnChange"-Ereignissen deiner Scrollbars. Du hast im Objektinspektor den Bereich der Scrollbars von 1 bis 6 festgelegt. Es besteht daher eigentlich keine Notwendigkeit, diesen Bereich in den "OnChange"-Ereignissen noch mal festzulegen - es sei denn, der Bereich wird irgendwo im Programm geändert; was bei dir allerdings nicht der Fall ist. Und ein simples
Code:
genügt ebenfalls.
[b]if[/b] CB_Franz.checked[color=#ff0000][s]=true[/s][/color] [b]then[/b]
Und zu guter Letzt: Ein Label würde auch genügen. Je nach erfüllter Bedingung könntest du es beschriften:
Delphi-Quellcode:
Dann brauchst du nicht mit dem Verstecken und Anzeigen der verschiedenen Labels hantieren.
if(Irgendeine_Bedingung) then
Label1.Caption := 'Irgendeine Bedingung ist erfüllt' else Label1.Caption := 'Irgendeine andere Bedingung ist erfüllt' |
Re: if ... or ... else - Anwendungen
Liste der Anhänge anzeigen (Anzahl: 1)
Abend MathiasSimmack!
Ich habe jetzt alles gemacht was hier vorgeschlagen wurde, außer
Delphi-Quellcode:
weil die verschiedenen Texte alle nicht in der Mitte sind
if(Irgendeine_Bedingung) then
Label1.Caption := 'Irgendeine Bedingung ist erfüllt' else Label1.Caption := 'Irgendeine andere Bedingung ist erfüllt' und Zitat:
Aber die Fehler ist immer noch da! Hier noch mal der Fehler genau: Wenn alle Fächer die Note 6 haben und alle Kurse auf E bzw. A gestellt sind wird nach der Berechnung nichts angezeigt. Aber wenn ich Englisch auf C oder Englisch und Mathematik jewels auf B stelle 'Kein Abschluss' angezeigt. Ich finde aber den Fehler nicht... Wer kann mir noch helfen? Hier auch der neue QT (ist in diesem QT noch was unschön???): |
Re: if ... or ... else - Anwendungen
Sag mal, @de_arg, ist das irgendwie ein Problem für dich, solche überbreiten Zeilen (wide code ;))
Delphi-Quellcode:
so in den Delphi-Editor zu schreiben, dass du den Rand auf der rechten Seite nicht überschreitest? Sobald du dich ihm näherst und der nächste Wert nicht mehr hinpassen würde, drücke Enter, rücke in der nächsten Zeile zwei Zeichen ein und schreib weiter. Dann hast du einen Beitrag, der auch für das Forum hier akzeptabel ist, und bei dem man nicht nach links und rechts scrollen muss!
gesamt := ((deutsch_n) + (englisch_n) + { ... };
Abgesehen davon brauchst du bei einer normalen Addition, wie der o.g., nicht mal Klammern. Meine Güte. :roll: |
Re: if ... or ... else - Anwendungen
Hai,
bitte in Zukunft nicht mehr diese überlangen Postings machen! :warn: Der Quellcode kann auch bequem als Anhang hinzugefügt werden! |
Re: if ... or ... else - Anwendungen
Noch ein bisschen Senf von meiner Seite :wink:
Ausserdem ist es quatsch immer den ganzen Source zu schreiben. Da blickt man ja nix mehr. Es würde langen wenn du nur das schreibst was du sagen willst. |
Re: if ... or ... else - Anwendungen
Ja, kann ein Mod denn mal den Quellcode rauswerfen?
de_arg kann seine aktuelle Unit für Interessenten ja noch mal anhängen. |
Re: if ... or ... else - Anwendungen
Zitat:
ohne Einverständniss ändere ich ungerne ein Posting. Ich habe de_arg aber via PM gebeten dies selber zu machen. |
Re: if ... or ... else - Anwendungen
Das kann ich zwar verstehen, Sharky, auf der anderen Seite ist es IMHO nicht schlimm, die beiden Units aus den Postings zu entfernen. de_arg hat jederzeit die Möglichkeit, seine Unit noch mal anzuhängen - es ist also nicht so, dass er nun gesperrt werden würde, o.ä.
Und ich hab´ das neue Posting (von heute) nur überflogen, aber soviel scheint sich nicht geändert zu haben. @de_arg: Wenn du trotz allem den Fehler immer noch drin hast, dann schau dir doch einfach noch mal diese Dokumentationen an, auf die du gelinkt hast. Ich meine, irgendwo musst du ja die Berechnungen gefunden haben, mit denen darüber entschieden wird, welchen Abschluss jemand hat. Vielleicht ist dir dabei ein Fehler unterlaufen. |
Re: if ... or ... else - Anwendungen
Hi!
Ich steig durch deinen Code einfach nicht durch und da du wahrscheinlich auch den Durchblick verloren hast (wenn du einfach mal 3 end woanders hinsetzt), würde ich dir folgende methode empfehlen. Entferne dich möglichst weit von deinem Computer, nimm ein möglichst leeres Blatt und einen gutschreibenden Stift und dann zeichnest du dir erstmal diese ganzen Verzweigungen und Bedingungen neu auf, gehst jeden Fall ein paarmal durch, verwendest die angesprochenen Hilfsvariablen und wenn es dann auf dem Papier gudd aussieht, dann kannst du es (strukturiert) abtippen und schauen, ob es geht. Sollte es dann nicht gehen, kannst du bestimmt schneller den Fehler finden oder ihn zumindest eingrenzen und die Frage hier posten. Aber dieser "Papier-Plan" kann wahre Wunder erfüllen. Glaubs mir. Ciao fkerber [Edit] Ich stelle gerade fest, dass ich die komplette 2. Seite bisher überlesen hatte, also denkt euch mein Posting ans Ende der 1. Seite, da passt es besser :oops: aber ich denke mal allgemein stimmt es wohl. [/Edit] [Edit2] Ich stelle grad fest, dass du einige Bedingugen überprüfst, wo die Note <=6 sein soll, was soll sie denn anderes sein? 6 ist doch das höchste, oder? Somit könnten die eigentlich wegfallen, oder? [/Edit2] |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:44 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