Negative Zahlen in einer Schleife



  • mmh...und wie vereinbart man ein Variablenfeld von -15 bis 15????



  • gar nicht.

    void __fastcall TForm1::FormCreate(TObject *Sender)
    {
      int A[30];
      int CGM = 587.88;
      int R = 15;
    
      for (int I = 0; I<30; I++)
     {
       R=15;
       A[I] = (CGM * R) / pow(pow(R, 2) + pow(I - 15, 2), 0.75);
    
       StringGrid1->Cells[0][0] = "--------------------";
       StringGrid1->Cells[1][0] = "Wert für V";
       StringGrid1->Cells[0][I+15] = "Y = " + FloatToStr (I - 15);
       StringGrid1->Cells[1][I+15] = FloatToStrF (A[I], ffNumber, 8, 2);
     }
    }
    

    BTW, Was machst Du mit pow(, 0.75)? Riecht ein bisschen nach ziehen von Wurzeln aus negativen Werten.



  • ich seh da keine Wurzeln aus negativen Zahlen! Das ist schon richtig so!!

    Vielen Dank für eure Hilfe

    lg, freakC++



  • void __fastcall TForm1::FormCreate(TObject *Sender)
    {
    
      int CGM = 587.88;
    

    ISt int nicht ganzzahlig? Vielleicht solltest du mit double arbeiten. Also auch

    double A[30]
    

    mfg



  • freakC++ schrieb:

    ich seh da keine Wurzeln aus negativen Zahlen! Das ist schon richtig so!!

    Vielen Dank für eure Hilfe

    lg, freakC++

    und was ist das für I<15? 😡

    pow(I - 15, 2)
    


  • So, ne kleine Mathestunde:
    Wenn ich eine negative Zahl quadriere, dann kommt immer eine positive Zahl herus!! Daher kann in dieser Funktion keine negative Zahl herauskommen und daher kann ich einen reelen Exponenten nutzen!!!!!

    A[I] = (CGM * R) / pow(pow(R, 2) + pow(I - 15, 2), 0.75);

    So, ich hoffe, dass ihr verstanden habt, dass ich recht habe 😃 😃 😃
    lg, freakC++

    PS: Code Tags ham irgendwie net gefunzt!!!



  • freakC++ schrieb:

    PS: Code Tags ham irgendwie net gefunzt!!!

    Das liegt an den zusätzlichen Formatierungstags die du im Code hast.

    A[I] = (CGM * R) / pow(pow(R, 2) + pow(I - 15, 2), 0.75);
    

    bis bald
    akari



  • Entschuldigung, da habe ich wohl nicht richtig hingeschaut. 🙂
    Wenn ich ein pow sehe denke ich halt nicht an Quadrieren, da das ja der blanke Overkill ist.



  • freakC++ schrieb:

    So, ne kleine Mathestunde:
    Wenn ich eine negative Zahl quadriere, dann kommt immer eine positive Zahl herus!!

    Darum ging es doch gar nicht. pow(x,.75) heißt x^(3/4). Die Frage ist doch, ob die Summe der beiden Quadrate, die x bilden negativ wird. Wenn das der Fall ist, ermittelst Du das Kubik von x, welches dann ebenfalls negativ wäre und dann die 4. Wurzel aus dieser negativen Zahl... .
    Aber die Summe der beiden Quadrate wird nicht negativ, Braunstein hat wohl übersehen, dass ich die Schleifenvariable bei 0 und nicht bei -15 starten lasse, denn dann hätte er recht!



  • witte schrieb:

    Die Frage ist doch, ob die Summe der beiden Quadrate, die x bilden negativ wird.

    Hi,

    ich will mich ni einmischen, aber wie soll denn aus zwei positiven Werten - die zwangsläufig positiv sind wenn der negative Wert quadriert wird - was negatives werden? 😕

    mfg, Micha!



  • Yep, das stimmt. OMG, ich brauche Urlaub!



  • witteDarum ging es doch gar nicht. pow(x,.75) heißt x^(3/4). Die Frage ist doch, ob die Summe der beiden Quadrate, die x bilden negativ wird.

    [/quote]
    Aber in diesem Fall kann die Summe nicht negativ werden!!! das ist der Knackpunkt!! Sonsthättest du natürlich recht!!

    lg, freakC++


Anmelden zum Antworten