Considere o seguinte programa escrito em Linguagem C: #include <stdio.h>main(){int i,j;for (i=1; i<=10; i++){ for (j=1; j<=i; j++) printf(“%d”,i); printf(“\n”); }} Sobre este programa, analise as seguintes sentenças: I. A instrução i++ é equivalente a i = i +1.II. O laço interno não apresenta um número de iterações fixas, pois depende do valor da variável de controle do laço externo.III. O programa imprime 10 linhas na tela.IV. A n-ésima linha apresenta os números 1 2 ... n.Agora assinale a alternativa que apresenta a resposta correta.Escolha uma:a. Apenas a afirmativa IV está correta.b. Apenas as afirmativas II e III estão corretas.c. Apenas as afirmativas I, II e IV estão corretas.d. Apenas as afirmativas I e III estão corretas.e. As afirmativas I, II, III e IV estão corretas.
Soluções para a tarefa
Olá.
Vamos analisar individualmente cada proposição a fim de entender melhor as respostas.
I. A instrução i++ é equivalente a i = i +1
Correto, uma vez que ao escrever i++ tem - se por objetivo incrementar uma unidade a variável em questão, com isso, a instrução i = i =1 surtiria o mesmo efeito.
II. O laço interno não apresenta um número de iterações fixas, pois depende do valor da variável de controle do laço externo.
Correto, é exatamente isso que observamos o que trata - se uma variável dependente. Dessa forma, o valor de 'i' é coletado do usuário que por consequência interfere nos laços de repetição.
III. O programa imprime 10 linhas na tela.
Correto, é possível ver isso no primeiro laço de repetição onde temos for (i=1; i<=10; i++).
IV. A n-ésima linha apresenta os números 1 2
Correto, pois ao imprimir os resultados na tela esses são um dos valores estabelecidos pelos laços de repetição.
Logo, as afirmativas I, II, III e IV estão corretas.
Bons estudos!