Um post sobre um problema da categoria Strings! No URI/BEECROWD uma das categorias de exercícios é "Strings", onde é necessário manipular cadeias de caracteres para obter a resposta. Esse é o problema "Criptotexto", que foi resolvido por mim em C e C++. Bora ver os códigos?
Plataforma: URI (BEECROWD)
Problema: 2866
Linguagens: C e C++
Solução:
A lógica aplicada aqui foi a mesma para os códigos em C e C++. Lê todo texto e o percorre de trás pra frente, em busca de caracteres lowercase (letras minúsculas). Imprime quando encontrar e no fim imprime a quebra de linha. Esse eu achei divertido de fazer, e vocês?
Código em C:
#include <stdio.h> int main() { int c, contador = 0; scanf("%i ",&c); while(contador < c) { char palavra[1001]; int pos = 0; scanf("%s",palavra); while (palavra[pos] != '\0') pos++; pos--; while (pos >= 0) { if (palavra[pos] >= 'a' && palavra[pos] <= 'z') { printf("%c",palavra[pos]); } pos--; } printf("\n"); contador++; } return 0; }
Código em C++:
#include <iostream> using namespace std; int main() { int c, contador = 0; cin >> c; cin.ignore(); while(contador < c) { string palavra; int pos = 0; cin >> palavra; while (palavra[pos++] != '\0'); while (--pos >= 0) { if (palavra[pos] >= 'a' and palavra[pos] <= 'z') { cout << palavra[pos]; } } cout << endl; contador++; } return 0; }