none
ajuda exercicio RRS feed

  • Pergunta

  • Bom dia!

    Não estou conseguindo, pois está dando um erro nas variaveis n1,n2,n3...n6 e também maior.

    alguem pode me ajudar com esse problema.

    #region

    "Entrada de Dados"

     

    private void btVerifica_Click(object sender, EventArgs e)

    {

     

    try

    {

     

    int n1 = int.Parse(txtn1.Text);

     

    int n2 = int.Parse(txtn2.Text);

     

    int n3 = int.Parse(txtn3.Text);

     

    int n4 = int.Parse(txtn4.Text);

     

    int n5 = int.Parse(txtn5.Text);

     

    int n6 = int.Parse(txtn6.Text);

    Testar();

    lblResultado.Text =

    "O Maior Numero e " + maior.ToString();

    }

     

    catch (Exception erro)

    {

     

    MessageBox.Show(erro.Message, "**** ERRO ****",

     

    MessageBoxButtons.OK,

     

    MessageBoxIcon.Error);

    Cancelar();

    }

    }

    #endregion

    #region

    "Procedimento Testar"

     

    public void Testar()

    {

     

    if (n1 > n2 && n1 > n3 && n1 > n4 && n1 > n5 && n1 > n6)

    {

    maior = n1;

    }

     

    else if (n2 > n1 && n2 > n3 && n2 > n4 && n2 > n5 && n1 > n6)

    {

    maior = n2;

    }

     

    else if (n3 > n1 && n3 > n2 && n3 > n4 && n3 > n5 && n3 > n6)

    {

    maior = n3;

    }

     

    else if (n4 > n1 && n4 > n2 && n4 > n3 && n4 > n5 && n4 > n6)

    {

    maior = n4;

    }

     

    else if (n5 > n1 && n5 > n2 && n5 > n3 && n5 > n4 && n5 > n6)

    {

    maior = n5;

    }

     

    else if (n6 > n1 && n6 > n2 && n6 > n3 && n6 > n4 && n6 > n5)

    {

    maior = n6;

    }

    }

    #endregion

     

    segunda-feira, 15 de novembro de 2010 14:22

Respostas

  • Luis,

    No seu caso, como você já está declarando as variáveis a nivel de classe, você não precisa declará-las novamente dentro do seu bloco try-catch... É só utilizar as que já estão declaradas... Mas, de qualquer forma, sugiro que você dê uma estudada no exemplo que postei anteriormente, porque fica muito mais simples do que do jeito que você está fazendo...

    int n1 = 0, n2 = 0, n3 = 0, n4 = 0, n5 = 0, n6 = 0, maior = 0;
    private void btVerifica_Click(object sender, EventArgs e)
    {
     try
     {
     n1 = int.Parse(txtn1.Text);
     n2 = int.Parse(txtn2.Text);
     n3 = int.Parse(txtn3.Text);
     n4 = int.Parse(txtn4.Text);
     n5 = int.Parse(txtn5.Text);
     n6 = int.Parse(txtn6.Text);
     maior = 0;
     Testar();
     lblResultado.Text = "O Maior Numero e " + maior.ToString();
     }
     catch (Exception erro)
     {
     MessageBox.Show(erro.Message, "**** ERRO ****", 
     MessageBoxButtons.OK,
     MessageBoxIcon.Error);
     Cancelar();
     }
    }
    
    public void Testar()
    {
     if (n1 > n2 && n1 > n3 && n1 > n4 && n1 > n5 && n1 > n6)
     {
     maior = n1;
     }
     else if (n2 > n1 && n2 > n3 && n2 > n4 && n2 > n5 && n1 > n6)
     {
     maior = n2;
     }
     else if (n3 > n1 && n3 > n2 && n3 > n4 && n3 > n5 && n3 > n6)
     {
     maior = n3;
     }
     else if (n4 > n1 && n4 > n2 && n4 > n3 && n4 > n5 && n4 > n6)
     {
     maior = n4;
     }
     else if (n5 > n1 && n5 > n2 && n5 > n3 && n5 > n4 && n5 > n6)
     {
     maior = n5;
     }
     else if (n6 > n1 && n6 > n2 && n6 > n3 && n6 > n4 && n6 > n5)
     {
     maior = n6;
     }
    }
    

    André Alves de Lima
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    terça-feira, 16 de novembro de 2010 11:39
    Moderador
  • Luis,

    Então... No seu primeiro post, o problema era que você estava declarando as variáveis dentro do seu bloco try-catch e estava tentando utilizá-las em outro método... Como de dentro do método Testar você não tinha acesso às variáveis, você estava recebendo um erro de compilação...

    Depois, você incluiu a criação das variáveis a nível de classe, o que fez com que o erro de compilação não existisse mais... Porém, você manteve as declarações das variáveis dentro do seu try-catch, ou seja, duplicou o local onde as variáveis estavam sendo declaradas... Dessa forma, as variáveis declaradas a nivel de classe não estavam sendo preenchidas, o que fazia com que o método Testar não tivesse efeito algum...

    Ao remover a declaração de dentro do bloco try-catch, mantendo somente a declaração a nível de classe e as associações dos valores dentro do bloco try-catch, o programa executou com sucesso...

    Entendeu?


    André Alves de Lima
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    terça-feira, 16 de novembro de 2010 18:31
    Moderador
  • @Luis

    Faz como eu disse pra fazer, nao altere nada. Voce que nao esta a saber entender. O exemplo do andre e o meu esta funcionar perfetimante, eu testei, voce e que esta a fazer mal. 

    Por isso segue os passo que eu dei.

    Voce nao esta a alimentar o seu void Testar(). Nao existe valor.

    int n1 = 0, n2 = 0, n3 = 0, n4 = 0, n5 = 0, n6 = 0, maior = 0;

    Altera o seu Testar e vai ficar assim:

    1- passo
     private void Testa(int um, int dois, int tres, int quatro, int cinco, int six)
        {
          int n1 = um, n2 = dois, n3 = tres, n4 = quatro, n5 = cinco, n6 = six;
          if (n1 > n2 && n1 > n3 && n1 > n4 && n1 > n5 && n1 > n6)
          {
            maior = n1;
          }
          else if (n2 > n1 && n2 > n3 && n2 > n4 && n2 > n5 && n1 > n6)
          {
            maior = n2;
          }
          else if (n3 > n1 && n3 > n2 && n3 > n4 && n3 > n5 && n3 > n6)
          {
            maior = n3;
          }
          else if (n4 > n1 && n4 > n2 && n4 > n3 && n4 > n5 && n4 > n6)
          {
            maior = n4;
          }
          else if (n5 > n1 && n5 > n2 && n5 > n3 && n5 > n4 && n5 > n6)
          {
            maior = n5;
          }
          else if (n6 > n1 && n6 > n2 && n6 > n3 && n6 > n4 && n6 > n5)
          {
            maior = n6;
          }
        }
        # endregion 
    

    2- Passo:
     no seu botao que faz o teste altera assim:
    private void btVerifica_Click(object sender, EventArgs e)
      {
       try
       {
         Testa(int.Parse(textBox1.Text),int.Parse(textBox2.Text), int.Parse(textBox3.Text), int.Parse(textBox4.Text), int.Parse(textBox5.Text), int.Parse(textBox5.Text));
        lblResultado.Text = "O Maior Numero e " + maior.ToString();
       }
       catch (Exception erro)
       {
        MessageBox.Show(erro.Message, "**** ERRO ****", 
        MessageBoxButtons.OK,
        MessageBoxIcon.Error);
        Cancelar();
       }
      }
    3- Passo.

    No to do teu form declara o maior assim:

    int maior = 0;


    Just Be Humble Malange!
    quarta-feira, 17 de novembro de 2010 16:04
    Moderador
  • Luis,

    Você está declarando as variáveis dentro do evento btVerifica_Click()... Por isso, elas não estão acessíveis no método Testar()... Para conseguir acessá-las no método Testar(), você deve declarar as variáveis no nível da classe (fora do btVerifica_Click) ou passá-las ao método Testar através de parâmetros...


    André Alves de Lima
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    segunda-feira, 15 de novembro de 2010 15:23
    Moderador
  • Luis,

    Você conhece listas genéricas? Se você utilizar um List<int> para armazenar os números digitados, pode utilizar o Max para verificar o maior número da coleção... Ficaria algo como:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    
    namespace WindowsFormsApplication1
    {
      public partial class Form1 : Form
      {
        public Form1()
        {
          InitializeComponent();
        }
    
        private void button1_Click(object sender, EventArgs e)
        {
          List<int> numeros = new List<int>();
    
          numeros.Add(int.Parse(textBox1.Text));
          numeros.Add(int.Parse(textBox2.Text));
          numeros.Add(int.Parse(textBox3.Text));
          numeros.Add(int.Parse(textBox4.Text));
          numeros.Add(int.Parse(textBox5.Text));
          numeros.Add(int.Parse(textBox6.Text));
    
          MessageBox.Show(string.Format("Maior número = {0}", numeros.Max()));
        }
      }
    }
    
    

    André Alves de Lima
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    segunda-feira, 15 de novembro de 2010 23:18
    Moderador
  • O exemplo do Andre, faz exactamente o que queres. Para mais informacao veja esta dica da MS:

    http://msdn.microsoft.com/pt-br/library/bb292667.aspx


    Just Be Humble Malange!
    terça-feira, 16 de novembro de 2010 00:39
    Moderador
  • Aqui vai um exemplo:

     # region Testar Maior Valor
    
        private void Testa(int um, int dois, int tres, int quatro, int cinco, int six)
        {
          int n1 = um, n2 = dois, n3 = tres, n4 = quatro, n5 = cinco, n6 = six;
          if (n1 > n2 && n1 > n3 && n1 > n4 && n1 > n5 && n1 > n6)
          {
            maior = n1;
    
          }
    
          else if (n2 > n1 && n2 > n3 && n2 > n4 && n2 > n5 && n1 > n6)
          {
    
            maior = n2;
    
          }
    
          else if (n3 > n1 && n3 > n2 && n3 > n4 && n3 > n5 && n3 > n6)
          {
            maior = n3;
          }
          else if (n4 > n1 && n4 > n2 && n4 > n3 && n4 > n5 && n4 > n6)
          {
            maior = n4;
    
          }
    
          else if (n5 > n1 && n5 > n2 && n5 > n3 && n5 > n4 && n5 > n6)
          {
            maior = n5;
    
          }
    
          else if (n6 > n1 && n6 > n2 && n6 > n3 && n6 > n4 && n6 > n5)
          {
    
            maior = n6;
    
          }
    
        }
        # endregion 
    

    Agora no Seu botao coloca este codigo:

     private void button6_Click(object sender, EventArgs e)

           {

               Testa(1, 2, 30, 5, 9, 29);

              MessageBox.Show(maior.ToString());

    }


    Just Be Humble Malange!
    terça-feira, 16 de novembro de 2010 22:48
    Moderador

Todas as Respostas

  • Luis,

    Você está declarando as variáveis dentro do evento btVerifica_Click()... Por isso, elas não estão acessíveis no método Testar()... Para conseguir acessá-las no método Testar(), você deve declarar as variáveis no nível da classe (fora do btVerifica_Click) ou passá-las ao método Testar através de parâmetros...


    André Alves de Lima
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    segunda-feira, 15 de novembro de 2010 15:23
    Moderador
  • obrigado pela dica, mas o resultado não está parecendo.

    exemplo: lblResultado.Text="O numero Maior é "+maior.ToString();

    e porque a rotina do Enter não funciona: quando eu coloco um numero e digito enter e não passa para o outro campo.

    #region

    "Rotina da Tecla <ENTER>"

     

    private void txtn1_KeyDown (object sender, KeyEventArgs e)

    {

     

         if (e.KeyCode == Keys.Return)

         {

            txtn2.Focus();

         }

    }

     

    private void txtn2_KeyDown(object sender, KeyEventArgs e)

    {

     

         if (e.KeyCode == Keys.Return)

         {

             txtn3.Focus();

         }

    }

     

    segunda-feira, 15 de novembro de 2010 16:14
  • Luis,

    Nossa, mas o código que você postou inicialmente não tinha nada disso... O problema inicial foi resolvido?

    Por favor, explique detalhadamente o que você está querendo fazer......


    André Alves de Lima
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    segunda-feira, 15 de novembro de 2010 18:14
    Moderador
  • Foi Resolvido,mas não estou conseguindo o resultado, é saber o maior numero digitado.

    int n1 = 0, n2 = 0, n3 = 0, n4 = 0, n5 = 0, n6 = 0, maior = 0;
    private void btVerifica_Click(object sender, EventArgs e)
    {
     try
     {
      int n1 = int.Parse(txtn1.Text);
      int n2 = int.Parse(txtn2.Text);
      int n3 = int.Parse(txtn3.Text);
      int n4 = int.Parse(txtn4.Text);
      int n5 = int.Parse(txtn5.Text);
      int n6 = int.Parse(txtn6.Text);
      int maior = 0;
      Testar();
      lblResultado.Text = "O Maior Numero e " + maior.ToString();
     }
     catch (Exception erro)
     {
      MessageBox.Show(erro.Message, "**** ERRO ****", 
      MessageBoxButtons.OK,
      MessageBoxIcon.Error);
      Cancelar();
     }
    }
    #endregion
    #region "Procedimento Testar"
    public void Testar()
     {
      if (n1 > n2 && n1 > n3 && n1 > n4 && n1 > n5 && n1 > n6)
     {
      maior = n1;
     }
      else if (n2 > n1 && n2 > n3 && n2 > n4 && n2 > n5 && n1 > n6)
     {
      maior = n2;
     }
      else if (n3 > n1 && n3 > n2 && n3 > n4 && n3 > n5 && n3 > n6)
     {
      maior = n3;
     }
      else if (n4 > n1 && n4 > n2 && n4 > n3 && n4 > n5 && n4 > n6)
     {
      maior = n4;
     }
      else if (n5 > n1 && n5 > n2 && n5 > n3 && n5 > n4 && n5 > n6)
     {
      maior = n5;
     }
      else if (n6 > n1 && n6 > n2 && n6 > n3 && n6 > n4 && n6 > n5)
     {
      maior = n6;
     }
    }

     

     

    segunda-feira, 15 de novembro de 2010 18:25
  • Luis,

    Você conhece listas genéricas? Se você utilizar um List<int> para armazenar os números digitados, pode utilizar o Max para verificar o maior número da coleção... Ficaria algo como:

    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    
    namespace WindowsFormsApplication1
    {
      public partial class Form1 : Form
      {
        public Form1()
        {
          InitializeComponent();
        }
    
        private void button1_Click(object sender, EventArgs e)
        {
          List<int> numeros = new List<int>();
    
          numeros.Add(int.Parse(textBox1.Text));
          numeros.Add(int.Parse(textBox2.Text));
          numeros.Add(int.Parse(textBox3.Text));
          numeros.Add(int.Parse(textBox4.Text));
          numeros.Add(int.Parse(textBox5.Text));
          numeros.Add(int.Parse(textBox6.Text));
    
          MessageBox.Show(string.Format("Maior número = {0}", numeros.Max()));
        }
      }
    }
    
    

    André Alves de Lima
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    segunda-feira, 15 de novembro de 2010 23:18
    Moderador
  • O exemplo do Andre, faz exactamente o que queres. Para mais informacao veja esta dica da MS:

    http://msdn.microsoft.com/pt-br/library/bb292667.aspx


    Just Be Humble Malange!
    terça-feira, 16 de novembro de 2010 00:39
    Moderador
  • Se você Verifica o exemplo acima que coloquei pois não estou conseguindo mostrar no lblResultado.Text="O Maior Numero é " + MAIOR.TOSTRING();

    int=n1=0;n2=0,n3=0,maior=0;

    int n1=int.parse(txtn1.text), n2=int.parse(txtn2.text), n3.parse(txtn3.txt), maior=0???

    testar();

    lblResultado.Text="O Maior Numero é " + MAIOR.TOSTRING(); ??? (não aparece a vairavel maior)

    public

     

         if (n1 > n2 && n1 > n3) {maior=n1;}

         else if (n2 > n1 && n2 > n3) {maior=n2;}

         else if (n3 > n1 && n3 > n2) {maior=n3;}

     

    void Testar()
    terça-feira, 16 de novembro de 2010 01:49
  • Verifica esse exemplo é o mesmo, não estou conseguindo mostrar a variavel MAIOR no lblResultado.Text="O maior numero é " + maior.Tostring();????

    int n1 = 0, n2 = 0, n3 = 0, maior = 0;

    int n1 = int.Parse(txtn1.Text);
    int n2 = int.Parse(txtn2.Text);
    int n3 = int.Parse(txtn3.Text);
    int maior = 0;


    Testar();
    lblResultado.Text = "O Maior Numero e " + maior.ToString();

    public testar()

    if (n1>n2 && n1>n3)
    maior=n1
    else if (n2>n1 && n2>n3)
    maior=n2
    else if (n3>n1 && n3>n2)
    maior=n3

    terça-feira, 16 de novembro de 2010 02:07
  • Luis,

    No seu caso, como você já está declarando as variáveis a nivel de classe, você não precisa declará-las novamente dentro do seu bloco try-catch... É só utilizar as que já estão declaradas... Mas, de qualquer forma, sugiro que você dê uma estudada no exemplo que postei anteriormente, porque fica muito mais simples do que do jeito que você está fazendo...

    int n1 = 0, n2 = 0, n3 = 0, n4 = 0, n5 = 0, n6 = 0, maior = 0;
    private void btVerifica_Click(object sender, EventArgs e)
    {
     try
     {
     n1 = int.Parse(txtn1.Text);
     n2 = int.Parse(txtn2.Text);
     n3 = int.Parse(txtn3.Text);
     n4 = int.Parse(txtn4.Text);
     n5 = int.Parse(txtn5.Text);
     n6 = int.Parse(txtn6.Text);
     maior = 0;
     Testar();
     lblResultado.Text = "O Maior Numero e " + maior.ToString();
     }
     catch (Exception erro)
     {
     MessageBox.Show(erro.Message, "**** ERRO ****", 
     MessageBoxButtons.OK,
     MessageBoxIcon.Error);
     Cancelar();
     }
    }
    
    public void Testar()
    {
     if (n1 > n2 && n1 > n3 && n1 > n4 && n1 > n5 && n1 > n6)
     {
     maior = n1;
     }
     else if (n2 > n1 && n2 > n3 && n2 > n4 && n2 > n5 && n1 > n6)
     {
     maior = n2;
     }
     else if (n3 > n1 && n3 > n2 && n3 > n4 && n3 > n5 && n3 > n6)
     {
     maior = n3;
     }
     else if (n4 > n1 && n4 > n2 && n4 > n3 && n4 > n5 && n4 > n6)
     {
     maior = n4;
     }
     else if (n5 > n1 && n5 > n2 && n5 > n3 && n5 > n4 && n5 > n6)
     {
     maior = n5;
     }
     else if (n6 > n1 && n6 > n2 && n6 > n3 && n6 > n4 && n6 > n5)
     {
     maior = n6;
     }
    }
    

    André Alves de Lima
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    terça-feira, 16 de novembro de 2010 11:39
    Moderador
  • Obrigado deu certo o exemplo que você passou, mas como resolver esse exercicio porque não quer aparece o resultado.

    terça-feira, 16 de novembro de 2010 17:46
  • Luis,

    Como ficou o seu código? Testei aqui e funcionou perfeitamente...


    André Alves de Lima
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    terça-feira, 16 de novembro de 2010 17:51
    Moderador
  • Testei e funcionou o codigo, obrigado, mas continuo querendo saber porque não deu certo o resultado daquele exercicio.

    terça-feira, 16 de novembro de 2010 18:04
  • Luis,

    Então... No seu primeiro post, o problema era que você estava declarando as variáveis dentro do seu bloco try-catch e estava tentando utilizá-las em outro método... Como de dentro do método Testar você não tinha acesso às variáveis, você estava recebendo um erro de compilação...

    Depois, você incluiu a criação das variáveis a nível de classe, o que fez com que o erro de compilação não existisse mais... Porém, você manteve as declarações das variáveis dentro do seu try-catch, ou seja, duplicou o local onde as variáveis estavam sendo declaradas... Dessa forma, as variáveis declaradas a nivel de classe não estavam sendo preenchidas, o que fazia com que o método Testar não tivesse efeito algum...

    Ao remover a declaração de dentro do bloco try-catch, mantendo somente a declaração a nível de classe e as associações dos valores dentro do bloco try-catch, o programa executou com sucesso...

    Entendeu?


    André Alves de Lima
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    terça-feira, 16 de novembro de 2010 18:31
    Moderador
  • Eu já estou chato mas fiz o que você mandou removi a declaração de dentro do bloco try-catch deixando somente as de nivel de classe mas o resultado continua o mesmo sem resposta.

    int

    n1 = 0, n2 = 0, n3 = 0, n4 = 0, n5 = 0, n6 = 0, maior = 0;

     

     

    private void btVerifica_Click(object sender, EventArgs e)

    {

     

    try

    }

     

    Testar();

    lblResultado.Text =

    "O Maior Numero e " + maior.ToString();

    }

     

    catch (Exception erro)

    {

     

    MessageBox.Show(erro.Message, "**** ERRO ****",

     

    MessageBoxButtons.OK,

     

    MessageBoxIcon.Error);

    Cancelar();

    }

    }

    #endregion

    #region

    "Procedimento Testar"

     

    public void Testar()

    {

     

    if (n1 > n2 && n1 > n3 && n1 > n4 && n1 > n5 && n1 > n6)

    {

    maior = n1;

    }

     

    else if (n2 > n1 && n2 > n3 && n2 > n4 && n2 > n5 && n1 > n6)

    {

    maior = n2;

    }

     

    else if (n3 > n1 && n3 > n2 && n3 > n4 && n3 > n5 && n3 > n6)

    {

    maior = n3;

    }

     

    else if (n4 > n1 && n4 > n2 && n4 > n3 && n4 > n5 && n4 > n6)

    {

    maior = n4;

    }

     

    else if (n5 > n1 && n5 > n2 && n5 > n3 && n5 > n4 && n5 > n6)

    {

    maior = n5;

    }

     

    else if (n6 > n1 && n6 > n2 && n6 > n3 && n6 > n4 && n6 > n5)

    {

    maior = n6;

    }

    terça-feira, 16 de novembro de 2010 22:06
  • Como voce pega os valor int que estao no n1, n2, n3, n4, n5, n6?

    Nao vejo nenhum codigo que passa ifnormacao a estes int. Apenas vejo a compracao ou vereficar qual deles e o mairo.

     


    Just Be Humble Malange!
    terça-feira, 16 de novembro de 2010 22:33
    Moderador
  • Aqui vai um exemplo:

     # region Testar Maior Valor
    
        private void Testa(int um, int dois, int tres, int quatro, int cinco, int six)
        {
          int n1 = um, n2 = dois, n3 = tres, n4 = quatro, n5 = cinco, n6 = six;
          if (n1 > n2 && n1 > n3 && n1 > n4 && n1 > n5 && n1 > n6)
          {
            maior = n1;
    
          }
    
          else if (n2 > n1 && n2 > n3 && n2 > n4 && n2 > n5 && n1 > n6)
          {
    
            maior = n2;
    
          }
    
          else if (n3 > n1 && n3 > n2 && n3 > n4 && n3 > n5 && n3 > n6)
          {
            maior = n3;
          }
          else if (n4 > n1 && n4 > n2 && n4 > n3 && n4 > n5 && n4 > n6)
          {
            maior = n4;
    
          }
    
          else if (n5 > n1 && n5 > n2 && n5 > n3 && n5 > n4 && n5 > n6)
          {
            maior = n5;
    
          }
    
          else if (n6 > n1 && n6 > n2 && n6 > n3 && n6 > n4 && n6 > n5)
          {
    
            maior = n6;
    
          }
    
        }
        # endregion 
    

    Agora no Seu botao coloca este codigo:

     private void button6_Click(object sender, EventArgs e)

           {

               Testa(1, 2, 30, 5, 9, 29);

              MessageBox.Show(maior.ToString());

    }


    Just Be Humble Malange!
    terça-feira, 16 de novembro de 2010 22:48
    Moderador
  • Ai está todo meu projeto e não consigo o resultado.
    
    using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Windows.Forms;
    
    namespace MaiorMenor6CSharp
    {
      public partial class FrmMaiorde6 : Form
      {
        public FrmMaiorde6()
        {
          InitializeComponent();
        }
    
        #region "Entrada de Dados"
        int n1 = 0, n2 = 0, n3 = 0, n4 = 0, n5 = 0, n6 = 0, maior = 0;
            
        private void btVerifica_Click(object sender, EventArgs e)
        {
          try
          {
            /*int n1 = int.Parse(txtn1.Text);
            int n2 = int.Parse(txtn2.Text);
            int n3 = int.Parse(txtn3.Text);
            int n4 = int.Parse(txtn4.Text);
            int n5 = int.Parse(txtn5.Text);
            int n6 = int.Parse(txtn6.Text);
            int maior = 0;
            */
            Testar();
            lblResultado.Text = "O Maior Numero e " + maior.ToString();
          }
          catch (Exception erro)
          {
            MessageBox.Show(erro.Message, "**** ERRO ****", 
            MessageBoxButtons.OK,
            MessageBoxIcon.Error);
            Cancelar();
          }
        }
        #endregion
        #region "Procedimento Testar"
        public void Testar()
        {
          if (n1 > n2 && n1 > n3 && n1 > n4 && n1 > n5 && n1 > n6)
          {
            maior = n1;
          }
          else if (n2 > n1 && n2 > n3 && n2 > n4 && n2 > n5 && n1 > n6)
          {
            maior = n2;
          }
          else if (n3 > n1 && n3 > n2 && n3 > n4 && n3 > n5 && n3 > n6)
          {
            maior = n3;
          }
          else if (n4 > n1 && n4 > n2 && n4 > n3 && n4 > n5 && n4 > n6)
          {
            maior = n4;
          }
          else if (n5 > n1 && n5 > n2 && n5 > n3 && n5 > n4 && n5 > n6)
          {
            maior = n5;
          }
          else if (n6 > n1 && n6 > n2 && n6 > n3 && n6 > n4 && n6 > n5)
          {
            maior = n6;
          }
        }
        #endregion
        #region "Procedimento Cancelar"
        public void Cancelar()
        {
          txtn1.Clear();
          txtn2.Clear();
          txtn3.Clear();
          txtn4.Clear();
          txtn5.Clear();
          txtn6.Clear();
          lblResultado.Text = " ";
          txtn1.Focus();
        }
        #endregion
        #region "Rotina da Tecla <ENTER>"
        private void txtn1_KeyDown (object sender, KeyEventArgs e)
        {
          if (e.KeyCode == Keys.Return)
          {
            txtn2.Focus();
          }
        }
        private void txtn2_KeyDown(object sender, KeyEventArgs e)
        {
          if (e.KeyCode == Keys.Return)
          {
            txtn3.Focus();
          }
        }
        private void txtn3_KeyDown(object sender, KeyEventArgs e)
        {
          if (e.KeyCode == Keys.Return)
          {
            txtn4.Focus();
          }
        }
        private void txtn4_KeyDown(object sender, KeyEventArgs e)
        {
          if (e.KeyCode == Keys.Return)
          {
            txtn5.Focus();
          }
        }
        private void txtn5_KeyDown(object sender, KeyEventArgs e)
        {
          if (e.KeyCode == Keys.Return)
          {
            txtn6.Focus();
          }
        }
        #endregion
    
        private void btCancela_Click(object sender, EventArgs e)
        {
          Cancelar();
        }
    
        private void btSair_Click(object sender, EventArgs e)
        {
          Saida final = new Saida();
          final.fim();
        }
      }
    }
    
    
    
    terça-feira, 16 de novembro de 2010 23:39
  • @Luis

    Faz como eu disse pra fazer, nao altere nada. Voce que nao esta a saber entender. O exemplo do andre e o meu esta funcionar perfetimante, eu testei, voce e que esta a fazer mal. 

    Por isso segue os passo que eu dei.

    Voce nao esta a alimentar o seu void Testar(). Nao existe valor.

    int n1 = 0, n2 = 0, n3 = 0, n4 = 0, n5 = 0, n6 = 0, maior = 0;

    Altera o seu Testar e vai ficar assim:

    1- passo
     private void Testa(int um, int dois, int tres, int quatro, int cinco, int six)
        {
          int n1 = um, n2 = dois, n3 = tres, n4 = quatro, n5 = cinco, n6 = six;
          if (n1 > n2 && n1 > n3 && n1 > n4 && n1 > n5 && n1 > n6)
          {
            maior = n1;
          }
          else if (n2 > n1 && n2 > n3 && n2 > n4 && n2 > n5 && n1 > n6)
          {
            maior = n2;
          }
          else if (n3 > n1 && n3 > n2 && n3 > n4 && n3 > n5 && n3 > n6)
          {
            maior = n3;
          }
          else if (n4 > n1 && n4 > n2 && n4 > n3 && n4 > n5 && n4 > n6)
          {
            maior = n4;
          }
          else if (n5 > n1 && n5 > n2 && n5 > n3 && n5 > n4 && n5 > n6)
          {
            maior = n5;
          }
          else if (n6 > n1 && n6 > n2 && n6 > n3 && n6 > n4 && n6 > n5)
          {
            maior = n6;
          }
        }
        # endregion 
    

    2- Passo:
     no seu botao que faz o teste altera assim:
    private void btVerifica_Click(object sender, EventArgs e)
      {
       try
       {
         Testa(int.Parse(textBox1.Text),int.Parse(textBox2.Text), int.Parse(textBox3.Text), int.Parse(textBox4.Text), int.Parse(textBox5.Text), int.Parse(textBox5.Text));
        lblResultado.Text = "O Maior Numero e " + maior.ToString();
       }
       catch (Exception erro)
       {
        MessageBox.Show(erro.Message, "**** ERRO ****", 
        MessageBoxButtons.OK,
        MessageBoxIcon.Error);
        Cancelar();
       }
      }
    3- Passo.

    No to do teu form declara o maior assim:

    int maior = 0;


    Just Be Humble Malange!
    quarta-feira, 17 de novembro de 2010 16:04
    Moderador
  •    
        int n1 = int.Parse(txtn1.Text);
        int n2 = int.Parse(txtn2.Text);
        int n3 = int.Parse(txtn3.Text);
        int n4 = int.Parse(txtn4.Text);
        int n5 = int.Parse(txtn5.Text);
        int n6 = int.Parse(txtn6.Text);
        int maior = 0;
        
    
    
    O meu problema é que estava declarando novamente o <strong>(int n1=int.Parse(txtn1.Text))</strong>; e a resposta do andré estava
    
    corretissima.
    
    obrigado pela atenção vocês são ótimos.
    
    valeu!!
    
    quinta-feira, 18 de novembro de 2010 10:49
  • Luis,

    Magina... Precisando é só postar (mas cria outra thread porque essa já ficou bem extensa!)...

    Bom trabalho / estudos por aí...


    André Alves de Lima
    Visite o meu site: http://www.andrealveslima.com.br
    Me siga no Twitter: @andrealveslima
    quinta-feira, 18 de novembro de 2010 10:51
    Moderador