Ir para conteúdo
Fórum Script Brasil
  • 0

<CodeBlocks> Lista de exceções & Case Sensitive


Cleber Griff

Pergunta

Estou criando um programa para exibir a ficha de um carro segundo informações do usuário: Marca, Modelo, Placa, etc..

Dúvida 1: como faço para criar uma espécie de "Lista" com o nome das marcas de carro, para o programa retornar um "Marca inexistente". Também tenho a dúvida de como "liberar" os modelos segundo a marca, sem utilizar tantos if's quanto estou pensando. Vou precisar aprender a lidar com Banco de Dados?

Dúvida 2: queria um modo de escrever "FIAT", "Fiat" ou "fiat" sem diferenciar uma da outra no programa (quando o usuário digitar a marca, independente de maiuscula ou minuscula, ele vai cair no mesmo lugar).

Agradeço a todos que puderem me ajudar!

Editado por Cleber Griff
Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0

Você pode armazenar tudo num arquivo de texto, e manipulá-lo através das funções fopen, fread e semelhantes... ou pode criar uma matriz com todos os nomes de carros.

Quanto a duvida 2, basta converter todos os caracteres que o usuario digitar para minúsculo.

Link para o comentário
Compartilhar em outros sites

  • 0
Você pode armazenar tudo num arquivo de texto, e manipulá-lo através das funções fopen, fread e semelhantes... ou pode criar uma matriz com todos os nomes de carros.

Quanto a duvida 2, basta converter todos os caracteres que o usuario digitar para minúsculo.

Olá, mJi!

Vou tentar criar uma matriz, vejo que vai ser muito útil!

Quanto a converter os caracteres para maiúsculo, poderia me dizer como faço isso?

Desculpas pela leiguice :)

Link para o comentário
Compartilhar em outros sites

  • 0
Quanto a converter os caracteres para maiúsculo, poderia me dizer como faço isso?

Desculpas pela leiguice :)

Claro...

você pode utilizar a função tolower() da biblioteca type.h. Ela converte o caractere passado como parâmetro para minúscula, caso seja maiúscula.

Exemplo:

for(i=0;i<N;i++)
          tolower(string[i]);
Caso prefira, pode também usar um if para verificar se o caractere é maior que 64 e menor que 91 (na tabela ASCII). Se for, some à ele 32. Exemplo usando operador ternário:
for(i=0;i<N;i++)
          string[i] += (string[i] > 64 && string[i] < 91) ? 32 : 0;

Eu pessoalmente prefiro ir pelo if, é mais rápido.

Editado por mJi
Link para o comentário
Compartilhar em outros sites

  • 0

Uma outra função que torna não só um caracter, mas a string toda em maiúscula ou minúscula.

strupr(nome_da_string): Coloca toda a string em maiúsculo.

strlwr(nome_da_string): Adivinha...

Assim, depois do usuário ter digitado a string, você aciona a função e a string toda ficará em maiúsculo/minúsculo.

Editado por bruce845
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...