A se face in C sau C++
Urgent
Realizați un program care realizează administrarea activității unei firme de curierat. Se introduc de la tastatură, pe linii separate, localitatea de destinație, identificatorul coletului (un număr întreg), data la care trebuie livrat ( anul, luna (1..12), ziua). La introducerea cuvântului STOP în loc de destinație, se vor afișa, în ordine cronologică data (linie separată), localitatea de destinație (linie separată), numărul de colete (linie separată), coletele în ordinea crescătoare a identificatorilor (toate pe o linie, separate prin virgule). Dacă sunt mai multe localități cu aceeași dată de livrare, se vor afișa în ordine alfabetică. Dacă se introduce de mai multe ori aceeași informație, se va afișa o singură dată.
Răspunsuri la întrebare
#include<iostream>
#include<cstring>
using namespace std;
struct firma{
char localitate[51];
int ID;
struct {
int an,luna,zi;
}data;
}colet[101];
int n=1;
int main(){
do{
cin.getline(colet[n].localitate,51);
cin>>colet[n].ID>>colet[n].data.an>>colet[n].data.luna>>colet[n].data.zi;
if(strcmp("STOP",colet[n].localitate)!=0)
n++;
}while(strcmp("STOP",colet[n].localitate)!=0);
n--;
for(int i=1;i<=n-1;i++)
for(int j=i+1;j<=n;j++)
if(colet[i].data.an>colet[j].data.an)
swap(colet[i],colet[j]);
else
if(colet[i].data.an==colet[j].data.an&&colet[i].data.luna>colet[j].data.luna)
swap(colet[i],colet[j]);
else
if(colet[i].data.an==colet[j].data.an&&colet[i].data.luna==colet[j].data.luna&&colet[i].data.zi>colet[j].data.zi)
swap(colet[i],colet[j]);
for(int i=1;i<=n;i++)
cout<<colet[i].data.an<<' '<<colet[i].data.luna<<' '<<colet[i].data.zi<<endl;
for(int i=1;i<=n-1;i++)
for(int j=i+1;j<=n;j++)
if(colet[i].data.an==colet[j].data.an&&colet[i].data.luna==colet[j].data.luna&&colet[i].data.zi==colet[j].data.zi)
if(strcmp(colet[i].localitate,colet[j].localitate)>0)
swap(colet[i],colet[j]);
for(int i=1;i<=n;i++)
cout<<colet[i].localitate<<endl;
cout<<n<<endl;
for(int i=1;i<=n-1;i++)
for(int j=i+1;j<=n;j++)
if(colet[i].ID>colet[j].ID)
swap(colet[i],colet[j]);
for(int i=1;i<=n;i++)
cout<<colet[i].localitate<<' '<<colet[i].ID<<' '<<colet[i].data.an<<' '<<colet[i].data.luna<<' '<<colet[i].data.zi<<", ";
return 0;
}