Ir ao conteúdo
  • Cadastre-se

C# - Operador != não pode ser aplicado à operandos do tipo 'string' e 'int'


ptkato

Posts recomendados

Não sei o que há, mas não funciona, aparece o erro "Operador != não pode ser aplicado à operandos do tipo 'string' e 'int'".

 

 

using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace Programa1{static class Constants    {        public const int MB = 4;        public const int B = 3;        public const int R = 2;        public const int I = 1;    }class Program    {static void Main(string[] args)        {string nt1;            Console.WriteLine("Digite o primeiro dado: "); nt1 = Console.ReadLine();            if (nt1 != 4 && nt1 != 3 && nt1 != 2 && nt1 != 1)            {                Console.WriteLine("Dado inválido, tente novamente: "); nt1 = Console.ReadLine();                while (nt1 != 4 && nt1 != 3 && nt1 != 2 && nt1 != 1)                {                    Console.WriteLine("Dado inválido, tente novamente: "); nt1 = Console.ReadLine();                }

 

 

Alguém poderia me dizer como resolver?

Link para o comentário
Compartilhar em outros sites

@

 

 

Você precisa converter a string guardada em nt1 que vai representar um valor numérico para inteiro. Poderia usar:

int nt1_i;nt1_i = Convert.ToInt32(nt1);

Agora, use a variável inteira nt1_i nos seus testes.

 

Poderia converter e testar (se a conversão foi possível) com o método TryParse também (dê uma lida no help).

 

 

 

 

LNW

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...