Module: (C++) Sub-rotinas: procedimentos e funções - 1


Problem

7/12

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.