Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Dúvida da resposta de exercício

No exercício de criação de gerenciamento de estoque de supermercado, os itens de: código de barras não deveria estar numa variável de int por se tratar de uma série de números? e o de quantidade de estoque não deveria estar em int, já que double são números com casas decimais e em estoque faz mais sentido usar números inteiros? Desde já agradeço!

2 respostas

Oi, Jannie

Sim. Quantidade de estoque deveria ser int, pois consome menos memoria que o double

Porém, código de barras deve ser string, pois pode o código começando com 0 ou usar letra

Exemplo: 07410, a0123

Regra: se você tem um número que não será usado em alguma operação matemática, prefira usar como string

Exemplo: CPF, Telefone

solução!

Jannie,

Vou tentar responder suas perguntas, acho que eu consigo.

PERGUNTA:

  • No exercício de criação de gerenciamento de estoque de supermercado, os itens de: código de barras não deveria estar numa variável de int por se tratar de uma série de números?

RESPOSTA:

Talvez até caiba um código de barras dentro de uma variável tipo ULONG... Na MINHA visão, porém, seria melhor usar tipos de números (BYTE, INT, LONG) para fazer contas, cálculos... Não faz muito sentido você usar um "Código", um "Id" (identificação) sendo declarado como um número. É bem melhor declarar esse tipo de informação como uma STRING, pois NÃO será necessário somar, dividir, subtrair, mas talvez seja necessário usar funções de STRING, como, por exemplo: LEFT(), COUNT(), TRIM(), etc.

PERGUNTA:

  • ... e o de quantidade de estoque não deveria estar em int, já que double são números com casas decimais e em estoque faz mais sentido usar números inteiros?

RESPOSTA:

Sim, poderia ser dependendo da regra de negócio do estabelecimento. Exemplos: 2 caixas, 1 pallet. Mas, e se a regra de negócio exigir valores quebrados? Exemplos: 1,5 litros, 1 xícara e meia.

Para expandir seu conhecimento, por favor, leia o artigo abaixo:

==========================================================

Tipos

Artigo - 16/09/2021 - 34 minutos para o fim da leitura

Tipos integrais

O C# dá suporte a nove tipos integrais:,,,,,,, sbyte byte short ushort int uint long ulong e char . Os tipos integrais têm os seguintes tamanhos e intervalos de valores:

  • O sbyte tipo representa os inteiros de 8 bits assinados com valores entre-128 e 127.
  • O byte tipo representa inteiros de 8 bits não assinados com valores entre 0 e 255.
  • O short tipo representa os inteiros de 16 bits assinados com valores entre-32768 e 32767.
  • O ushort tipo representa inteiros de 16 bits não assinados com valores entre 0 e 65535.
  • O int tipo representa os inteiros de 32 bits assinados com valores entre-2147483648 e 2147483647.
  • O uint tipo representa inteiros de 32 bits sem sinal com valores entre 0 e 4294967295.
  • O long tipo representa os inteiros de 64 bits assinados com valores entre-9.223.372.036.854.775.808 e 9223372036854775807.
  • O ulong tipo representa inteiros de 64 bits sem sinal com valores entre 0 e 18446744073709551615.
  • O char tipo representa inteiros de 16 bits não assinados com valores entre 0 e 65535. O conjunto de valores possíveis para o tipo char corresponde ao conjunto de caracteres Unicode. Embora char o tenha a mesma representação que ushort , nem todas as operações permitidas em um tipo são permitidas no outro.

https://learn.microsoft.com/pt-br/dotnet/csharp/language-reference/language-specification/types#83-value-types

==========================================================

Espero ter ajudado.

[]'s,

Fabio I.