Encurtar o código do programa
Problem
Rabbit Clover continua a aprender programação. Ele já estudou as linhas. Recentemente, passou ao estudo das sub-rotinas, nomeadamente dos procedimentos. Mas ele não entende como usá-los. Recentemente, Clover queria escrever um programa que imprimisse as palavras mais longas de duas frases em uma coluna (se houvesse várias dessas palavras, ele usaria a primeira que encontrasse). Ele esqueceu completamente os procedimentos e escreveu um programa muito complexo.
Aqui está ela:
#include <iostream>
usando namespace std;
principal()
{
int máx, n;
string s1, s2,wordMax;
getline(cin, s1);
getline(cin, s2);
máx=0;
s1=s1+" ";
while(s1.size() > 0)
{
n = s1.find(" ");
stringword=s1.substr(0,n);
if(palavra.tamanho()>max)
{
max = palavra.tamanho();
palavraMax = palavra;
}
s1.erase(0, n+1);
}
cout << palavraMax << endl;
máx=0;
s2=s2+" ";
while(s2.size() > 0)
{
n = s2.find(" ");
stringword=s2.substr(0,n);
if(palavra.tamanho()>max)
{
max = palavra.tamanho();
palavraMax = palavra;
}
s2.erase(0, n+1);
}
cout << palavraMax << endl;
}
Concordo, este é um programa bastante difícil de entender.
Ajude Clover the Rabbit a melhorar o programa selecionando as mesmas ações no procedimento.