Sunteți pe pagina 1din 3

Atestat

Subiectul 1
Se citete de la tastatur o matrice cu m linii i n coloane (m, n20). S se afeze toate
numerele
palindrom din matrice n ordine cresctoare. Un numr se numete palindrom dac citit de la
dreapta la stnga este egal cu numrul citit de la stnga la dreapta. Dac nu exist numere
palindrom se va afa un mesaj.
#include <iostream>
using namespace std;
int palindrom(int x)
{int y=0,x1;
x1=x;
while(x>0)
{
y=y*10+x%10;
x=x/10;
}
if(x1==y)
return 1;
else
return 0;
}
int main()
{
int a[100][100],i,j,m,n;
cin>>m;
cin>>n;
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
cin>>a[i][j];

for(i=1;i<=n;i++)

for(j=1;j<=m;j++)
if(palindrom(a[i][j])==1)
cout<<a[i][j]<<" ";
else
cout<<"nu exista n palindome";
return 0;
}

Subiectul 2
Se citesc de la tastatur dou iruri de caractere de maxim 100 de caractere, numai litere
mici i
spaii. S se afeze literele comune celor dou iruri, o singur dat, n ordine alfabetic.
Dac nu
exist caractere comune se va afa un mesaj.
Exemplu: dac se citesc irurile de caractere bafta i alfabet se va afa a b f t, iar dac se
citesc
irurile bafta i pom se va afa Nu exist caractere comune.

Subiectul 3
Se citesc de la tastatur n (n100) numere naturale. S se sorteze cresctor numerele dup
suma
cifrelor lor. S se afeze numerele astfel sortate.
Exemplu: dac se citesc n=7 numere i numerele 127, 22, 1001, 899, 15, 85, 13 se va afa
1001,
22, 13, 15, 127, 85, 899
#include <iostream>

using namespace std;


int suma (int x)
{int s=0;
while(x>0)
{
s=s+x%10;

x=x/10;
}
return s;
}
int main()
{
int n,x,v[100],i,j,aux;
cin>>n;
for(i=1;i<=n;i++)
cin>>v[i];
for(i=1;i<=n-1;i++)
for(j=i+1;j<=n;j++)
if(suma(v[i])>suma(v[j]))
{aux=v[i];
v[i]=v[j];
v[j]=aux;

}
for(i=1;i<=n;i++)
cout<<v[i]<<" ";
}