Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Desafio: Tipos de Dados Sem Sinal | Outros Tipos de Dados e Conceitos
/
Tipos de Dados em C++
Seção 4. Capítulo 5
single

single

bookDesafio: Tipos de Dados Sem Sinal

Deslize para mostrar o menu

Para representar um número no sistema binário, é necessário armazenar tanto o seu valor quanto o sinal. Um bit é dedicado ao armazenamento do sinal, enquanto os bits restantes são utilizados para armazenar o valor numérico. O bit de sinal armazena:

  • 0 se o número for não negativo;
  • 1 se o número for negativo.

Se for certo que a variável pode armazenar apenas números não negativos, é possível utilizar o modificador de tipo unsigned. Esse modificador permite o armazenamento de valores sem considerar o sinal.

Além disso, devido ao aumento da memória disponível para armazenar o valor, o intervalo de valores possíveis é maior; entretanto, números negativos não estão incluídos nesse intervalo. Portanto, os intervalos permitidos são os seguintes:

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
Nota

Além disso, existe um modificador de tipo signed disponível para indicar que um tipo de dado pode acomodar tanto números positivos quanto negativos. Porém, todos os tipos numéricos são signed por padrão, portanto não é necessário especificá-lo explicitamente.

Certifique-se de usar unsigned apenas quando a variável não puder assumir valores negativos.
Atribuir um valor negativo a uma variável unsigned não gerará erros, mas o valor resultante será incorreto.

Tarefa

Swipe to start coding

Você está gerenciando um sistema de inventário de armazém. Cada armazém possui uma capacidade máxima, e é necessário garantir que a adição de novos itens não ultrapasse esse limite.

A função addStock recebe três parâmetros do tipo unsigned int e retorna o estoque atualizado do armazém sem exceder a capacidade máxima. Todos os valores são unsigned, pois não é possível ter itens negativos.

  1. Primeiro, verifique se a soma de stock e newStock excede maxCapacity.
  2. Se a soma for maior que maxCapacity, retorne maxCapacity para evitar ultrapassar o limite.
  3. Se a soma for menor ou igual a maxCapacity, retorne a soma de stock e newStock.

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 5
single

single

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

some-alt