Orar semigroup #2

Orar semigroup #2

16 februarie + Tema/17

3. Scrieti functii care sa efectueze urmatoarele:
a) elimina cifrele impare dintr-un numar (numarul initial se transforma in functie)
b) returneaza prima cifra a unui numar
c) elimina dintr-un numar prima si ultima cifra.

a)#include<iostream>
using namespace std;
int elimina(int &n)
{int k,r,p=0;
k=1;
while(n)
{if(n%10%2==0)
    {p=n%10*k+p;k=k*10;}
n=n/10;}
n=p;
}

int main()
{int n;
cin>>n;
elimina(n);
cout<<n;
}
b)#include<iostream>
using namespace std;
int prima(int n)
{while(n>=10)
    n=n/10;
return n;
}

int main()
{int n;
cin>>n;
cout<<prima(n);
}
c) #include<iostream>
using namespace std;
void elimina(int &n)
{int k,r,p=0;
k=1;
n=n/10;
while(n>10)
{
    {p=n%10*k+p;k=k*10;}
n=n/10;}
n=p;
}

int main()
{int n;
cin>>n;
elimina(n);
cout<<n;
}
4. Se da un tablou de numere intregi.
a) sa se determine elementul maxim si cel minim(intr-o singura functie)
b) sa se afle numarul de aparitii ale unei valori date, k, in tablou
c) sa se elimine elementul de pe pozitia t
Se vor scrie functii pentru citirea si afisarea unui tablou.

#include<iostream>
using namespace std;
void citire(int n, int a[])
{int i;
for(i=0;i<n;i++)
    cin>>a[i];
}

void afisare(int n, int a[])
{int i;
for(i=0;i<n;i++)
    cout<<a[i]<<" ";
}

void maxmin(int n, int a[], int &max, int &min)
{int i;
max=a[0];min=a[0];
for(i=0;i<n;i++)
    if(a[i]>max)
        max=a[i];
    if(a[i]<min)
        min=a[i];
}

int aparitii(int n, int a[], int k)
{int i,p=0;
for(i=0;i<n;i++)
    if(a[i]==k)
        p++;
    return p;
}

void elimina(int &n, int a[], int t)
{int i;
for(i=t;i<n;i++)
    a[i]=a[i+1];
n--;
}
   
   
int main()
{int n,a[100],max,min,k,t;
cout<<"k=";cin>>k;
cout<<"t=";cin>>t;
cout<<"n=";cin>>n;
cout<<"Citire vector"<<endl;citire(n,a);
afisare(n,a);
cout<<endl;
maxmin(n,a,max,min);
cout<<"MAX MIN: "<<max<<" "<<min<<endl;

cout<<aparitii(n,a,k)<<" aparitii ale el "<<k<<endl;
elimina(n,a,t);
afisare(n,a);
}

marți, 15 februarie 2011 by DlMuresan
Categories: , , | Leave a comment

Leave a Reply