single
Challenge: Usignerte Datatyper
Sveip for å vise menyen
For å representere et tall i det binære systemet, er det nødvendig å lagre både verdien og fortegnet. Én bit er dedikert til å lagre fortegnet, mens de resterende bitene brukes til å lagre den numeriske verdien. Fortegnsbiten lagrer:
0hvis tallet er ikke-negativt;1hvis tallet er negativt.
Hvis vi er sikre på at variabelen vår kun kan inneholde ikke-negative tall, kan vi bruke unsigned-modifikatoren. Denne modifikatoren gjør det mulig å lagre verdier uten å ta hensyn til fortegnet.
I tillegg, på grunn av økt minne tilgjengelig for å lagre verdien, er området for mulige verdier større; negative tall er imidlertid ikke inkludert i dette området. Derfor er de tillatte områdene som følger:
main.cpp
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; }
I tillegg finnes det en signed type-modifikator som indikerer at en datatypen kan håndtere både positive og negative tall. Alle numeriske datatyper er imidlertid signed som standard, 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 resultatet vil være feil.
Sveip for å begynne å kode
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 å overskride maksimal kapasitet. Alle verdier er unsigned siden negative antall ikke er mulig.
- Først, sjekk om summen av
stockognewStockoverskridermaxCapacity. - Hvis summen er større enn
maxCapacity, returnermaxCapacityfor å unngå å overskride grensen. - Hvis summen er mindre enn eller lik
maxCapacity, returner summen avstockognewStock.
Løsning
Takk for tilbakemeldingene dine!
single
Spør AI
Spør AI
Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår