Rešeni primeri (jednodimenzionalni nizovi)


Primer 1
: Unesi N članova niza X pomoću for petlje, a zatim ih ispiši na monitoru računara, također for petljom?

#include <cstdlib>
#include <iostream>
using namespace std;
int main()
{
int i,N;
int X[10];/*deklaracija niza od 10 celih brojeva*/
cout<<„Zadaj 0<N<10 = „;/*broj N mora biti manji od 10 jer je deklarisan niz od maksimalno 10 elemenata*/
cin >>N;
for (i=0;i<N;i++) /*upis članova niza*/
{
cin>>X[i]; /*upis i-tog člana niza*/
}

for (i=0;i<N;i++)               /*ispis članova niza for petljom*/
{
cout << X[i];                  /*ispis i- tog člana niza*/
cout <<endl;                  /*ispis praznog retka (end line)*/
}
system („PAUSE“);
return 0;
}

Pimer 2.

/*Program koji izdaje min element niza i njegov index*/

#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
int broj[5];
int min;

for (int i=0; i<5; i++)
{
cout<<„Unesi „<<i+1<<“ element niza“<<endl;
cin >> broj[i];
}

min=broj[0];

for (int i=1; i<5; i++)
{
if(broj[i]<min)
{min=broj[i];
}
}
cout << „minimalni element niza je : “ << min << „i on je“<<i<<: element niza“<< endl;
system(„PAUSE“);
return EXIT_SUCCESS;
}

Primer 3.

Program koji stvara novi niz c[10] čiji elementi su prouzvod elemenata niza a[10] i b[10]?

#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
int i,a[10],b[10],c[10] ;

for (int i=0; i<3; i++)
{
cout<<„Unesi „<<i+1<<“ element niza a“<<endl;
cin >> a[i];
cout<<„Unesi „<<i+1<<“ element niza b“<<endl;
cin >> b[i];
}
for (int i=0; i<3; i++)
{
c[i]=a[i]*b[i];
}
cout<<„Elementi novoformiranog niza su proizvod elemenata nizova a i b“<<endl;
for (i=0;i<3;i++)
{
cout<<a[i]<<„*“<<b[i]<<„=“<<c[i]<<endl;
}
system(„PAUSE“);
return EXIT_SUCCESS;
}

Primer 4

Napravite program koji izdaje visinu učenika koji je najviši i najmanji u razredu? Koji je njihov broj u dnevniku?

#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
int i,a[10], max,min;

for (int i=0; i<7; i++)
{
cout<<„Unesi visinu ucenika iji je redni broj u dnevniku „<<i+1<<endl;
cin >> a[i];
}
min=a[0];
for (int i=0; i<7; i++)
{
if(a[i]<min)
min=a[i];
}

cout<<„Najmanji ucenik ima visinu „<< min<<“ i on je sa rednim brojem „<<i<< endl;

max=a[0];

for (int i=0; i<7; i++)
{
if(a[i]>max)
max=a[i];
},

cout<<„Najveci ucenik u razredu ima visinu „<< max<<“ i on je sa rednim brojem „<<i<<endl;

system(„PAUSE“);

return EXIT_SUCCESS;
}

Primer 4.

Program koji sortira niz u rastući redosled

#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{

//*deklaracija niza*//
int broj[10] ;

int i,n,j,pom;
/* unos konkretne vrednosti preko tastature elemenima niza*/
cout<<„Unesi broj elemenata niza“;
cin>>n;
for(i=0;i<n;++i)
{cout<<„Unesi „<<i+1<<“ element niza“<<endl;
cin>>broj[i];
}
//*Sortiranje niza*//
for (i=0;i<n-1 ;i++)
{
for (j=i+1;j<n;j++)
{
if (broj[i]>broj[j])
{ pom=broj[i];broj[i]=broj[j];broj[j]=pom;

}
}
}
//*prikaz elemente niza-njih
ove konkretne vrednosti*//
cout<<„Uredjeni nizn“<<endl;
for (i=0;i<n;i++)
{
cout<<broj[i]<<endl;

}
system(„PAUSE“);
return EXIT_SUCCESS;
}

Program 5.

Program koji sumira elemente niza sa parnim i neparnim indeksima

#include <cstdlib>
#include <iostream>

using namespace std;

int main()
{
//* Program koji sumaira elemente niza sa parnim i neparnim indeksima*//

/*deklaracija niza*/
int broj[5] ;
{
int i,sp=0,sn=0;

/* unos konkretne vrednosti preko tastature elemenima niza*/
for(i=0;i<5;++i)
{

cout<<„Unesi broj[„<<i+1<<„] „;
cin>>broj[i];
if ((i%2)==0)
sp+=broj[i];
else
sn+=broj[i];
}

cout<<„suma elemenata niza sa parnim indeksima je „<<sp<<endl;
cout<<„suma elemenata niza sa neparnim indeksima je „<<sn<<endl;

}
system(„PAUSE“);
return EXIT_SUCCESS;
}

Primer 6.

Dat je niz od 10 realnih brojeva. Naći broj najbliži nuli i broj najdalji od nule?

Rešenje:

/* 23010560 Dat je niz od 10 realnih brojeva. 
Naći broj najbliži nuli i broj najdalji od nule.*/
#include <cstdlib>
#include <iostream>
#include <cmath>
using namespace std;
int main()
{float a[10]={2, 3, 15, -14, -12.5, -1.5, 0.2, 11, -25, 4}, najb, najd;
 najb=a[0];
 najd=a[0];
 for (int i=1; i<10;i++)
     {if (abs(a[i])< abs(najb)) najb=a[i]; 
      if (abs(a[i]) > abs(najd)) najd=a[i];
      }
 cout << "Najblizi nuli je " << najb << endl;
 cout << "Najdalji od nule je " << najd << endl;     
 system("PAUSE");
 return EXIT_SUCCESS;
}
Primer 7.
Učitati 2 cela broja. Kreirati niz od 10 slučajnih celih brojeva između njih. Učitati treći broj i odrediti koji je član niza najbliži tom broju?
Rešenje:

#include <cstdlib>
#include <iostream>
#include <cmath>
using namespace std;
int main()
{   int x[10], a, b, c, najb, nraz=INT_MAX;
    srand(time(NULL));
    rand();
    cin >>a >>b;
    if (a>b) swap(a, b);
    for (int i=0; i<10;i++) 
        {x[i]=rand()%(b-a-2)+a+1;
         cout << x[i] << "  ";
        }
    cin >>c;
    for (int i=0; i<10;i++) 
        if (abs(x[i]-c) < nraz) {najb=i; nraz=abs(x[i]-c);}
    cout << "Najblizi je a["<< najb<< "]= " << x[najb] << endl;
    system("PAUSE");
    return EXIT_SUCCESS;
}

Primer8. Napravite program koristeći funkcije, za izračunavanja sumu elemenata niza čije se vrednosti unose preko tastature?
Rešenje.

#include <cstdlib>

#include <iostream>

using namespace std;
int nizsuma(int n)
{
int i, a[n],s;
for (i=0;i<n;i++)
{
cout<<“ Unesi „<<i+1<<“ element niza“<<endl;
cin >> a[i];
s+=a[i];
}
return s;
}

int main(int argc, char *argv[])
{
int n;
cout<<„Unesi broj elemenata niza“<<endl;
cin>>n;

cout <<“ Suma svih elemenata niya je:“<<nizsuma(n)<<endl;
system(„PAUSE“);
return EXIT_SUCCESS;
}

Jedno mišljenje na „Rešeni primeri (jednodimenzionalni nizovi)

Postavi komentar