Fantastiskt!
Completion betyg förbättrat till 4.35single
Utmaning: Osignerade Datatyper
Svep för att visa menyn
För att representera ett tal i det binära systemet är det nödvändigt att lagra både dess värde och tecken. En bit är avsatt för att lagra tecknet, medan de återstående bitarna används för att lagra det numeriska värdet. Teckenbiten lagrar:
0om talet är icke-negativt;1om talet är negativt.
Om vi är säkra på att vår variabel endast kan innehålla icke-negativa tal kan vi använda typmodifieraren unsigned. Denna modifierare möjliggör lagring av värden utan att ta hänsyn till tecknet.
Dessutom, tack vare det ökade minnesutrymmet för att lagra värdet, är intervallet av möjliga värden bredare; dock ingår inte negativa tal i detta intervall. Därför är de tillåtna intervallen följande:
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; }
Dessutom finns det en signed typmodifierare tillgänglig för att ange att en datatyp kan hantera både positiva och negativa tal. Men alla numeriska datatyper är som standard signed, så det finns inget behov av att ange det uttryckligen.
Använd endast unsigned när variabeln inte kan anta negativa värden.
Att tilldela ett negativt värde till en unsigned-variabel kommer inte att ge några fel, men det resulterande värdet blir felaktigt.
Swipe to start coding
Du hanterar ett lagerhanteringssystem. Varje lager har en maxkapacitet, och du vill säkerställa att tillägg av nytt lager inte överskrider denna gräns.
Funktionen addStock tar tre unsigned int-parametrar och returnerar det uppdaterade lagersaldot utan att överskrida maxkapaciteten. Alla värden är unsigned eftersom negativa antal inte är möjliga.
- Kontrollera först om summan av
stockochnewStocköverskridermaxCapacity. - Om summan är större än
maxCapacity, returneramaxCapacityför att undvika att överskrida gränsen. - Om summan är mindre än eller lika med
maxCapacity, returnera summan avstockochnewStock.
Lösning
Tack för dina kommentarer!
single
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal