![]() |
Re: Taschenrechner Programmieren
Die Suche ist doch so was schönes: [dp]fakultät[/dp]. :roll:
|
Re: Taschenrechner Programmieren
Ich hab auch versucht nen Rechner zu proggen und hab ein Prob, deshalb greif ich den Thread mal auf....
Es soll ein Taschenrechner entstehen, bei dem man 2 Zahlen und das zu verwendende Rechenzeichen angeben können soll, wobei auch negative und , Zahlen möglich sein sollen.
Code:
Hat da jemand ne Fehlerlösung zu? (ich hab erst kürzlich mit Delphi angefangen, etwas Ahnung von TurboPascal und mir schon einige Tuts durchgelesen, hab aber nicht sooo ne große Ahnung von den Fachbegriffen)
Var Zahl1, Zahl2, Rechenzeichen, Ergebnis: integer;
Begin Zahl1:=strtoint(edit1.text); Zahl2:=strtoint(edit2.text); Rechenzeichen:=was muss ich hier nehmen(edit3.text); If Rechenzeichen = '+' then Ergebnis :=Zahl1 + Zahl2; If Rechenzeichen = '-' then Ergebnis := Zahl1 - Zahl2; etc.... hier bekomm ich immer den Fehler: Ausdruck erwartet, aber then gefunden Label5.caption:=inttostr(Ergebnis); End. |
Re: Taschenrechner Programmieren
Delphi-Quellcode:
Probiers aus, und sag dann, welcher fehler kommt ...
Var
Zahl1, Zahl2, Ergebnis: integer; RechenZeichen: String; Begin Zahl1 := strtoint(edit1.text); Zahl2 := strtoint(edit2.text); Rechenzeichen := edit3.text; If Rechenzeichen = '+' then Ergebnis := Zahl1 + Zahl2; If Rechenzeichen = '-' then Ergebnis := Zahl1 - Zahl2; Label5.caption := inttostr(Ergebnis); End; |
Re: Taschenrechner Programmieren
der Fehler beim If befehl is komischer Weise nichtmehr da (hab eigentlich nix geändert)
Das mit dem Rechenzeichen klappt auch, aber Kommazahlen klappen noch nicht und ich muss bei Rechenzeichen div eingeben... kann ich das irgendwie machen das ich einfach / mach? Thx 4 help schomma ;) |
Re: Taschenrechner Programmieren
Du willst ja eine Kommazahl darstellen. Dazu benutzt du die Falsche Variable! Integer kann grundsätzlich nur ganze Zahlen darstellen. Du müsstest also in deiner Variablen-Deklaration folgendes schreiben:
Delphi-Quellcode:
Alternativ könntest du auch Extended verwenden, aber Real sollte für 'nen kleinen Taschenrechner reichen. Jetzt kannst du auch folgende if-Abfrage hinter deine beiden bereits bestehenden packen:
var Zahl1,Zahl2,Ergebnis:Real;
Delphi-Quellcode:
Nun wird deine letzte Zeile auch nicht mehr funktionieren, da du ja keinen Integer, sondern einen Real-Wert umwandeln willst. Ich glaube in dem Fall müsste
if Rechenzeichen = / then
ergebnis:=zahl1/zahl2;
Delphi-Quellcode:
funzen. Ansonsten:
floattostr();
Delphi-Quellcode:
Dazu müsstest du aber estr als String-Variable deklarieren.
str(ergebnis,estr);
label5.caption:=estr; |
Re: Taschenrechner Programmieren
ich post die Frage einfach mal hier rein ;)
ich versuche im mom ein Prog zum Umwandeln von zB Meter in Fuß/Meter in CM/etc... Aber da ja bei Groß/Kleinbuchstaben unterschieden wird sieht das ganze jetzt so aus (siehe unten) :( normal müsste das doch mit lower case gehen?!
Delphi-Quellcode:
If (lowercase(Einheit)='cm') and (lowercase(Umwandeln)='m') then.....
Delphi-Quellcode:
:coder2:
var Eingabe, Ergebnis : real;
Einheit, Einheitneu:string; begin Eingabe:=strtoint(Edit1.text); Einheit:=(Edit2.Text); EInheitneu:=Edit3.Text; If (Einheit='cm') and (einheitneu='m') then Ergebnis:=Eingabe /100; If (Einheit='CM') and (einheitneu='m') then Ergebnis:=Eingabe /100; If (Einheit='Cm') and (einheitneu='m') then Ergebnis:=Eingabe /100; If (Einheit='cM') and (einheitneu='m') Is da irgendwo ein Fehler drin? Mfg, Excalibur |
Re: Taschenrechner Programmieren
Was geht denn bei deinem Programm nicht?
|
Re: Taschenrechner Programmieren
kommt ne Fehlermeldung beim lowercase
|
Re: Taschenrechner Programmieren
Und die wäre?
|
Re: Taschenrechner Programmieren
Inkompatible Typen: 'String' und 'Real' :gruebel:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:11 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