Problema: 1238
Enunciado:
Implemente um programa denominado combinador, que recebe duas strings e deve combiná-las, alternando as letras de cada string, começando com a primeira letra da primeira string, seguido pela primeira letra da segunda string, em seguida pela segunda letra da primeira string, e assim sucessivamente. As letras restantes da cadeia mais longa devem ser adicionadas ao fim da string resultante e retornada.
Linguagem: C++
A cada iteração do while, pega uma letra de cada palavra para colocar na palavra final. Quando não houver mais letras em alguma das palavras, então ela será ignorada e só será captada as letras da outra palavra.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #include <iostream> using namespace std; int main() { int n; cin >> n; while(n--){ string palavra1, palavra2, palavra_final; palavra_final = ""; int i = 0; int pos_final = 0; cin >> palavra1 >> palavra2; while(palavra1.length()>i or palavra2.length()>i){ if(palavra1.length()>i){ palavra_final += palavra1[i]; pos_final++; } if(palavra2.length()>i){ palavra_final += palavra2[i]; pos_final++; } i++; } cout << palavra_final << endl; } return 0; } |
Nenhum comentário:
Postar um comentário