none
Exercicio.. RRS feed

  • Pergunta

  • Bom dia Amigos. 

     Estou com um exercício aqui da faculdade queria saber se vocês pode me ajudar a resolver, e que sou novo e tenho minhas duvida.. O exercício é assim:

    Tenho que exibir  números entre 1 a 20. Beleza isso uso a vetor tranquilo, mais o que esta pegando é  que tenho que exibir os números múltiplo de 7, Mais ao invés de aparecer o numero tem que aparecer uma palavra.

    desde já agradeço.

     

    segunda-feira, 10 de junho de 2013 13:24

Respostas

  • R Z P

    quando você faz uma divisão utilizando % (MOD)

    você obtém como retorno o resto da divisão, por exemplo

    5 % 3 = 2

    por que 5 dividido por 3, dá 1 e SOBRA 2

    utilizando esse operador nas suas divisões você pode descobrir se um número é multiplo de outro caso o resultador for igual a 0

    por exemplo

    1 % 3 = 1

    2 % 3 = 2

    3 % 3 = 0

    4 % 3 = 1

    5 % 3 =2

    6 % 3 =0

    no seu caso um simples for resolve o seu problema, já que como são numero sequenciais de 1 a 20 você não precisa armazena-los em um vetor

     for (int i = 1; i <= 20; i++)
                {
                    var x = i % 7;

                    if (x == 0)
                    {
                        Console.WriteLine("Pacto");
                    }
                    else
                    {
                        Console.WriteLine(i);
                    }
                   
                }


    • Editado Felipe.Cesar segunda-feira, 10 de junho de 2013 18:30
    • Marcado como Resposta R.Z.P segunda-feira, 10 de junho de 2013 18:55
    segunda-feira, 10 de junho de 2013 18:29
  • é só modificar essa linha:

    MessageBox.Show(String.Format("Pacto {0}",numeros[i]))

    por essa:

    MessageBox.Show("Pacto");

    • Marcado como Resposta R.Z.P segunda-feira, 10 de junho de 2013 18:55
    segunda-feira, 10 de junho de 2013 18:04
  • Veja se te serve dessa maneira:

     int[] numeros = new int[20];
    
                for (int i = 0; i < 20; i++)
                {
    
                    numeros[i] = i;
    
                    if (numeros[i] % 7 == 0) MessageBox.Show(String.Format("Pacto {0}",numeros[i]));
    
                }
    Se ajudar marque como resposta.

    segunda-feira, 10 de junho de 2013 14:38

Todas as Respostas

  • Voce quer dizer ao inves de 7,14 vc tem que escrever SETE, QUATORZE???

    Entre 1 e 20 sao só esses dois... 

    Poderia nos dar mais detalhes do que vc precisa.

    Aqui tem uma rotina pronta de como escrever numero por extenso, mas creio que seja algo alem do trivial:

    http://ivanmeirelles.wordpress.com/2012/10/27/escrever-valores-por-extenso-em-c/

    Pergunte ao seu professor o que ele realmente quer, pois nao esta claro o objetivo do execicio, ainda mais se tratando de um curso basico (pelo menos é o que aparenta)

    Att


    William John Adam Trindade
    Analyste-programmeur
    ----------------------------------------------------------

    Sogi informatique ltée


    segunda-feira, 10 de junho de 2013 13:38
    Moderador
  • Olá amigo!

    Você pode pegar apenas o resto de uma divisão usando o operador '%', logo, se (x % 7 == 0)  vc tem exatamente  a situação que precisa para exibir a palavra que quiser.

    Espero ter ajudado!

    segunda-feira, 10 de junho de 2013 13:42
  • William a intensão é essa mesmo.

    Ao invés de parecer o numero 7 e 14, aparecer a palavra "Pacto".

    Vou dar uma olhada no link que vc me mando, ai qualquer duvida volto a falar com você..
    Mais desde já agradeço.

    segunda-feira, 10 de junho de 2013 13:47
  • Veja se te serve dessa maneira:

     int[] numeros = new int[20];
    
                for (int i = 0; i < 20; i++)
                {
    
                    numeros[i] = i;
    
                    if (numeros[i] % 7 == 0) MessageBox.Show(String.Format("Pacto {0}",numeros[i]));
    
                }
    Se ajudar marque como resposta.

    segunda-feira, 10 de junho de 2013 14:38
  • Cara seu código rodo legal. 

    Mais só que ele aparecer " Pacto 7 " e só quero que apareça o "Pacto".

    poderia me ajudar novamente.

    segunda-feira, 10 de junho de 2013 17:12
  • é só modificar essa linha:

    MessageBox.Show(String.Format("Pacto {0}",numeros[i]))

    por essa:

    MessageBox.Show("Pacto");

    • Marcado como Resposta R.Z.P segunda-feira, 10 de junho de 2013 18:55
    segunda-feira, 10 de junho de 2013 18:04
  • R Z P

    quando você faz uma divisão utilizando % (MOD)

    você obtém como retorno o resto da divisão, por exemplo

    5 % 3 = 2

    por que 5 dividido por 3, dá 1 e SOBRA 2

    utilizando esse operador nas suas divisões você pode descobrir se um número é multiplo de outro caso o resultador for igual a 0

    por exemplo

    1 % 3 = 1

    2 % 3 = 2

    3 % 3 = 0

    4 % 3 = 1

    5 % 3 =2

    6 % 3 =0

    no seu caso um simples for resolve o seu problema, já que como são numero sequenciais de 1 a 20 você não precisa armazena-los em um vetor

     for (int i = 1; i <= 20; i++)
                {
                    var x = i % 7;

                    if (x == 0)
                    {
                        Console.WriteLine("Pacto");
                    }
                    else
                    {
                        Console.WriteLine(i);
                    }
                   
                }


    • Editado Felipe.Cesar segunda-feira, 10 de junho de 2013 18:30
    • Marcado como Resposta R.Z.P segunda-feira, 10 de junho de 2013 18:55
    segunda-feira, 10 de junho de 2013 18:29
  • Obrigado deu Certo agora.....

    Obrigado mesmo.. 

    segunda-feira, 10 de junho de 2013 18:56