toppy Geschrieben 20. März 2002 Geschrieben 20. März 2002 Kann mir mal bitte jemand folgende Formel für Borland 5.0 übersetzen ?? U© = U * e [hoch] (- (t / (R*C))) (kann in nächster Zeit sicherlich diese Hilfe öfter's gebrauchen ) Zitieren
DonMaro Geschrieben 20. März 2002 Geschrieben 20. März 2002 Ist das ne physikalische Formel ? Mit den Variablen U (Strom), R (Widerstand) und C (Kapazität) ? Oder was genau soll die machen ? Also, wozu brauchst du die ? Zitieren
TingleTangle Geschrieben 20. März 2002 Geschrieben 20. März 2002 U© = U * e [hoch] (- (t / (R*C))) U© = U * e ^ (-1 * (t / (R*C))) generell so, wüde ich sagen, falls C keine float ist. Aber vielleicht gibst du noch ein paar Infos zu den Variablen. Zitieren
maxim_42 Geschrieben 20. März 2002 Geschrieben 20. März 2002 U© = U * e [hoch] (- (t / (R*C))) #include <math.h> double res; double dummy= -1*t/r*c; res=exp(dummy); alles klar? Zitieren
Klotzkopp Geschrieben 20. März 2002 Geschrieben 20. März 2002 Original geschrieben von DocNeo U© = U * e ^ (-1 * (t / (R*C))) ^ ist der bitweise XOR-Operator. U = Udach * exp( -(t / (R*C) ); Zitieren
Klotzkopp Geschrieben 20. März 2002 Geschrieben 20. März 2002 Original geschrieben von maxim_42 double dummy= -1*t/r*c; Die Klammern um r*c sind schon wichtig Zitieren
maxim_42 Geschrieben 20. März 2002 Geschrieben 20. März 2002 @Klotzkopp Die Klammern um r*c sind schon wichtig Yesss Sir! Sorry Zitieren
toppy Geschrieben 20. März 2002 Autor Geschrieben 20. März 2002 @maxim_42 Also bis #include <math.h> hab ich's noch kapiert Also es ist 'ne stinknormale physikalische Formel zum Entladen eines Kondensator's.....das muss ich irgendwie mit Hilfe einer Kurve grafisch darstellen (also Benutzer gibt Werte für R,C,U ein,drückt Button "Kurve" und das Proggy zeichnet die dazugehörige Kurve) Ich glaub ihr habt auch die eulersche Zahl (e) unterschlagen Zitieren
Klotzkopp Geschrieben 20. März 2002 Geschrieben 20. März 2002 Lass t in einer Schleife laufen, dann bilden die Wertepaare aus t und dem Formelergebnis einen Punkt. Und wir haben nichts unterschlagen: exp(x) berechnet e hoch x. Für die grafische Darstellung bist Du im falschen Forum Zitieren
toppy Geschrieben 20. März 2002 Autor Geschrieben 20. März 2002 Oki, danke erstma...werd es demnächst mal ausprobieren, wenn ich 'n bissl mehr Zeit hab. Hab Übrigens dieAufzeichnungen gefunde mit den Kurven (die ich darstellen muss) und den Formeln. Vielleicht könnt ich euch die mal schicken daamit die Sahe mal klarer wird was ich nun genau machen muss und ihr mit vielleicht noch Tipps geben könnt ?? Grafische Darstellung falsches Forum, wo soll denn das sonst rein ?? :confused: Zitieren
Klotzkopp Geschrieben 20. März 2002 Geschrieben 20. März 2002 Original geschrieben von toppy Grafische Darstellung falsches Forum, wo soll denn das sonst rein ?? :confused: Wenn Du mit "grafisch" etwas meinst, dass über das ausgeben von Sternchen mittels printf oder cout hinausgeht, dann ist das plattformabhängig, hat nichts mehr mit dem C/C++-Standard zu tun, und gehört demzufolge nach Compiler, IDEs, APIs zu C++ Zitieren
toppy Geschrieben 20. März 2002 Autor Geschrieben 20. März 2002 Oki, dann unterlass ich Fragen betreffs der grafischen Darstellung Kann ich dir denn mal die Unterlagen mailen damit du bitte noch paar Tipps/Vorschläge geben könntest ?? Zitieren
Klotzkopp Geschrieben 20. März 2002 Geschrieben 20. März 2002 Nur zu Ich schick Dir die E-Mail-Adresse als PM. Zitieren
toppy Geschrieben 20. März 2002 Autor Geschrieben 20. März 2002 Ich kapier's net, bekomm nur 'ne blöde rote senkrechte Linie Code: //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" #include <math.h> //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::btnBeendenClick(TObject *Sender) { Close(); } //--------------------------------------------------------------------------- void __fastcall TForm1::FormShow(TObject *Sender) //zeichnet 'ne weisse Fläche { imgGrafik->Canvas->Rectangle(0, 0, imgGrafik->Width, imgGrafik->Height); imgGrafik->Canvas->FloodFill(10, 10, clWhite, fsBorder); } //--------------------------------------------------------------------------- void __fastcall TForm1::btnBerechnenClick(TObject *Sender) { //soll später in einem Memo die Formel etc. ausgeben double LadeU, Zeit, Kapazitaet, Widerstand; LadeU = StrToFloat(edtLade->Text); Zeit = StrToFloat(edtZeit->Text); Kapazitaet = StrToFloat(edtKapa->Text); Widerstand = StrToFloat(edtWider->Text); memBerechnung->Clear(); memBerechnung->Lines->Add(" Formel blablabla "); } //--------------------------------------------------------------------------- void __fastcall TForm1::btnGrafikClick(TObject *Sender) { //weisse Fläche wieder imgGrafik->Canvas->Rectangle(0, 0, imgGrafik->Width, imgGrafik->Height); imgGrafik->Canvas->FloodFill(10, 10, clWhite, fsBorder); int xPos, yPos, Skala, xAbstand, yAbstand, Ergebnis, i; float xWert; xAbstand = 20; yAbstand = 30; Skala = 100; //"einstellen des Stiftes" imgGrafik->Canvas->Pen->Color = clRed; imgGrafik->Canvas->MoveTo(xAbstand, imgGrafik->Height - yAbstand); xWert = 0.1; //Rechnung while(xWert<2.1) { xPos = xWert * Skala; Ergebnis = LadeU * exp(( -(Zeit / (Widerstand * Kapazitaet)))) * Skala; for(i=1; i<5; i++) { yPos = Ergebnis * i; } //zeichnen der Kurve imgGrafik->Canvas->LineTo(xAbstand + xPos, imgGrafik->Height - yAbstand - yPos); xWert +=0.1; } } //--------------------------------------------------------------------------- Erkennt einer den Grund ?? :confused: Zitieren
Klotzkopp Geschrieben 20. März 2002 Geschrieben 20. März 2002 Original geschrieben von toppy Ergebnis = LadeU * exp(( -(Zeit / (Widerstand * Kapazitaet)))) * Skala; Die Zeit sollte sich schon ändern, nimm doch statt dessen mal xWert. for(i=1; i<5; i++) { yPos = Ergebnis * i; } Das macht keinen Sinn, ist das gleiche wie: yPos = Ergebnis * 5; Zitieren
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.