![]() |
Re: Bruch einlesen
Einfach nach '/' suchen wenn nicht vorhanden Quotient auf 1 setzen.
|
Re: Bruch einlesen
und wie geht das? Kannst du einfach den oben angegebenen Quelltext so verändern?
|
Re: Bruch einlesen
Hier mal schnell runtergetippt eine mögliche Lösung:
Delphi-Quellcode:
Aber Fehleingaben darfst du selbst abfangen. Versuche aber den Code zu verstehen (die OH hilft), sonst lernst du nichts und hast später massive Probleme beim Programmieren.
var
PosBruchstrich: Integer; EditText: string; Zaehler, Nenner: Double; begin EditText := Edit4.Text; PosBruchstrich := Pos('/', EditText); if PosBruchstrich > 0 then begin Zaehler := StrToFloat(Copy(EditText, 1, PosBruchstrich - 1)); Nenner := StrToFloat(Copy(EditText, PosBruchstrich + 1, Length(EditText) - PosBruchstrich)); end else begin Zaehler := StrToFloat(EditText); Nenner := 1; end; ShowMessage('Zähler: ' + FloatToStr(Zaehler) + #13#10 + 'Nenner: ' + FloatToStr(Nenner)); end; |
Re: Bruch einlesen
Einfach mit Pos() die Position des Bruchstriches ermitteln.
|
Re: Bruch einlesen
|
Re: Bruch einlesen
Liste der Anhänge anzeigen (Anzahl: 1)
Das ist jetzt der Komplette Quelltext:
Delphi-Quellcode:
Jetzt öffnet er mir ein Fenster und gibt den Zähler und nenner aus. Das Programm sollte aber eigentlich überprüfen, ob die zufällig erstellte funktion richtig rückwärts abgeleitet worden si (=Stammfunktion erstellen). Wie änder ich es ab, damit es das tut?
unit Unit1;
interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls; type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Label3: TLabel; Button1: TButton; Label4: TLabel; Edit1: TEdit; Edit2: TEdit; Button2: TButton; Label5: TLabel; Image1: TImage; Label6: TLabel; Image2: TImage; Label7: TLabel; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; F, H: integer ; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin randomize; H:=random(9)+1; F:=random(9)+1; label2.Caption:=IntToStr(H); label3.Caption:=IntToStr(F); end; procedure TForm1.Button2Click(Sender: TObject); var PosBruchstrich: Integer; EditText: string; Zaehler, Nenner: Double; begin EditText := Edit2.Text; PosBruchstrich := Pos('/', EditText); if PosBruchstrich > 0 then begin Zaehler := StrToFloat(Copy(EditText, 1, PosBruchstrich - 1)); Nenner := StrToFloat(Copy(EditText, PosBruchstrich + 1, Length(EditText) - PosBruchstrich)); end else begin Zaehler := StrToFloat(EditText); Nenner := 1; end; ShowMessage('Zähler: ' + FloatToStr(Zaehler) + #13#10 + 'Nenner: ' + FloatToStr(Nenner)); end; end. Fals es hilft: Ich habe einen screenshot vom Aufbau (Buttons, etc) angehängt [edit=Matze][delphi]-Tags gesetzt und den doppelten Anhang entfernt. Mfg, Matze[/edit] |
Re: Bruch einlesen
Dann musst du meinen Code natürlich anpassen. Ich habe dir gezeigt, wie man den Zähler und Nenner ermitteln kann, nun bist du dran. Überlege mal, wie es lauten muss. Alles einfach zusammenkopieren bringt nichts, versuche den Code zu verstehen.
PS: Setze zukünftig bitte selbst die [delphi]-Tags. PPS: Ein 1.75 MB großes Bitmap ist als Anhang auch gänzlich ungeeignet. Ein vielleicht 200 KB kleines JPG- oder GIF-Bild wäre besser. Edit: Randomize solle nur einmal aufgerufen werden, daher ist dies am Besten im OnCreate des Formulars aufgehoben. |
Re: Bruch einlesen
Mein Problem ist, dass ich erst seit anfang de schuljahres (ca3/4 Jahr) Unterricht habe und der Lehrer sehr langsam ist, so dass wir fast nichts lernen. Deßwegen versteh ich manche Ausdrücke noch nicht
|
Re: Bruch einlesen
Sry, aber welche Ausdrücke verstehst du nicht(das kann man normalerweise ändern)?
Ich sehe nicht, was man an den Ausdrücken "Überlege mal", "nur einmal", "versuchen zu verstehen", etc. nicht verstehen kann... Wenn du konkrete Fragen hast, dann stelle sie. Deine Hausaufgaben werden wir aber nicht machen... mfg Christian |
Re: Bruch einlesen
das sind keine Hausaufgaben. Das mache ich nur für mich, in der Hoffnung ein bischen mehr zu können als uns der Lehrer beibringt.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:13 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