Warum kostenlos registrieren?

Nur als registriertes Mitglied hast Du vollen Zugriff auf alle Funktionen unserer Website. So kannst Du eigene Fragen stellen und hast die volle Übersicht über neue interessante Themen im Forum.
Jetzt kostenlos registrieren.

Login


Eigenartiger c++ fehler in Formel

Programmier-Tipps und -Tricks. Artikel zum Thema Java, PHP, C++, Delphi, VB, etc.

Eigenartiger c++ fehler in Formel

Beitragvon Learner am 10.12.2007, 21:12

Hallo,
Ich bin bei c++ zufällig auf ein komisches mathematisches falsches (um es soa uszudrücken) gestoßen und zwar:

Code: Alles auswählen
#include <cstdlib>
#include <iostream>
#include <cmath>
#include <cfloat>




using namespace std;

int main(int argc, char *argv[])
{
   
cout << (1^2)/2.0 << endl;

cout << 1.0/2.0  << endl;


    system("PAUSE");
    return EXIT_SUCCESS;
}



Das ist ja ein recht simples programm, aber das lustige ist, dass mir mein pc bei der ersten rechen aufgabe:
Code: Alles auswählen
cout << (1^2)/2.0 << endl;

als ergebnis 1.5 nennt

ABER DAS IST DOCH FALSCH????!!!!!

was mache ich falsch oder macht der pc was falsch? die zweite aufgabe löst er mit 0.5 ja richtig.

Mein Compiler ist DevC++

MfG

Learner
Learner
 
Beiträge: 491
Registriert: 10.09.2006, 11:42


Beitragvon luxx am 11.12.2007, 08:44

Hallo,

das Ergebnis ist völlig korrekt, da (1^2) = 3

Der Operator ^ bedeutet in C und C++ XOR - also bitweise Verknüpfung exklusiv Oder.
Daher ist
0x01 (1)
0x10 (2)
--------
0x11 (3)
luxx
 
Beiträge: 27
Registriert: 19.10.2005, 11:42

Beitragvon Learner am 11.12.2007, 16:40

Ok, davon hab ich zwar noch nie was gehört, scheint aber ne erklärung zu sein.

Wie rechne ich aber dann 1hoch2 ?
1² funzt nicht

danke für die Hilfe

Learner
Learner
 
Beiträge: 491
Registriert: 10.09.2006, 11:42

Beitragvon luxx am 12.12.2007, 07:51

Hallo,

zum einfachen quadrieren genügt es, wenn du (x*x) schreibst. Ansonsten solltest du pow verwenden.
Code: Alles auswählen
#include <math.h>
double erg1 = pow(1, 2)    // 1^2
double erg2 = pow(4, 3.5)  // 4^3.5
luxx
 
Beiträge: 27
Registriert: 19.10.2005, 11:42



Ähnliche Themen


Zurück zu Artikel Softwareprogrammierung

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 0 Gäste