Inlocuire elemente vector cu cmmdc dintre element si oglinditul sau
Inlocuirea fiecarui element dintr-un vector cu cmmdc dintre element si oglinditul lui
Vectorul contine numere naturale nenule.
Afisarea finala se va face cu elementele in sens invers.
#include <iostream>
using namespace std;
void citire(int v[], int lv) {
int i;
for (i = 1; i <= lv; i++)
{
cin >> v[i];
}
}
int oglindit(int nr){
int o = 0;
while (nr){
o = o*10+nr%10;
nr/=10;
}
return o;
}
int cmmdc(int a,int b) {
if (a==0 && b==0) {return -1;}
if (a==0 && b!=0) {return b;}
if (a!=0 && b==0) {return a;}
int r = a%b;
while (r) { a= b; b = r; r = a%b;}
return b;
}
void afisare(int v[], int lv) {
int i;
for (i = lv; i >= 1; i--)
{
cout << cmmdc(v[i],oglindit(v[i]))<<" ";
}
}
int main()
{
int n, a[1010];
cin>>n;
citire(a,n);
afisare(a,n);
return 0;
}
admin
0
Tags :