AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Extended in Integer

Ein Thema von checker1992 · begonnen am 16. Mär 2010 · letzter Beitrag vom 17. Mär 2010
Antwort Antwort
Seite 1 von 2  1 2      
checker1992

Registriert seit: 3. Mär 2010
7 Beiträge
 
#1

Extended in Integer

  Alt 16. Mär 2010, 12:38
Hallöchen...
ich möchte einen Funktionsgraphen zeichnen und habe mich dazu einem vorhandenen Parser bedient.
Es funktioniert soweit gut, ABER ich bekomme die x und y werte zum zeichnen im extended format.
Ich braucher meiner Meinung nach Integerwerte um mit der Image.Komponente zu zeichnen.
Hat jemand eine Idee wie ich mein Problem lösen könnte. Ich habe auch schon gesucht, aber richtig fündig wurde ich leider nicht.

Mit freundlichen Grüßen
checker
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Extended in Integer

  Alt 16. Mär 2010, 12:44
Delphi-Referenz durchsuchentrunc, Delphi-Referenz durchsuchenceil, Delphi-Referenz durchsuchenfloor.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von sirius
sirius

Registriert seit: 3. Jan 2007
Ort: Dresden
3.443 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Extended in Integer

  Alt 16. Mär 2010, 13:04
Und neben den Rundungsfunktionen natürlich noch die lineare Transformation von deinem Koordinatensystem auf die Koordinaten des Bildschirms.
Dieser Beitrag ist für Jugendliche unter 18 Jahren nicht geeignet.
  Mit Zitat antworten Zitat
checker1992

Registriert seit: 3. Mär 2010
7 Beiträge
 
#4

Re: Extended in Integer

  Alt 16. Mär 2010, 17:30
Danke schon einmal für die Antworten.
Aber werder trunc, noch ceil oder floor wirken. Es kommt immer wieder die Fehlermeldung, dass die Variablen nicht übereinstimmmen würden.
Das Problem ist, ich kann jetzt auch nicht den quelltext angeben, da dieser äußerst umfangreich ist.
Hat jemand eine andere Idee, oder kann mir mal zeigen wie z.B. trunc angewendet wird. Vielleicht habe ich dabei einfach einen Fehler gemacht.

MFG
checker
  Mit Zitat antworten Zitat
Noedel
(Gast)

n/a Beiträge
 
#5

Re: Extended in Integer

  Alt 16. Mär 2010, 18:02
und was ist mit "round"? Das müsste auf jeden fall gehen.
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#6

Re: Extended in Integer

  Alt 16. Mär 2010, 18:08
@checker1992

Delphi-Quellcode:
Var x:double;
    j:integer;

j:=trunc(x);
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
Benutzerbild von Jakob Ullmann
Jakob Ullmann

Registriert seit: 17. Feb 2007
218 Beiträge
 
Lazarus
 
#7

Re: Extended in Integer

  Alt 16. Mär 2010, 18:45
Zitat von checker1992:
Danke schon einmal für die Antworten.
Aber werder trunc, noch ceil oder floor wirken. Es kommt immer wieder die Fehlermeldung, dass die Variablen nicht übereinstimmmen würden.
Das Problem ist, ich kann jetzt auch nicht den quelltext angeben, da dieser äußerst umfangreich ist.
Hat jemand eine andere Idee, oder kann mir mal zeigen wie z.B. trunc angewendet wird. Vielleicht habe ich dabei einfach einen Fehler gemacht.

MFG
checker
Dann kopiere doch bitte mal die exakte Fehlermeldung, die erscheint.
Jakob
  Mit Zitat antworten Zitat
checker1992

Registriert seit: 3. Mär 2010
7 Beiträge
 
#8

Re: Extended in Integer

  Alt 16. Mär 2010, 20:56
sooo...
also das hier ist erstmal die Prozedur die Ausgeführt wird:
Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject);
var l,i:integer;
var x,y,xe,xo,ye,yo,xn,yn: extended;
var xwerte:array[1..20] of integer;
var ywerte:array[1..20] of integer;
term: string;
begin
xe:=160;
xo:=150;
ye:=140;
yo:=150;
term:=edit1.text;
l:=length(term);
i:=1;
repeat
if term[i]='xthen begin
                insert('*',term,i);
                inc(i);
                l:=length(term);
                end;
inc(i);
until i=l+1;
l:=length(term);
   memo1.text := 'x f(x)';
   memo1.Font.Name := 'Courier New';
   x := -5;
   repeat
     y := termToReal(term,x);
     memo1.lines.Add(formatfloat(' 0.0 ;-0.0 ', x) + formatfloat('0.###',y));
     xn:=x*(xe-xo)+xo;
    xwerte[x+6]:=xn;
     yn:=y*(ye-yo)+yo;
     ywerte[x+6]:=FloattoInt(yn);
     x := x + 1/2;
   until x > 5; //Fehler: "until x = 5.5", da extended nicht exakt
end;
"termtoreal(term,x)" ist der angespochene Parser (http://delphi.zsg-rottenburg.de/parser.html). Denn Parser habe ich von der angegeben Seite kopiert. Die Ergebnisse dieses Parser sind nun Extended und genau diese würde ich gern in Integer umwandeln, denn mit Extended werten kann ich leider keinen Graph zeichnen.
Wenn ich es ausführe sieht es dann so aus: s. Anhang.

Was kann ich jetzt machen, denn round ging auch irgendwie nicht. Oder muss ich bei round noch irgendwelche parameter angeben? Wie wird round angewendet?

MFG
checker
Miniaturansicht angehängter Grafiken
fehler_850.png  
  Mit Zitat antworten Zitat
Benutzerbild von Wolfgang Mix
Wolfgang Mix

Registriert seit: 13. Mai 2009
Ort: Lübeck
1.222 Beiträge
 
Delphi 2005 Personal
 
#9

Re: Extended in Integer

  Alt 16. Mär 2010, 21:14
Deine Zuweisung stimmt nicht:
xwertw[x+6]:=xn; Das müßte heißen;
xn:=xwertw[x+6]; Hoffe, das hilft dir weiter

LG

Wolfgang
Wolfgang Mix
if you can't explain it simply you don't understand it well enough - A. Einstein
Mein Baby:http://www.epubli.de/shop/buch/Grund...41818516/52824
  Mit Zitat antworten Zitat
checker1992

Registriert seit: 3. Mär 2010
7 Beiträge
 
#10

Re: Extended in Integer

  Alt 16. Mär 2010, 22:51
danke für die Antworten.
Die Zuweisung stimmt aber, da der Berechnet Wert von xn (Umrechnung von computer koordinatensystem in mahtematisches) in einem Array gespeichert wird. Dieser wird dann zum zeichnen benutzt.
Aber Extended in Integer geht net so einfach oder?

MFG
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:42 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz