Rezolvare completă PbInfo #101 SortareCuvinte

Cerinţa

Să se scrie un program care citește o propoziţie şi afişează cuvintele din propoziţie ordonate alfabetic.

Date de intrare

Fișierul de intrare sortcuv.in conține pe prima linie o propoziție alcătuită din litere mici ale alfabetului englez și spații.

Date de ieşire

Fișierul de ieșire sortcuv.out va conține cuvintele din propoziție, ordonate alfabetic, fiecare pe câte o linie.

Restricţii şi precizări

  • propoziția va conține cel mult 250 de caractere;
  • fiecare cuvânt din propoziție are cel mult 20 litere

Exemplu

sortcuv.in

dreptunghiul este un paralelogram cu un unghi drept

sortcuv.out

cu
drept
dreptunghiul
este
paralelogram
un
un
unghi

Cum e corect?

cout < "As la info"; cout << "As la info"; cout >> "As la info";

Felicitări! Poți mai mult?

Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.

Greșit, dar nu-i bai!

Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.

Rezolvare

Iată rezolvarea de 100 de puncte pentru problema SortareCuvinte:

#include <fstream>
#include <cstring>
using namespace std;

ifstream fin("sortcuv.in");
ofstream fout("sortcuv.out");

int main(){
    char p[251],   v[200][21] , *c;
    int n;
    fin.getline(p,251);
    c = strtok(p," ");
    n = 0;
    while(c){
        strcpy(v[n++] , c);
        c = strtok(NULL," ");
    }

    for(int i=0; i < n ;++i)
        for(int j=i+1 ; j < n ;++j)
            if(strcmp(v[i],v[j])>0){
                char a[21];
                strcpy(a,v[i]);
                strcpy(v[i],v[j]);
                strcpy(v[j],a);
            }

    for(int i=0;i<n;++i)
        fout << v[i] << endl;
    return 0;
}

Atenție

Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa Adresa de email.

Rezolvarea problemei #101 SortareCuvinte

Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #101 SortareCuvinte de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.

Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!