Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Durschnitt berechnen (https://www.delphipraxis.net/55423-durschnitt-berechnen.html)

hanselmansel 20. Okt 2005 21:16

Re: Durschnitt berechnen
 
Delphi-Quellcode:
Label5000.Caption := FloatToStr(Abinote); //Wenn die Abinote ne Kommazahl sein kann
Label5000.Caption := IntToStr(Abinote); //Wenn die abinote auf jeden Fall ganzzahlig ist.
P.S.: Bin zu faul, in der Berechnung zu gucken, welche Werte Abinote annehmen kann...

glkgereon 20. Okt 2005 21:17

Re: Durschnitt berechnen
 
sorry, aber kauf dir maln gutes buch über delphi ;)
Delphi-Quellcode:
note:=17/3 - punkte/168;
if Note<1.0 then Note:=1.0;
if Note>4.0 then
  Label21238.Caption:='Nicht bestanden'
else
  Label21238.Caption:=FormatFloat('0.0',Note);

hanselmansel 20. Okt 2005 21:22

Re: Durschnitt berechnen
 
Hey Gereon,

ich hab's gerade mal in den Taschenrechner gehauen. Deine Formel stimmt ja sogar! :shock: (Auch wenn die von mir angestrebten 780 Punkte danach nur eine 1,02 ergeben würden... :? )

MfG und gute N8,

hanselmansel

Stanlay Hanks 20. Okt 2005 21:28

Re: Durschnitt berechnen
 
[/OT]
Zitat:

Zitat von hanselmansel
Auch wenn die von mir angestrebten 780 Punkte danach nur eine 1,02 ergeben würden...

...bekommst du trotzdem eine 1,0 (Es gibt nur eine Nachkommastelle und Runden ist ja nicht nötig ;) )

Oder wolltest du 0,9? [/OT]

bigpoopapizza 20. Okt 2005 21:38

Re: Durschnitt berechnen
 
ja danke!!

jetzt noch ne frage!!(sorry)

kann ich das jetzt noch so machen dass die note die da raus kommt auf nur eine nachkommastelle kommt und abgerundet wird??weil wenn ich jetzt 325 punkte eingeb 3.7321.... rauskommt un das sieht irgendwie n bisschen blöd aus!!

wie bist du auf diese formel gekommen??

glkgereon 20. Okt 2005 21:39

Re: Durschnitt berechnen
 
Zitat:

Zitat von Stanlay Hanks
[/OT]
Zitat:

Zitat von hanselmansel
Auch wenn die von mir angestrebten 780 Punkte danach nur eine 1,02 ergeben würden...

...bekommst du trotzdem eine 1,0 (Es gibt nur eine Nachkommastelle und Runden ist ja nicht nötig ;) )

Oder wolltest du 0,9? [/OT]

also diese formel kommt von irgendeiner schulseite...

Bei Google suchenabiturnote berechnen irgendwo erste oder zweite seite ;)

aber ein bisschen suspekt is sie mir noch :(
weil da kommt manchmal 0,666 und so raus...
aber das liegt imho an folgendem:

die blöden ministerien haben ne tabelle aufgestellt wo drinsteht "Punkte -> Note"
dann wurde daraus eine möglichst ähnliche formel entwickelt
überall sind die sprünge von einer zur nächsten note (zb 2.1 zu 2.2 und 2.2 zu 2.3) 17(+-1) Punkte entfernt.
nur nil(*g*)->1.0 und 1.0 -> 1.1 sind "paar" mehr, locker über 50 mein ich.
daher muss man abfragen ob die note <1 ist :(

hanselmansel 21. Okt 2005 08:46

Re: Durschnitt berechnen
 
HiHo,

ich weiß nicht, ob du das Delphi-Referenz durchsuchenFormatFloat von Gereon benutzt hast, aber eigentlich ist es genau das, was du brauchst.
Delphi-Quellcode:
function FormatFloat(const Format: string; Value: Extended): string;
Du könntest es dir natürlich in der OH ansehen, aber ich poste es hier einfach mal, da die OH für "gerade reingestolperte" mitunter etwas kryptisch ist.
  • Als Format übergibt Gereon den String '0.0'. Hierbei sind die Nullen Platzhalter für Ziffern. Sprich: Die erste Null sagt uns, dass der Vorkommateil deiner Abinote in einen String umgewandelt wird, dann kommt das Komma und dann eine Null für eine gerundete Nachkommastelle.
  • Value ist ein Gleitkommawert (also deine Abinote) die du der Funktion übergeben musst.
  • Der Rückgabewert ist vom Typ String. Also genau das, was du brauchst, um es in einer TEdit.Text oder einer TLabel.Caption auszugeben.
Sollte die Berechnung mit der Formel bei guten Noten wirklich nicht mehr Stimmen, kannst du ja für niedrige Punktzahlen die Note per Formel bestimmen lassen, und für extrem hohe mit einer Verzweigung. Das spart Codieraufwand beim Tippen der CaseOf-Anweisung.

MfG,

hanselmansel


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:01 Uhr.
Seite 2 von 2     12   

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