![]() |
Prob mit Schul- und Privat Delphen.
Hi!
Das delphen hab ich teilweise in der Schule und teilweise zuhause gelernt. Die Grundkenntnisse was ObjektInspektor angeht und alles was wir an Objekten gemacht haben habe ich eigentlich aus der Schule. 2 Zahlen addieren z.B hab ich aber Privat gelernt. Ich mach auch erst seit ca 3 Wochen etwas mit Delphi. Jetzt hab ich aber Probleme gekriegt mit dem was wir in der Schule machen weil die das ganz anders machen. Wenn ich z.B ein FormatFloat bei mir reinmachen will dann klappt das nicht so wie ich das will. Ich liste mal zuerst den QT aus meiner Schule auf und dann den ich machen würde:
Delphi-Quellcode:
und jetzt mal meinen:
var T_Fahrenheit:Real;
begin T_Fahrenheit:=StrToFloat(Edit2.Text)*9/5+32; Edit1.Text:=FormatFloat('###.#0',T_Fahrenheit); Edit2.SetFocus; end;
Delphi-Quellcode:
Das is nen stinknormaler Rechner von Celsius nach Fahrenheit nur verstehe ich den QT aus der Schule gar nich. So wie ich das mache habe ich es auch bisher nich geschafft ein Formatfloat zu setzen weil der entweder Fehler hatte oder das nicht so gemacht hat wie ich wollte.
Begin
EDIT2.Text:=FloatToStr(StrToInt(Edit1.Text)*9/5+32); end; Jetzt meine Frage: Kann mir vielleicht jemand leicht erklären wie ich den QT aus der Schule zu verstehen hab und wie würde das jetzt aussehen wenn ich 2 Zahlen addieren will ?!.Und wie ich und ob ich überhaupt ein FormatFloat in meinem setzen kann. THX !!! cya mfg Zombi :firejump: |
F1 -> FormatFloat. Lesen und verstehen. :wink:
|
F1 -> FormatFloat. Lesen und verstehen.
yo ich hab das mal gemacht aber das hilft mir irgendwie nich sehr weiter. ich hab das Englische Delphi und soooo ein englisch Profi bin ich nich wirklich.
Aber das is ja auch nich mein einzigstes Prob!! cya MfG Zombi :firejump: |
Schau dir mal StrtoFloatf an, ist viel besser. Auch 1000er Punkte möglich usw.
Zu deinem Problem: Mach es dir nicht so schwer und teile Berechnungen in Funktionen auf. Einfach aufrufen und du hast (natürlich muss die richtig rechnen) schon mal den richtigen Wert! Z.B:
Delphi-Quellcode:
Achte auf Klammern und mathematische Regeln (Punkt vor Strich usw. ). Der Rechner ist da gnadenlos!
function CelsiusinFahrenheit (Parameter : Real) : Real;
begin Result := // dein Code end; function FahrenheitinCelsius (Parameter : Real) : Real; begin Result := // dein Code end; |
Hi!
Also mir der Mathematischen Formel habe ich eigentlich keine Probz das ging ja auch bisher aber das mit den function sieht noch ne bissel komplizierter aus. Aber auch nur weil ich das noch nich getestet habe als ich z.B: das erste mal eine ComboBox eingerichtet hab da kam ich zuerst auch nicht weiter aber das is nun auch kein Problem mehr ! Ich werde das dann mal testen... Dieses (Parameter : Real) muss das jetzt so heißen oder Result ? weil von Result hab ich noch nie etwas gehört ist das ein fester Begriff in Delphi oder eine normale Variable ? Dann noch eine Frage da ich mit Pascal angefangen habe zu proggen waren Befehle wie strtofloat floattostr oder strtoint alles neu für mich ich weiß auch gar nicht richtig was die bedeuten ausser das str für string steht int für integer und float von ? fließkommazahl ? Wo liegt denn da jetzt der Unterschied zwischen FloatToStr und StrToFloat ? Wenn ich das jetzt so wie im unteren Beispiel mache dann muss ich aber trotzdem noch den ganze Code eingeben oder ? also so:
Delphi-Quellcode:
oder dann stumpf nur noch die Formel das kann ich mir dann aber nich vorstellen weil das währe dann ja wirklich einfach =))
function CelsiusinFahrenheit (Parameter : Real) : Real;
begin Result :=StrToFloat(StrToInt(Edit1.Text)*9/5+32); Wie würde das aussehen wenn das FormatFloat da noch hinkommt ? einfach das da drunter schreiben wie in dem QT aus der Schule ? Sorry für solche fragen aber ich bin halt noch ein blutiger Anfänger =) THX cya MfG Zombi :firejump: |
Moin Zombi,
als erstes mal zu Result. Result ist eine Variable, die in jeder Funktion automatisch vom Compiler erkannt wird, und nicht deklariert werden muss. Dies geschieht implizit dadurch, dass eine Funktion deklariert wird. Result hat immer den Typ des Rückgabewertes der Funktion. Bei einer Funktion
Delphi-Quellcode:
hat Result z.B. den Typ integer.
function IchHabeAlsErgebnisInteger : integer;
Mit dieser Variablen kann innerhalb der Funktion alles gemacht werden, was man auch sonst mit einer Variablen dieses Typs machen kann. Die Funktionen:
|
In der einer Funktion CelsiusinFahrenheit hat keine visuelle Komponente etwas verloren, hier kommt nur der reine mathematische Aspekt rein.
Hoffe dir geht gleich ein Licht auf:
Delphi-Quellcode:
Habs nicht compiliert, aber das auch nicht wichtig, es ist der Sinn der da hintersteckt (sollte aber zu compilieren sein :mrgreen: ).
procedure TForm1.Button1Click(Sender: TObject);
var Fahrenheit : Real; begin Fahrenheit := CelsiusinFahrenheit( StrtoFloat(Edit1.text )); Label1.caption := FloattoStrF( Fahrenheit, ffNumber, 3, 1 ); end; |
Danke erstmal @ Christian Seehase für die Funktionen !
@ Touchdown also irgendwie werde ich aus deinem noch weniger schlau als aus dem aus meiner Schule obwohl er dem ähnelt.
Delphi-Quellcode:
hab ich jetzt mal ausprobiert doch das funzt nich :(
function CelsiusinFahrenheit (Parameter : Real) : Real;
begin Result :=StrToFloat(StrToInt(Edit1.Text)*9/5+32); end; [Error] Unit1.pas(57): There is no overloaded version of 'StrToFloat' that can be called with these arguments Bekomme ich als Fehlermeldung ob ich jetzt Result oder Edit2.Text nehme und drehe ich StrToFloat um sagt er mir irgendwas mit Real and String. Könnte mir vielleicht einer mal einen funzenden QT geben mit Result ? den würde ich dann mal ausprobieren. Aber mit function weil wenn ich das mache mit Edit2.Text und nicht Result sagt er mir die function währe dann unnötig. cya THX für eure Hilfe ! Bin halt noch nen Blutiger Noob und muss noch viel lernen :D mfg Zombi :firejump: |
Meine Signatur wäre so ein Beispiel :coder:
Was du in der Schule lernst ist vielleicht nicht das gelbe vom Ei. Schau dir an was ich geschrieben hab, ist recht einfach zu verstehen denke ich. Was erwartetst du von einer Funktion FahrenheitinCelsius? Ich erwarte nur ein Ergebnis! |
Yo ich erwarte im Endeffekt natürlich auch nur ein Ergebnis aber ich will auch verstehen was ich mache. Deswegen frage ich ja auch (so blöd) :D
Wenn ich das verstehe dann is ja auch logisch das ich mir das besser merken kann. Das mit der Schule da haste recht ich bin zwar auf einem Berufskolleg in Münster für Telekommikations und Informationstechnik aber der Lehrer is echt manchmal wirsch der tut so als würden wir das alles können :( cya mfg Zombi :firejump: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:27 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