Se da un numar natural de forma ABC. Afisati cel mai mare numar care se poate forma cu cifrele numarului dat. (sa se rezorve in limbajul C++)
Răspunsuri la întrebare
Răspuns de
0
\* Problema consta in ordonarea cifrelor descrecator
Facem urmatoarele:
1. Trecem cifrele intr-un vector
2. Le ordonam descrescator
3. Formam un nr cu cifrele din vector, acest numar este raspunsul la problema noastra
*/
#include <iostream>
using namespace std;
void fromIntToVect (int n , int x[], int &m)
{
m = 0;
while(n!=0)
{
x[m+1] = n%10;
m++;
n/=10;
}
}
int fromVectToInt (int x[], int m)
{ int valoare = 0, i;
for( i = 1;i<=m;i++)
{
valoare = valoare*10 + x[i];
}
return valoare;
}
void ordoneazaDescrescator (int x[], int m)
{
int i,j,aux;
for( i = 1;i<=m;i++)
{ for( j = i+1;j<=m;j++)
{ if(x[i]<x[j])
{ aux = x[i];
x[i] = x[j];
x[j] = aux;
}
}
}
}
int raspuns (int n)
{ int x[10]. m;
fromIntToVect(n,x,m);
ordoneazaDescrescator(x,m);
return fromVectToInt(x,m);
}
int main()
{
int n;
cout<<"Dati n ";
cin>>n;
cout<<"Cea mai mare valoare care se poate forma cu cifrele lui "<<n<<" este valoarea"<<raspuns(n);
}
// Ptr intrebari si nelamuriri txt me.
Facem urmatoarele:
1. Trecem cifrele intr-un vector
2. Le ordonam descrescator
3. Formam un nr cu cifrele din vector, acest numar este raspunsul la problema noastra
*/
#include <iostream>
using namespace std;
void fromIntToVect (int n , int x[], int &m)
{
m = 0;
while(n!=0)
{
x[m+1] = n%10;
m++;
n/=10;
}
}
int fromVectToInt (int x[], int m)
{ int valoare = 0, i;
for( i = 1;i<=m;i++)
{
valoare = valoare*10 + x[i];
}
return valoare;
}
void ordoneazaDescrescator (int x[], int m)
{
int i,j,aux;
for( i = 1;i<=m;i++)
{ for( j = i+1;j<=m;j++)
{ if(x[i]<x[j])
{ aux = x[i];
x[i] = x[j];
x[j] = aux;
}
}
}
}
int raspuns (int n)
{ int x[10]. m;
fromIntToVect(n,x,m);
ordoneazaDescrescator(x,m);
return fromVectToInt(x,m);
}
int main()
{
int n;
cout<<"Dati n ";
cin>>n;
cout<<"Cea mai mare valoare care se poate forma cu cifrele lui "<<n<<" este valoarea"<<raspuns(n);
}
// Ptr intrebari si nelamuriri txt me.
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
9 ani în urmă
Fizică,
9 ani în urmă
Geografie,
9 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Ptr un numar de 3 cifre poti sa mergi si "mocaneste":
void raspuns( int n)
{ int a = x%10;