!!! Plss problema #2290 Oglindite de pe pbinfo
•Cerința
Se dau n numere naturale. Afișați numărul pentru care diferența în valoare absolută dintre el și oglinditul său este minimă. Dacă există mai multe asemenea numere, afișați-l pe cel mai mic.
•Date de intrare
Programul citește de la tastatură numărul n, iar apoi n numere naturale.
•Date de ieșire
Programul va afișa pe ecran numărul determinat x.
Restricții și precizări
1 ≤ n ≤ 1000
cele n numere citite vor fi mai mici decât 1.000.000.000
•Exemplu
Intrare
4 127 964 801 601
Ieșire
601
•Explicație
oglinditul lui 127 este 721, iar diferența este 594
oglinditul lui 964 este 469, iar diferența este 495
oglinditul lui 801 este 108, iar diferența este 693
oglinditul lui 601 este 106, iar diferența este 495
Diferența minimă este 495 și se obține pentru 601
Răspunsuri la întrebare
Răspuns de
2
Răspuns:
Mai jos ai o sursa verificata, succes!
#include <bits/stdc++.h>
using namespace std;
int ogl(int n)
{
int ogl=0;
while(n!=0)
{
ogl=ogl*10+n%10;
n=n/10;
}
return ogl;
}
int main()
{
int n,minim=1000000000,xmax=-1,x;
cin >>n;
for(int i=1;i<=n;i++)
{
cin>>x;
if(abs(x-ogl(x))<minim)
{
minim=abs(x-ogl(x));
xmax=x;
}
else if(abs(x-ogl(x))==minim)
{
if(x<xmax) xmax=x;
}
}
cout<<xmax;
return 0;
}
almond:
da, am găsit și eu rezolvarea asta pe tutoriale-pe.net
#include
using namespace std;
int main()
{
int n , x , y , ogl, dmin = 1000000000, xmin;
for(cin >> n ; n ; n --)
{
cin >> x;
y = x;
ogl = 0;
while(y)
ogl = 10 * ogl + y % 10, y /= 10;
if(abs(x - ogl) < dmin)
dmin = abs(x - ogl), xmin = x;
else
if(abs(x - ogl) == dmin)
if(x < xmin)
xmin = x;
}
cout << xmin << "\n";
return 0;
}
#include
using namespace std;
int main()
{
int n , x , y , ogl, dmin = 1000000000, xmin;
for(cin >> n ; n ; n --)
{
cin >> x;
y = x;
ogl = 0;
while(y)
ogl = 10 * ogl + y % 10, y /= 10;
if(abs(x - ogl) < dmin)
dmin = abs(x - ogl), xmin = x;
else
if(abs(x - ogl) == dmin)
if(x < xmin)
xmin = x;
}
cout << xmin << "\n";
return 0;
}
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
9 ani în urmă
Limba română,
9 ani în urmă