Informatică, întrebare adresată de oacki, 9 ani în urmă

Cerința

Se dă un tablou cu n elemente, numere naturale. Să se elimine din tablou toate elementele care sunt palindrom.

Se vor defini și apela următoarele subprograme:

citire, care citește de la tastatură valoarea lui n și cele n elemente ale tabloului
afisare, care afișează pe ecran elementele tabloului, separate prin exact un spațiu
palindrom, care verifică dacă un număr dat ca parametru este palindrom
eliminare, care elimină din tablou un element a cărui poziție este dată ca parametru.

În programele C/C++ nu se vor folosi variabile globale.
Date de intrare

Se citește de la tastatură numărul n, iar apoi cele n elemente ale tabloului.
Date de ieșire

Se vor afișa pe ecran elementele tabloului, separate prin exact un spațiu.
Restricții și precizări

1 ≤ n ≤ 1000
elementele tabloului vor fi mai mici decât 1.000.000.000

Răspunsuri la întrebare

Răspuns de ionutg38
3
#include <iostream>
using namespace std;//ifstream cin("ElimPalindrom.in");//ofstream cout("ElimPalindrom.out");int n,a[1001];
void afisare(int n){    for(int i=1;i<=n;i++)        cout<<a[i]<<' ';}
void citire(int n){    for(int i=1;i<=n;i++)        cin>>a[i];}

int palindrom(int x){    int z=0,y;    y=x;    while(x!=0)    {        z=z*10+x%10;        x=x/10;    }    if(z==y)        return 1;    else        return 0;}
void eliminare(int k,int &n){    for(int i=k;i<n;i++)        a[i]=a[i+1];    n--;}
int main(){    cin>>n;    citire(n);    int i=1;    while(i<=n)        if(palindrom(a[i]))            eliminare(i,n);        else            i++;    afisare(n);    return 0;}
Alte întrebări interesante