C++ Zahlen

Normalerweise, wenn wir Zahlen verwenden müssen, verwenden wir primitive Datentypen wie int, short, long, float und double usw. Wir haben die möglichen Werte und Bereiche dieser Datentypen für Zahlen bereits im Kapitel C++-Datentypen besprochen.

C++: Zahlen definieren

Wir haben Zahlen bereits in verschiedenen Beispielen in vorherigen Kapiteln definiert. Nachfolgend finden Sie ein umfassendes Beispiel für die Definition verschiedener Zahlentypen in C++:

Beispiel

#include <iostream> using namespace std; int main () { // Zahlendefinition short s; int i; long l; float f; double d; // Zahlenzuweisung s = 10; i = 1000; l = 1000000; f = 230.47; d = 30949.374; // Zahlenausgabe cout << "short s :" << s << endl; cout << "int i :" << i << endl; cout << "long l :" << l << endl; cout << "float f :" << f << endl; cout << "double d :" << d << endl; return 0; }

Wenn der obige Code kompiliert und ausgeführt wird, liefert er die folgenden Ergebnisse:

short  s :10
int    i :1000
long   l :1000000
float  f :230.47
double d :30949.4

C++-Mathematikoperationen

In C++ gibt es neben der Erstellung verschiedener Funktionen auch verschiedene nützliche Funktionen, die Sie verwenden können. Diese Funktionen sind in den Standardbibliotheken von C und C++ geschrieben und werden alsintegrierteFunktionen bezeichnet. Sie können diese Funktionen in Ihrem Programm referenzieren.

C++ verfügt über umfangreiche integrierte mathematische Funktionen, die auf verschiedene Zahlen angewendet werden können. Die folgende Tabelle listet einige nützliche integrierte mathematische Funktionen in C++ auf.

Um diese Funktionen zu nutzen, müssen Sie die mathematische Header-Datei<cmath> einbinden.。

Laufende NummerFunktion & Beschreibung
1double cos(double);
Diese Funktion gibt den Kosinus eines Winkels im Bogenmaß zurück (Typ double).
2double sin(double);
Diese Funktion gibt den Sinus eines Winkels im Bogenmaß zurück (Typ double).
3double tan(double);
Diese Funktion gibt den Tangens eines Winkels im Bogenmaß zurück (Typ double).
4double log(double);
Diese Funktion gibt den natürlichen Logarithmus des Arguments zurück.
5double pow(double, double);
Unter der Annahme, dass das erste Argument x und das zweite Argument y ist, gibt diese Funktion x hoch y zurück.
6double hypot(double, double);
Diese Funktion gibt die Quadratwurzel der Summe der Quadrate zweier Argumente zurück; das heißt, wenn die Argumente die beiden Katheten eines rechtwinkligen Dreiecks sind, gibt die Funktion die Länge der Hypotenuse zurück.
7double sqrt(double);
Diese Funktion gibt die Quadratwurzel des Arguments zurück.
8int abs(int);
Diese Funktion gibt den Absolutwert der Ganzzahl zurück.
9double fabs(double);
Diese Funktion gibt den Absolutwert einer beliebigen Gleitkommazahl zurück.
10double floor(double);
Diese Funktion gibt die größte Ganzzahl zurück, die kleiner oder gleich dem übergebenen Argument ist.

Nachfolgend ein einfaches Beispiel für mathematische Operationen:

Beispiel

#include <iostream> #include <cmath> using namespace std; int main () { // Zahlendefinition short s = 10; int i = -1000; long l = 100000; float f = 230.47; double d = 200.374; // Mathematische Operationen cout << "sin(d) :" << sin(d) << endl; cout << "abs(i) :" << abs(i) << endl; cout << "floor(d) :" << floor(d) << endl; cout << "sqrt(f) :" << sqrt(f) << endl; cout << "pow( d, 2) :" << pow(d, 2) << endl; return 0; }

Wenn der obige Code kompiliert und ausgeführt wird, liefert er die folgenden Ergebnisse:

sin(d) :-0.634939
abs(i)  :1000
floor(d) :200
sqrt(f) :15.1812
pow( d, 2 ) :40149.7

C++ Zufallszahl

In vielen Fällen müssen Zufallszahlen generiert werden. Es gibt zwei zugehörige Funktionen für den Zufallszahlengenerator. Eine istrand(), diese Funktion gibt nur eine Pseudozufallszahl zurück. Bevor eine Zufallszahl generiert wird, müssen Siesrand() aufrufenFunktion.

Nachfolgend ein einfaches Beispiel zum Generieren von Zufallszahlen. Das Beispiel verwendet dietime()-Funktion, um die Anzahl der Sekunden der Systemzeit zu erhalten, und generiert Zufallszahlen durch Aufruf der rand()-Funktion:

Beispiel

#include <iostream> #include <ctime> #include <cstdlib> using namespace std; int main () { int i,j; // Startwert setzen srand( (unsigned)time( NULL ) ); /*10 Zufallszahlen generieren*/ for( i = 0; i < 10; i++ ) { // Tatsächliche Zufallszahlen generieren j= rand(); cout <<"Zufallszahlen:" << j << endl; } return 0; }

Wenn der obige Code kompiliert und ausgeführt wird, liefert er die folgenden Ergebnisse:

随机数: 1748144778
随机数: 630873888
随机数: 2134540646
随机数: 219404170
随机数: 902129458
随机数: 920445370
随机数: 1319072661
随机数: 257938873
随机数: 1256201101
随机数: 580322989

Mathematische Konstanten in C++

In C++ sind mathematische Konstanten (wie π, e, der goldene Schnitt usw.) ein unverzichtbarer Bestandteil vieler Algorithmen und Anwendungen. Obwohl frühere Versionen von C++ diese Konstanten nicht direkt bereitstellten, wurden ab C++20 in der Standardbibliothek mehrere häufig verwendete mathematische Konstanten eingeführt und ein effizienterer und einheitlicherer Zugriff auf sie ermöglicht.

Weitere Informationen finden Sie unter:C++-Standardbibliothek<numbers>。

π

  • Konstanten:std::numbers::pi
  • Typ:std::float32_t(32-Bit-Gleitkommazahl),std::float64_t(64-Bit-Gleitkommazahl)

Beispiel

#include <cmath>
#include <iostream>

int main() {
    std::cout << "pi: " << std::numbers::pi << std::endl;
}

Die Basis des natürlichen Logarithmus e (Eulersche Zahl)

  • Konstanten:std::numbers::e
  • Typ:std::float32_t、std::float64_t
std::cout << "e: " << std::numbers::e << std::endl;

Goldener Schnitt φ (Goldenes Verhältnis)

  • Konstanten:std::numbers::phi
  • Typ:std::float32_t、std::float64_t
std::cout << "phi: " << std::numbers::phi << std::endl;

Beispiel

#include <iostream>
#include <cmath>
#include <numbers>

int main() {
    std::cout << "pi: " << std::numbers::pi << std::endl;
    std::cout << "e: " << std::numbers::e << std::endl;
    std::cout << "phi: " << std::numbers::phi << std::endl;

    return 0;
}

Das Ausgabeergebnis ist:

pi: 3.14159
e: 2.71828
phi: 1.61803
Weitere Erweiterungen