Faça um programa que leia um número inteiro positivo
e imprima todos os números naturais de 0 até
em ordem decrescente.
Passo 1
O enunciado pede um programa que lê um inteiro positivo N e imprime todos os números naturais de 0 até N em ordem decrescente. O conteúdo principal aqui é estrutura de repetição (loop), mais especificamente um loop contado que vai de N até 0. Vamos usar um loop for decrescente, que é ideal quando sabemos de antemão o início, o fim e o passo.
Passo 2
Em C, primeiro a gente lê o valor de N usando scanf. Como o enunciado garante que N é inteiro e positivo, não precisamos validar sinais. Depois, criamos um loop for que inicializa o contador i com N, testa i >= 0 e decrementa i a cada iteração. Dentro do loop, imprimimos o valor de i seguido de uma quebra de linha. Por fim, encerramos o programa retornando 0 para o sistema operacional.
Passo 3
Esse algoritmo tem complexidade O(N) e memória O(1), já que só usamos uma variável extra para o contador.
Resposta
#include <stdio.h>
int main() {
int N;
scanf("%d", &N);
for (int i = N; i >= 0; i–) {
printf("%d\n", i);
}
return 0;
}
int N;
scanf("%d", &N);
for (int i = N; i >= 0; i–) {
printf("%d\n", i);
}
return 0;
}