Scrieți un program care citește de la tastatură un număr natural n și apoi n numere naturale nenule formate din cel mult 4 cifre. Programul afișează pe ecran, pentru fiecare număr care are cifrele ordonate strict crescător, valoarea inițială și un nou număr format prin duplicarea fiecărei cifre pare. Exemplu: dacă pentru n se citește valoarea 10 și apoi se citesc numerele 1234, 57, 9, 2456, 2134, 8765, 478, 5567, 8776, 321 se vor afișa pe ecran valorile 1234 122344 2456 2244566 478 44788
Răspunsuri la întrebare
Răspuns de
1
Răspuns:
#include <iostream>
using namespace std;
bool cresc(int a)
{
while(a/10)
{
if(a%10<=a/10%10)
return false;
a/=10;
}
return true;
}
int multiplu(int a)
{
int p=0,z=1;
while(a)
{
p=p+a%10*z;
if(a%2==0)
{
z*=10;
p=p+a%10*z;
}
z*=10;
a/=10;
}
return p;
}
int main()
{
int n,x;
cin>>n;
for(int i=0;i<n;i++)
{
cin>>x;
if(cresc(x)==true && multiplu(x)!=x)
cout<<x<<" "<<multiplu(x)<<" ";
}
return 0;
}
Alte întrebări interesante
Engleza,
8 ani în urmă
Matematică,
8 ani în urmă
Engleza,
8 ani în urmă
Matematică,
8 ani în urmă
Informatică,
8 ani în urmă
Matematică,
9 ani în urmă