Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Dúvida no Ex. 1 da Aula 5 - Mão na Massa - C#

Boa tarde!

Galera eu entendi a explicação quanto ao operador módulo (%) que em outras linguagens aparece como MOD.

O que fiquei em dúvida foi quanto ao enunciado do exercício, segue:

"Com isso em mente, escreva primeiro o código que verifica se o número 15 é divisível por 3 ou por 4. Agora adapte o programa para imprimir todos os números entre 0 e 30 que são divisíveis por 3 ou 4."

A resolução segundo o site ficou da seguinte forma:

for (int i = 0; i <= 30; i++) { if (i % 3 == 0 || i % 4 == 0) { MessageBox.Show("numero = " + i); } }

Minha dúvida é: - Em qual momento esta sendo verificado a divisão por 15 se aqui não foi feito menção nenhuma?

Grato.

5 respostas
solução!

Bom dia Marcelo,

a variável i começar com o valor 0 dentro da estrutura de repetição for, essa estrutura irá repetir até que a variável i, ou seja o seu conteúdo, seja menor ou igual a 30.

Toda vez que o for é repetido a variável i recebe o conteúdo dela + 1, então em um certo momento dofor a variável i valerá 15.

O operador modulo (%)retorna o resto da divisão de um valor por outro, se o resto for 0 sabemos que o dado numero é divisível perfeitamente pelo segundo.

Att,

Entendi Ramon, na verdade então ele pega apenas em determinado momento o conteúdo como sendo o 15, e não que o programa deva fazer direto a verificação, certo?

Grato.

Do jeito que está o bloco de código que você postou Marcelo , a checagem irá ser feita toda vez.

Se o conteúdo de i é divisível por 3 ou por 4 e imprime na tela se for verdadeiro , de novo e de novo e de novo até que i seja menor ou igual a 30.

:)

Eu achei melhor por fazer assim já que gostaria de imprimir os valores divisíveis por 3 e por 4 separadamente.

 string linha3 = "";
            string linha4 = "";

            for(int i = 1; i <= 30; i++)
            {
                if (i % 3 == 0)
                {
                    linha3 += " " + i;
                }else if (i % 4 == 0)
                {
                    linha4 += " " + i;
                }
            }
            MessageBox.Show("Números Divisíveis por 3: " + linha3 + "\nNúmeros divisíveis por 4: " + linha4);

Assim ele devolve só uma caixa de mensagem dizendo os números divisíveis por 3 e por 4, pra não ficar mostrando várias caixas de mensagens de uma vez.

Marcelo, apesar de estar como solucionado, segue outra resposta.

O lance é no entendimento... o exercício pede duas coisas, a primeira é para validar se o número 15 é divisível por 3 ou por 4. Nesse caso temos um valor absoluto, 15.

Já na segunda parte é que entra o loop de 0 a 30 conforme os amigos responderam muitíssimo bem anteriormente.

Abraços e sucesso!