[C++] Quadrieren von Zahlen

DaPsylo

Lt. Commander
Registriert
Okt. 2002
Beiträge
1.159
[c++]

HI,
ich habe da mal ne ,denke ich, eigentlich einfache Frage.
Wie kann ich in c++ 2 werte quadrieren? mit pow(x) komme ich nicht weiter. sagen wir ich habe folgende code-Zeile: a3 = (a1-a2)*(a1-a2);
a1 und a2 werden an anderer stelle im Programm schon abgefragt und das funktioniert auch aber ich will es halt nicht wie da oben schreiben sondern einfach als a1-a2^2 aber ich bekomme das nicht hin.

mfg Psylo
 
Re: [c++] Quadrieren von Zahlen

ist mir schon klar das es eine höhere Operation ist aber leider funktioniert das nicht.
wenn ich z.B. (10-7)^2 nehme und dann per cout ausgebe bringt er mir als ergebnis "1"
 
Re: [c++] Quadrieren von Zahlen

Code:
#include <iostream.h>
#include <math.h>

int a1, b1, c1, a2, b2, c2, a3, b3, c3, test;
double entf, geschw, zeit;

int main()
{


cout << "Der erste X-Wert: ";
cin >> a1;
cout << "Der erste Y-Wert: ";
cin >> b1;
cout << "Der erste Z-Wert: ";
cin >> c1;

cout << "Der zweite X-Wert: ";
cin >> a2;
cout << "Der zweite Y-Wert: ";
cin >> b2;
cout << "Der zweite Z-Wert: ";
cin >> c2;
cout << "Speed der Flotte: ";
cin >> geschw;

a3 = (a1-a2)*(a1-a2);
b3 = (b1-b2)*(b1-b2);
c3 = (c1-c2)*(c1-c2);
entf = sqrt(a3+b3+c3); //Wurzel
zeit = entf/geschw;
cout <<"Die Entfernung betr\x84gt: " <<entf <<endl;
cout <<"Reisezeit: "<<zeit <<endl;


return 0;
}

so, ich habe keine kommentare drin aber erklärt sich eigentlich
 
Zuletzt bearbeitet:
Re: [c++] Quadrieren von Zahlen

änder mal den Datentyp der Integer-Werte in signed long int

Da könnte das Problem liegen. Vorallem wenn negative Zwischenergebnisse auftreten bist du mit signed immer auf der sicheren Seite.
 
Re: [c++] Quadrieren von Zahlen

guten morgen.
ich habe es jetzt so geschrieben:
Code:
a3 = pow((a1-a2), 2);

und dann habe ich noch die anderen Variablen nen anderen Datentyp zu geordnet.
Code:
signed long double entf, geschw, zeit;
das musste ich tun wiel sonst hätte der mir immer Warnungen angezeigt.
 
Zuletzt bearbeitet:
Re: [c++]

ob du es nun als a3 = (a1-a2)*(a1-a2); oder mit pow machst, intern passiert exact das gleiche!
die typdeklaration mit int bedeutet bereits, dass es sich um einen signed int handelt!
 
Re: [c++] Quadrieren von Zahlen

ja jetzt gehts.
sicher ist es das gleiche aber ich finde die variante mit pow besser da man sich so nen bissl code spart.
 
Zurück
Oben