Se dă un număr de 4 cifre. Să se afișeze cel mai mic și cel mai mare număr care se poate forma cu cifrele numărului dat.
Vreau să fie rezolvată în limbajul C++! Vă rog ajutați-mă cât mai repede!
Răspunsuri la întrebare
Răspuns de
0
cel mai mic este1234
cel mai mare este 9876
cel mai mare este 9876
Răspuns de
1
#include <iostream>
using namespace std;
int w[11], i, j, n, nr, cif;
int main()
{
cin >> n;
while(n)
{
cif=n%10;
n=n/10;
w[cif]=w[cif]+1;
}
for(i = 9; i >= 0; i --)
if(w[i] > 0)
{
for(j=1;j<=w[i];j++) cout << i;
}
cout << "\n";
if(w[0] > 0)
{
for(i = 1;i <= 9; i++)
if(w[i] > 0)
{
cout << i;
w[i] --;
break;
}
for(i = 0; i <= 9; i ++)
if(w[i] > 0)
for(j = 1; j <= w[i]; j ++) cout << i;
} else
{
for(i = 0; i <= 9; i ++)
if(w[i] > 0)
for(j = 1; j <= w[i]; j ++) cout << i;
}
return 0;
}
using namespace std;
int w[11], i, j, n, nr, cif;
int main()
{
cin >> n;
while(n)
{
cif=n%10;
n=n/10;
w[cif]=w[cif]+1;
}
for(i = 9; i >= 0; i --)
if(w[i] > 0)
{
for(j=1;j<=w[i];j++) cout << i;
}
cout << "\n";
if(w[0] > 0)
{
for(i = 1;i <= 9; i++)
if(w[i] > 0)
{
cout << i;
w[i] --;
break;
}
for(i = 0; i <= 9; i ++)
if(w[i] > 0)
for(j = 1; j <= w[i]; j ++) cout << i;
} else
{
for(i = 0; i <= 9; i ++)
if(w[i] > 0)
for(j = 1; j <= w[i]; j ++) cout << i;
}
return 0;
}
Alte întrebări interesante
Geografie,
8 ani în urmă
Matematică,
8 ani în urmă
Geografie,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă