Você está aqui: C ::: Desafios e Lista de Exercícios Resolvidos ::: Laços de Repetição |
Dado um número inteiro positivo n, se n for par, seu código deverá dividí-lo por 2, e - Desafio de Programação Resolvido em CQuantidade de visualizações: 622 vezes |
Pergunta/Tarefa: Dado um número inteiro positivo n, se n for par, seu código deverá dividí-lo por 2, e, se n for ímpar, seu código deverá multiplicá-lo por 3 e adicionar 1. O algorítmo deverá repetir estas instruções até que o valor de n seja 1. Sua saída deverá ser parecida com: Informe um número inteiro positivo: 6 6 3 10 5 16 8 4 2 1 Veja a resolução comentada deste exercício usando C: ---------------------------------------------------------------------- Precisa de ajuda? Chama no WhatsApp +55 (62) 98553-6711 (Osmar) Este código foi útil? Paga um cafezinho pra mim :-( PIX: osmar@arquivodecodigos.com.br ---------------------------------------------------------------------- #include <stdio.h> #include <stdlib.h> #include <locale.h> int main(int argc, char *argv[]){ // variáveis usadas na resolução do problema int n; setlocale(LC_ALL,""); // para acentos do português // vamos pedir para o usuário informar um inteiro positivo printf("Informe um número inteiro positivo: "); scanf("%d", &n); // exibe o valor de n printf("%d ", n); // enquanto n for maior que 1 while(n > 1){ // n é par? if(n % 2 == 0){ n = n / 2; } else{ n = (n * 3) + 1; } // exibe o valor de n novamente printf("%d ", n); } printf("\n\n"); system("PAUSE"); return 0; } |
![]() |
Mais Desafios de Programação e Exercícios e Algoritmos Resolvidos de C |
Veja mais Dicas e truques de C |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |