👤

Se dă un şir de caractere ce conţine cuvinte formate din litere mici ale alfabetului englez, separate prin unul sau mai multe spații.

Cerinţa
Să se afişeze şirul obţinut după eliminarea din șir unor spații, astfel încât între cuvinte să fie un singur spațiu și să nu nu existe spații înainte de primul cuvânt și nici după ultimul .

Date de intrare
Programul va citi de la tastatură şirul dat.

Date de ieşire
Programul va afişa pe ecran şirul transformat corespunzător.

Restricţii şi precizări
șirul dat va conține cel mult 255 caractere, litere mici ale alfabetului englez și spații

Exemplu

Intrare

        in       vacanta   plec la mare     (e spatiu si dupa mare)
Ieşire  

in vacanta plec la mare


Răspuns :

#include <iostream>
#include <string>
using namespace std;

int main(){
   string str;int i;
   getline(cin, str);
   while(str[0]==' ') str.erase(0,1);
   while(str[str.length()-1]==' ') str.erase(str.length()-1,1);
   for(i=0;i<str.length();i++){
       cout<<str[i];
       if(str[i]==' '&&str[i+1]==' ')i++;
   }
   return 0;
}

**////////////EDIT - acu inlocuieste si daca sunt 3 sau mai multe spatii unul dupa altul/////////////**
#include <iostream>
#include <string>
using namespace std;

int main(){
   string str;unsigned int i;
   getline(cin, str);
   while(str[0]==' ') str.erase(0,1);
   while(str[str.length()-1]==' ') str.erase(str.length()-1,1);
   for(i=0;i<str.length();i++){
       cout<<str[i];
       int k=0;
       if(str[i]==' ')while(1){
           if(str[i+k+1]==' ')k++;
           else break;
       }
       i+=k;
   }
   return 0;
}
#include <iostream>
#include <string>
using namespace std;

int main()
{
    string n;
    getline(cin, n);
    for(int i=0, f=0; i < n.length(); i++) {
        if(n[i] == ' ')
            if(f) { cout << ' ', f = 0; }
            else continue;
        else { cout << n[i], f = 1; }
    }
    return 0;
}

Vă mulțumim pentru vizita pe platforma noastră dedicată Informatică. Sperăm că informațiile prezentate v-au fost utile. Dacă aveți întrebări sau aveți nevoie de suport suplimentar, nu ezitați să ne contactați. Așteptăm cu entuziasm să reveniți și vă invităm să ne adăugați la lista de favorite!


Viz Lesson: Alte intrebari