aula 95

Exercício 24 | Descubra a relação entre as variáveis I e J e imprima a sequência correta

Bem vindo a aula 95 de nosso curso gratuito de programação com a linguagem C.

Na aula de hoje vamos continuar a resolução da nossa lista de exercícios. Contudo, para resolve-lo, você precisa descobrir a relação entre as variáveis I e J.

24) Você deve fazer um programa que apresente a sequência conforme o exemplo abaixo.
I=1 J=7
I=1 J=6
I=1 J=5
I=3 J=9
I=3 J=8
I=3 J=7
I=5 J=11
I=5 J=10
I=5 J=9

I=9 J=15
I=9 J=14
I=9 J=13

Para resolver este exercício precisamos literalmente praticar análise de dados (e olha que aqui temos poucos dados rsrs).

O primeiro detalhe importante a perceber é que o valor da variável I se repete 3 vezes enquanto o valor da variável J é decrementado também 3 vezes. Isso já levanta a suspeita de que teremos duas estruturas for aninhadas executando 3 vezes cada.

O que define o início da variável J? Essa resposta pode ser descoberta com uma continha simples, assim:
I=1 J=7 –> 7 – 1 = 6
I=1 J=6
I=1 J=5
I=3 J=9 –> 9 – 3 = 6
I=3 J=8
I=3 J=7
I=5 J=11 –> 11 – 5 = 6
I=5 J=10
I=5 J=9

I=9 J=15 –> 15 – 9 = 6
I=9 J=14
I=9 J=13

Assim, concluímos que a variável J é inicializada com a seguinte expressão: for(j = i + 6; ? ; j– )

Qual o ponto de parada da variável J? Para descobrir esta informação vamos fazer o mesmo que fizemos para descobrir sua condição de início, assim:
I=1 J=7
I=1 J=6
I=1 J=5 –> 5 – 1 = 4
I=3 J=9
I=3 J=8
I=3 J=7 –> 7 – 3 = 4
I=5 J=11
I=5 J=10
I=5 J=9 –> 9 – 5 = 4

I=9 J=15
I=9 J=14
I=9 J=13 –> 13 – 9 = 4

Assim, concluímos que a condição de parada para a variável J é: for(j = i + 6; j >= i + 4 ; j– )

#include <stdio.h>
#include <stdlib.h>

int main() {
    int i, j;

    for(i = 1; i <= 9; i += 2){
        for(j = 6 + i; j >= 4 + i; j--)
            printf("I = %d J = %d\n", i, j);
        printf("\n");
    }
}

Se você está aprendendo com este curso,:

  • Se inscreva no canal…
  • Pressione o sininho para ser notificado…
  • Deixe seu like (assim saberei que gostou, além de me incentivar a continuar)
  • Apresente o canal à seus amigos!

SÃO VOCÊS QUE FAZEM O CANAL CRESCER!

Valeu!!!

Deixe um comentário

vinte − dezenove =

Wagner Gaspar

Capixaba de São Gabriel da Palha, Espírito Santo. Bacharel em Ciência da Computação pela Universidade Federal do Amazonas e mestre em informática pela Universidade Federal do Espírito Santo.