Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Uitdaging: Unsigned Gegevenstypen | Overige Gegevenstypen en Concepten
Practice
Projects
Quizzes & Challenges
Quizzen
Challenges
/
C++ Gegevenstypen
Sectie 4. Hoofdstuk 5
single

single

bookUitdaging: Unsigned Gegevenstypen

Veeg om het menu te tonen

Om een getal in het binair systeem weer te geven, moeten zowel de waarde als het teken worden opgeslagen. Eén bit is gereserveerd voor het opslaan van het teken, terwijl de overige bits worden gebruikt voor de numerieke waarde. Het tekenbit slaat op:

  • 0 als het getal niet-negatief is;
  • 1 als het getal negatief is.

Als we zeker weten dat onze variabele alleen niet-negatieve getallen kan bevatten, kunnen we de unsigned type-modificator gebruiken. Deze modificator maakt het mogelijk om waarden op te slaan zonder rekening te houden met het teken.

Bovendien is het bereik van mogelijke waarden groter door het extra geheugen dat beschikbaar is voor de waarde; negatieve getallen vallen echter buiten dit bereik. De toegestane bereiken zijn daarom als volgt:

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
Opmerking

Daarnaast is er een signed type-modificator beschikbaar om aan te geven dat een gegevenstype zowel positieve als negatieve getallen kan bevatten. Maar alle numerieke gegevenstypen zijn standaard signed, dus het is niet nodig dit expliciet te specificeren.

Gebruik unsigned alleen wanneer de variabele geen negatieve getallen kan bevatten.
Het toewijzen van een negatieve waarde aan een unsigned variabele levert geen fouten op, maar de resulterende waarde zal onjuist zijn.

Taak

Swipe to start coding

Je beheert een magazijnvoorraadsysteem. Elk magazijn heeft een maximale capaciteit, en je wilt ervoor zorgen dat het toevoegen van nieuwe voorraad deze limiet niet overschrijdt.

De functie addStock neemt drie unsigned int-parameters en retourneert de bijgewerkte magazijnvoorraad zonder de maximale capaciteit te overschrijden. Alle waarden zijn unsigned omdat negatieve aantallen niet mogelijk zijn.

  1. Controleer eerst of de som van stock en newStock de maxCapacity overschrijdt.
  2. Als de som groter is dan maxCapacity, geef dan maxCapacity terug om overschrijding te voorkomen.
  3. Als de som kleiner dan of gelijk aan maxCapacity is, geef dan de som van stock en newStock terug.

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 4. Hoofdstuk 5
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

some-alt