Challenge: Type Modifiers for Variables
The keywords short
and long
are type modifiers. They are used to modify the size or range of a data type. They don't create new data types but rather alter the properties of existing types.
type_modifiers.h
1234567// `short` is used for variables // That require smaller range of values. short int small_range_integer_variable; // `long` is used for variables // That require a larger range of values. long int large_range_integer_variable;
Sometimes, you know that the values will certainly be small. For example, when storing the age of users, the value won't exceed 255. Such values can fit within 8 bits.
main.cpp
12345678910#include <iostream> int main() { short int small_number = 45; long int large_number = 4000000000; std::cout << "Small number: " << small_number <<std:: endl; std::cout << "Large number: " << large_number << std::endl; }
What those type modifiers do is change the size of a type. While int
takes up 4 bytes, short int
takes up 2 bytes, and the long int
8 bytes of memory.
Note
There is a shorter syntax available you can use any of them:
short
is equivalent toshort int
;long
is equivalent tolong int
;
So, we need to use long
(long int
) to store large values. In contrast, we can use short
(short int
) to take up less memory. However, its range is narrower because of that. Here is the table with ranges that a type can hold:
Swipe to start coding
You are implementing a utility that estimates daily energy consumption for a city.
The function calculateEnergyConsumption
should multiply a small per-person value by a (potentially) very large population and return the correct total — without losing information due to integer overflow.
- Use
short int
foraverageConsumption
— this small number (like 27 kWh) easily fits in a small-range type. - Use
int
forcityPopulation
, since populations can reach millions. - Multiply
averageConsumption
bycityPopulation
and store the result intotalConsumption
. - Use
long int
fortotalConsumption
, because the multiplication result may exceed the capacity ofint
. - Return the total result from the function.
Do not modify the values of averageConsumption
and cityPopulation
inside the calculateEnergyConsumption
function.
Example
averageConsumption = 27, cityPopulation = 350000000
→ 9450000000
averageConsumption = 25, cityPopulation = 2000000
→ 50000000
averageConsumption = 40, cityPopulation = 100000
→ 4000000
Ratkaisu
solution.cpp
Kiitos palautteestasi!
single
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme
Awesome!
Completion rate improved to 4.35
Challenge: Type Modifiers for Variables
Pyyhkäise näyttääksesi valikon
The keywords short
and long
are type modifiers. They are used to modify the size or range of a data type. They don't create new data types but rather alter the properties of existing types.
type_modifiers.h
1234567// `short` is used for variables // That require smaller range of values. short int small_range_integer_variable; // `long` is used for variables // That require a larger range of values. long int large_range_integer_variable;
Sometimes, you know that the values will certainly be small. For example, when storing the age of users, the value won't exceed 255. Such values can fit within 8 bits.
main.cpp
12345678910#include <iostream> int main() { short int small_number = 45; long int large_number = 4000000000; std::cout << "Small number: " << small_number <<std:: endl; std::cout << "Large number: " << large_number << std::endl; }
What those type modifiers do is change the size of a type. While int
takes up 4 bytes, short int
takes up 2 bytes, and the long int
8 bytes of memory.
Note
There is a shorter syntax available you can use any of them:
short
is equivalent toshort int
;long
is equivalent tolong int
;
So, we need to use long
(long int
) to store large values. In contrast, we can use short
(short int
) to take up less memory. However, its range is narrower because of that. Here is the table with ranges that a type can hold:
Swipe to start coding
You are implementing a utility that estimates daily energy consumption for a city.
The function calculateEnergyConsumption
should multiply a small per-person value by a (potentially) very large population and return the correct total — without losing information due to integer overflow.
- Use
short int
foraverageConsumption
— this small number (like 27 kWh) easily fits in a small-range type. - Use
int
forcityPopulation
, since populations can reach millions. - Multiply
averageConsumption
bycityPopulation
and store the result intotalConsumption
. - Use
long int
fortotalConsumption
, because the multiplication result may exceed the capacity ofint
. - Return the total result from the function.
Do not modify the values of averageConsumption
and cityPopulation
inside the calculateEnergyConsumption
function.
Example
averageConsumption = 27, cityPopulation = 350000000
→ 9450000000
averageConsumption = 25, cityPopulation = 2000000
→ 50000000
averageConsumption = 40, cityPopulation = 100000
→ 4000000
Ratkaisu
solution.cpp
Kiitos palautteestasi!
single