I want to put the number of characters and put it even or odd

1

But my code is giving error.

namespace Impar_ou_parr
{
    class Program
    {
        static void Main(string[] args)
        {
            string NumLetras;
            Console.WriteLine("Digite uma Palavra: ");
            NumLetras = Console.ReadLine();
            Console.WriteLine("Sua palavrra tem " + NumLetras.Length + " letras!");

            int x;
            x = int.Parse(Console.ReadLine());
            if (x % 2 == 0)
            {
                Console.WriteLine("Sua palavra tem um numero par de letras");
            }
            else
            {
                Console.WriteLine("Sua palavra tem um numero impar de letras");
            }
            Console.ReadLine();
        }
    }
}
    
asked by anonymous 10.01.2017 / 13:27

5 answers

2

In case you need n gives int.Parse , since it is already an integer. Also you do not need to fetch the value again in the console, since you already have your word in the NumLetras variable. Having said that try the code below, it ran on my machine

namespace Impar_ou_parr
{
    class Program
    {
        static void Main(string[] args)
        {
            string NumLetras;
            Console.WriteLine("Digite uma Palavra: ");
            NumLetras = Console.ReadLine();
            Console.WriteLine("Sua palavrra tem " + NumLetras.Length + " letras!");

            int x;
            x = NumLetras.Length;
            if (x % 2 == 0)
            {
                Console.WriteLine("Sua palavra tem um numero par de letras");
            }
            else
            {
                Console.WriteLine("Sua palavra tem um numero impar de letras");
            }
            Console.ReadLine();
        }
    }
}
    
10.01.2017 / 13:39
5

I think you want this:

using static System.Console;

namespace Impar_ou_parr {
    public class Program {
        public static void Main(string[] args) {
            WriteLine("Digite uma Palavra: ");
            WriteLine($"Sua palavra tem um numero {(ReadLine().Length % 2 == 0 ? "par" : "ímpar")} de letras");
        }
    }
}

See running on .NETFiddle . And in CodingGround .

I have a modernized, organized and cleaned in the code. I also put it on Github for future reference .

You did not have to ask for a number to know if it was even, you had to take the size of the word to see if it is even or odd.

    
10.01.2017 / 13:42
1

I think this would be it:

namespace Impar_ou_parr { 
class Program { 
static void Main(string[] args) { 
string Palavra;

        Console.WriteLine("Digite uma Palavra: ");

        Palavra = Console.ReadLine();
        int x;
        x = Palavra.Length;
      Console.WriteLine("Sua palavra tem " + x + " letras!");


        if (x % 2 == 0)
        {
            Console.WriteLine("Sua palavra tem um numero par de letras");
        }
        else
        {
            Console.WriteLine("Sua palavra tem um numero impar de letras");
        }
        Console.ReadLine();
    }
}
}
    
10.01.2017 / 13:39
1
namespace Impar_ou_parr { class Program { static void Main(string[] args) { string NumLetras;

    Console.WriteLine("Digite uma Palavra: ");

    NumLetras = Console.ReadLine();
    int letrasTotal = NumLetras.Lenght;
  Console.WriteLine("Sua palavra tem " + letrasTotal + " letras!");


    if (letrasTotal % 2 == 0)
    {
        Console.WriteLine("Sua palavra tem um numero par de letras");
    }
    else
    {
        Console.WriteLine("Sua palavra tem um numero impar de letras");
    }
    Console.ReadLine();
}
    
10.01.2017 / 13:36
0

Try to do this:

static void Main(string[] args)
{
    string NumLetras;
    Console.WriteLine("Digite uma Palavra: ");
    NumLetras = Console.ReadLine();
    Console.WriteLine("Sua palavrra tem " + NumLetras.Length + " letras!");

    int x;
    int.TryParse(NumLetras.Length.ToString(),out x);
    if (x % 2 == 0)
    {
        Console.WriteLine("Sua palavra tem um numero par de letras");
    }
    else
    {
        Console.WriteLine("Sua palavra tem um numero impar de letras");
    }
    Console.ReadLine();
}
    
10.01.2017 / 13:47