Задачи - линеарно и бинарно пребарување кај еднодимензионални низи

Програма која печати на која позиција е првото појавување на даден број во еднодимензионална низа а со н елементи. Доколку елементот не се наоѓа во низата, да се даде соодветна порака

#include <iostream>
using namespace std;

void linearno(int a[], int m, int i, int n)
{ int  t = 0;
   for (i = 0; i < n ; i++)
   if (m == a[i] )
    { t= 1; break; }
  if (t == 1)
     cout<<"Elementot e na pozicija "<<i;
   else
     cout<<"Elementot ne e prisuten vo nizata.";
}

int main()
{ int n, a[100];
int i, m, t = 0;
cout<<"Vnesi go n ";
cin>>n;
cout<<"Vnesi gi elementite"<<endl;
for (i = 0; i < n; i++)
cin>> a[i];
cout<<"Vnesi go elementot sto go baras ";
cin>>m;
linearno(a, m,i,n);
return 0;
}

Програма што ќе пресмета и печати колку од броевите во еднодимензионална низа со н елементи, се едноцифрени, колку се двоцифрени, а колку се трицифрени. 

#include <iostream>
using namespace std;
 void linearno(int a[], int n)
 {
 int i, e = 0, d=0, t=0;
 for (i = 0; i < n ; i++)
 {
 if (a[i]>=0 && a[i]<=9) e++;
 if (a[i]>=10 && a[i]<=99) d++;
 if (a[i]>=100 &&a [i]<=999) t++;
 }
 cout<<"Ednocifreni se "<<e<<endl;
 cout<<"Dvocifreni se "<<d<<endl;
 cout<<"Tricifreni se "<<t<<endl;
 }
int main()
{ int n,i, a[100];
 cout<<"Vnesi go n ";
 cin>>n;
 cout<<"Vnesi gi elementite"<<endl;
 for (i = 0; i < n; i++)
 {
 cin>> a[i];
 }
 linearno(a,n);
 return 0;
}

Програма со која од дадена еднодимензионална низа со н елементи креира други две низи, 
едната составена од елементите од првата десетка, а другата од останатите елементи на низата а. 
#include <iostream>
using namespace std;
 void linearno(int a[], int n)
 {
 int i, b[100], c[100], j=0, k=0;
 for (i = 0; i < n ; i++)
 {
 if (a[i]>=0 && a[i]<=10)
 {   b[j]=a[i];
     j++;
 }
 else
 {
   c[k]=a[i];
   k++;
 }
 }
 cout<<"Elementi od prvata desetka "<<endl;
 for(i=0;i<j;i++)
 cout<<b[i]<<" ";
 cout<<endl;
 cout<<"Ostanati element  "<<endl;
 for(i=0;i<k;i++)
 cout<<c[i]<<" ";
 }
 
int main()
{ int n,i, a[100];
 cout<<"Vnesi go n ";
 cin>>n;
 cout<<"Vnesi gi elementite"<<endl;
 for (i = 0; i < n; i++)
 {
 cin>> a[i];
 }
 linearno(a,n);
 return 0;}

Програма  во која рандом се одредуваат 10 елементи на низа и се пребројува појавување на даден број во самата низа.  

#include <iostream>
using namespace std;

int prebaruvanje(int n, int a[50], int k)
{
    int br=0;
    for(int i=0; i<n; i++)
    {
     if(a[i]==k)
     br++;
      }   
      return br;  
}
int main()
{
    const int n = 10;
    int a[n];
    int k;
    for(int i=0; i<n; i++)
     a[i] = rand() %10;
    cout << "Elementita na nizata generirani od funkcijata rand se  : " ;
    for(int i=0; i<n; i++)
    {
            cout << a[i];
         if(i<n-1)
     cout << "," ;
    }
    cout << endl;
    cout << "Vnesi klucna vrednost: " ;
    cin >> k;
    int element = prebaruvanje(n, a, k);
    cout << "Klucnata vrednost vo nizata se javuva " << element << " pati " ;
    return 0;           
}


Програма со која од дадена еднодимензионална низа со н елементи креира други две низи, едната составена од парните, а другата од непарните елементи на низата а. 

No comments: