Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Utfordring: Usignerte Datatyper | Andre Datatyper og Konsepter
Practice
Projects
Quizzes & Challenges
Quizer
Challenges
/
C++ Datatyper
Seksjon 4. Kapittel 5
single

single

bookUtfordring: Usignerte Datatyper

Sveip for å vise menyen

For å representere et tall i det binære systemet, må både verdi og fortegn lagres. Én bit er dedikert til å lagre fortegnet, mens de resterende bitene brukes til å lagre den numeriske verdien. Fortegnsbiten lagrer:

  • 0 hvis tallet er ikke-negativt;
  • 1 hvis tallet er negativt.

Hvis vi er sikre på at variabelen vår kun kan inneholde ikke-negative tall, kan vi benytte unsigned-modifikatoren. Denne modifikatoren muliggjør lagring av verdier uten å ta hensyn til fortegn.

I tillegg, på grunn av økt minne tilgjengelig for å lagre verdien, er området for mulige verdier bredere; negative tall er imidlertid ikke inkludert i dette området. Tillatte områder er derfor som følger:

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
Merk

I tillegg finnes det en signed-typemodifikator som indikerer at en datatypen kan romme både positive og negative tall. Men alle numeriske datatyper er som standard signed, så det er ikke nødvendig å spesifisere dette eksplisitt.

Bruk kun unsigned når variabelen ikke kan ha negative verdier.
Å tilordne en negativ verdi til en unsigned-variabel vil ikke gi noen feil, men den resulterende verdien vil være feil.

Oppgave

Swipe to start coding

Du administrerer et lagerstyringssystem. Hvert lager har en maksimal kapasitet, og du vil sikre at påfylling av nytt varelager ikke overskrider denne grensen.

Funksjonen addStock tar tre unsigned int-parametere og returnerer det oppdaterte lagerbeholdningen uten å overstige maksimal kapasitet. Alle verdier er unsigned siden negative antall ikke er mulig.

  1. Først, sjekk om summen av stock og newStock overstiger maxCapacity.
  2. Hvis summen er større enn maxCapacity, returner maxCapacity for å unngå å overskride grensen.
  3. Hvis summen er mindre enn eller lik maxCapacity, returner summen av stock og newStock.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 4. Kapittel 5
single

single

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

some-alt