👤

1. Se citeşte un număr natural format din 3 cifre. Să se afişeze numărul maxim care se poate forma din cifrele sale. 2. Se citeşte un număr natural format din 4 cifre. Så se afişeze numărul maxim, respectiv numărul minim care se poate forma din cifrele sale.​

Răspuns :

 Pentru a scrie algoritmurile de mai jos, am folosit vectori si sortarea lor. Am pus intr-un vector cifrele numarului n. Ca sa aflu nr maxim care se poate forma din cifrele sale, a trebuit doar sa le sortez descrescator, folosind metoda sortarii prin selectie. Pentru a afla nr minim, le-am sortat crescator si am afisat vectorul.

Pb1:

#include <iostream>

using namespace std;

int main()

{

   int n, a[5], i, m=0, cif, j;

   cin>>n;

   while(n)

   {

       cif=n%10;

       n/=10;

       a[++m]=cif;

   }

   for(i=1; i<=m-1; i++)

       for(j=i+1; j<=m; j++)

       if(a[i]<a[j])

       swap(a[i], a[j]);

   for(i=1; i<=m; i++)

       cout<<a[i];

   return 0;

}

Pb2:

#include <iostream>

using namespace std;

int main()

{

   int n, a[6], b[6], i, m=0, cif, j, t=0;

   cin>>n;

   while(n)

   {

       cif=n%10;

       n/=10;

       a[++m]=cif;

       b[++t]=cif;

   }

   for(i=1; i<=m-1; i++)

       for(j=i+1; j<=m; j++)

       if(a[i]<a[j])

       swap(a[i], a[j]);

   for(i=1; i<=t-1; i++)

       for(j=i+1; j<=t; j++)

       if(b[i]>b[j])

           swap(b[i], b[j]);

       for(i=1; i<=m; i++)

           cout<<a[i];

       cout<<endl;

       for(i=1; i<=t; i++)

           cout<<b[i];

}

Sper ca te-am ajutat!

Vă mulțumim că ați ales să vizitați site-ul nostru dedicat Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări sau aveți nevoie de asistență suplimentară, vă rugăm să ne contactați. Revenirea dumneavoastră ne va bucura, iar pentru acces rapid, nu uitați să ne salvați la favorite!


En Trainingsy: Alte intrebari