Advertisement
icatalin

clasa 7.5.2015 si tema

May 7th, 2015
277
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.21 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3. #include <cmath>
  4.  
  5. using namespace std;
  6.  
  7. ifstream f("date.in");
  8. ofstream g("date.out");
  9.  
  10. struct nod
  11. {
  12.     int info;
  13.     nod *urm;
  14. };
  15.  
  16.  
  17. nod *prim;
  18.  
  19. int palindrom(int x)
  20. {
  21.     int cop=x,nr=0;
  22.  
  23.     while (x)
  24.     {
  25.         nr=nr*10+x%10;
  26.         x=x/10;
  27.     }
  28.  
  29.     if (nr==cop)
  30.         return 1;// e palindrom
  31.     return 0;// nu e palindrom
  32. }
  33.  
  34.  
  35.  
  36.  
  37. void creare(int n,int v[100])
  38. {
  39.     int i;
  40.     nod *p,*nou;
  41.     for (i=1;i<=n;i++)
  42.       if (palindrom(v[i])==1)
  43.         if (prim==NULL)
  44.     {
  45.         prim=new nod;
  46.         prim->info=v[i];
  47.         p=prim;
  48.     }
  49.     else
  50.     {
  51.         nou=new nod;
  52.         nou->info=v[i];
  53.         p->urm=nou;
  54.         p=nou;
  55.     }
  56.     p->urm=NULL;
  57.  
  58. }
  59.  
  60. void afis()
  61. {
  62.     nod *p=prim;
  63.     while (p)
  64.     {
  65.         cout<<p->info<< " ";
  66.         p=p->urm;
  67.     }
  68.  
  69.  
  70. }
  71.  
  72. int main()
  73. {
  74.     int n,v[100],i;
  75.     f>>n;
  76.  
  77.  
  78.     for (i=1;i<=n;i++)
  79.         f>>v[i];
  80.  
  81. creare(n,v);
  82. afis();
  83.  
  84.     return 0;
  85. }
  86.  
  87.  
  88. creati o lista liniara simplu inalantuita cu numerele naturale din fisierul da.teunb\
  89.  
  90. afsati pe ecran toate nr prime din lista
  91.  
  92.  
  93. in fisierul date.in: pe prima linie nr de numere n si pe urm linii numerele
  94. construiti o lista cu nr din fisier care sunt palindromuri si afisati continutul listei
  95.  
  96. construiti o lista cu nr din fisierul date.in si afisati pe ecran cate dintre nr pare din lista au ca vecin nr impare
  97.  
  98. #include <iostream>
  99. #include <fstream>
  100. using namespace std;
  101. ifstream f("date.in");
  102. struct nod
  103. {
  104.     int info;
  105.     nod *adr;
  106. };
  107. nod *prim;
  108.  
  109. void creare()
  110. {
  111.     int x;
  112.     nod *p,*nou;
  113.     while(f>>x)
  114.     {
  115.         if(prim==NULL)
  116.         {
  117.             prim=new nod;
  118.             prim->info=x;
  119.             p=prim;
  120.         }
  121.         else
  122.         {
  123.             nou=new nod;
  124.             nou->info=x;
  125.             p->adr=nou;
  126.             p=nou;
  127.         }
  128.     }
  129.     p->adr=NULL;
  130. }
  131.  
  132. void parcurgere()
  133. {
  134.     int nr=0;
  135.     nod *p=prim;
  136.     while(p->adr->adr)
  137.     {
  138.         if(p->adr->info%2==0 && (p->info%2!=0 && p->adr->adr->info%2!=0))
  139.             nr++;
  140.             p=p->adr;
  141.     }
  142. cout<<nr;
  143. }
  144.  
  145. int main()
  146. {
  147.     creare();
  148.     parcurgere();
  149.     return 0;
  150. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement