duminică, 28 martie 2010

Probleme rezolvate informatica C



1.)  Se citesc n numre naturale. Se cere:
a) Sa se afiseze minimul numerelor pare.
b) Sa se afiseze cate numere prime s-au citit.
c) Suma numerelor divizibile cu 3.
d) Produsul numerelor care au ultima cifra k.

#include
#include
void main()
     {int n, x, i=0, minpar, sprim=0, div3=0, k, prodk=1, prim;
     /* n=numarul de termeni din sir;
     x=numarul curent; i=contor;
     minpar=retine cel mai mic numar par; div3=retiine suma nr. divizibile cu 3;

     k=ultima cifra; prodk=retine produsul nr. cu ultima cifra k;
     prim=verifica daca un nr. este prim;
     sprim=retine numarul de numere pare citite; */

     cout<<"Dati un numar k (0<=k<=9): "; cin>>k;
     cout<<"Dati un nu numar natural: "; cin>>n;
     cout<<"Dati n numere: ";
     minpar=INT_MAX;
     while (i
           {cin>>x;
           if (x%2==0&&x
              minpar=x;
           int d=2;
           prim=1;
           while (d
                 {if (x%d==0)
                     prim=0;
                 d++;
                 }
           if (prim==1&&x!=1)
              sprim++;
           if (x%3==0)
              div3+=x;
           if (x%10==k)
              prodk*=x;
           i++;
           }
     if(minpar!=INT_MAX)
                        cout<<"Cel mai mic numar par este: "<<
     else
         cout<<"Nu s-au citit numere pare."<
     cout<<"Exista "<<<" numere prime."<
     if (div3!=0)
        cout<<"Suma nr. divizibile cu 3 este: "<<
     else
         cout<<"Nu s-au citit numere divizibile cu 3.";

     if(prodk!=1)
                 cout<<"Produsul nr. care au ultima cifra k este: "<<
     else
         cout<<"Nu exista numere terminate in k.";
     }


2.) Afisati toate numerele mai mici decat 2000 care impartite la 24, 30, 18 dau restul 7.

#include
void main()
     {int n=0;
     while (n<2000)
           {if (n%24==7&&n%30==7&&n%18==7)
              cout<<<" ";
           n++;
           }
     }


3.) Afisati toate numerele de doua cifre, care impartite la 15, dau restul egal cu patratul catului.

#include
void main()
     {int n=1,c,r;
     while (n<100)
           {c=n/15;
           r=n%15;
           if (r==c*c)
              cout<<<" ";
           n++;
           }
     }

Cititi mai departe...