O Enigma da Pronolândia, problema iniciante resolvido! Aqui posto as soluções em C e C++ para esse problema. Compare com a(s) sua(s) respota(s) e comente se ficou igual ou parecido!!!
Plataforma: URI (BEECROWD)
Problema: 1984
Enunciado:
Os cientistas da NASA descobriram um novo exoplaneta que fica a 1 bilhão de anos luz da terra. O nome desse planeta foi batizado de Pronalândia em homenagem aos novos cientistas que estão sendo formados no PRONATEC. Só que o mais incrível ainda está por vir. Ao observar melhor o planeta eles conseguiram identificar que os habitantes da Pronalândia estavam querendo se comunicar por uma numeração. Só que a numeração que encontraram está invertida e como encontraram muitas delas chamaram você para conseguir automatizar esse processo. Logo, dado um número grande, sua tarefa é imprimir esse número invertido.
Linguagens: C e C++
Solução:
Neste exercício devemos imprimir o número invertido. Para isso é necessário que ele seja lido como uma cadeia de caracteres, senão o zero, ao ser posicionado como dígito maior, é eliminado (zero à esquerda). Assim, trabalhou-se então com cadeia de caracteres. O importante era saber quantos dígitos o número tinha, para então ler esse dado de trás pra frente, ou seja, do maior índice até o índice zero.
Código em C:
#include <stdio.h> int main() { char *numero = (char *) malloc(sizeof(char) * 12); int tamanho = 0; long long int valor; scanf("%lld", &valor); sprintf(numero, "%lld", valor); while(numero[tamanho] != '\0') tamanho++; while(--tamanho >= 0) printf("%c", numero[tamanho]); printf("\n"); return 0; }
#include <iostream> #include <string> using namespace std; int main() { string numero; int tamanho = 0; long long int valor; cin >> valor; numero = to_string(valor); while(numero[tamanho] != '\0') tamanho++; while(--tamanho >= 0) { cout << numero[tamanho]; } cout << endl; return 0; }
Nenhum comentário:
Postar um comentário