Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Challenge: Unsigned-Datentypen | Weitere Datentypen und Konzepte
C++-Datentypen
Abschnitt 4. Kapitel 5
single

single

bookChallenge: Unsigned-Datentypen

Swipe um das Menü anzuzeigen

Um eine Zahl im Binärsystem darzustellen, müssen sowohl ihr Wert als auch ihr Vorzeichen gespeichert werden. Ein Bit ist für die Speicherung des Vorzeichens reserviert, während die verbleibenden Bits zur Speicherung des Zahlenwerts verwendet werden. Das Vorzeichenbit speichert:

  • 0, wenn die Zahl nicht negativ ist;
  • 1, wenn die Zahl negativ ist.

Wenn sicher ist, dass eine Variable nur nicht negative Zahlen aufnehmen kann, kann der Typmodifizierer unsigned verwendet werden. Dieser Modifizierer ermöglicht die Speicherung von Werten ohne Berücksichtigung des Vorzeichens.

Da dadurch mehr Speicher für den Wert zur Verfügung steht, ist der Wertebereich größer; negative Zahlen sind jedoch nicht enthalten. Die erlaubten Wertebereiche sind daher wie folgt:

main.cpp

main.cpp

copy
12345678910
#include <iostream> int main() { unsigned int total_vehicles = 1446000000; unsigned short age = 21; std::cout << total_vehicles << std::endl; std::cout << age << std::endl; }
Note
Hinweis

Zusätzlich gibt es einen signed-Typmodifizierer, der angibt, dass ein Datentyp sowohl positive als auch negative Zahlen aufnehmen kann. Allerdings sind alle numerischen Datentypen standardmäßig signed, daher ist es nicht notwendig, dies explizit anzugeben.

unsigned nur verwenden, wenn die Variable keine negativen Werte annehmen kann.
Das Zuweisen eines negativen Werts zu einer unsigned-Variablen führt zu keinem Fehler, aber der resultierende Wert ist falsch.

Aufgabe

Wischen, um mit dem Codieren zu beginnen

Sie verwalten ein Lagerverwaltungssystem. Jedes Lager verfügt über eine maximale Kapazität, und Sie möchten sicherstellen, dass das Hinzufügen neuer Bestände dieses Limit nicht überschreitet.

Die Funktion addStock nimmt drei Parameter vom Typ unsigned int entgegen und gibt den aktualisierten Lagerbestand zurück, ohne die maximale Kapazität zu überschreiten. Alle Werte sind unsigned, da negative Bestände nicht möglich sind.

  1. Zuerst prüfen, ob die Summe aus stock und newStock die maxCapacity überschreitet.
  2. Wenn die Summe größer als maxCapacity ist, maxCapacity zurückgeben, um das Limit nicht zu überschreiten.
  3. Wenn die Summe kleiner oder gleich maxCapacity ist, die Summe aus stock und newStock zurückgeben.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 4. Kapitel 5
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

some-alt