Zadaci- dinamicki nizovi

Pr. 1. 

Napravite program koji sumira elemente celobrojnog niza koristeći dinamičke nizove, alociranu memoriju?

Rešenje:

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
int i,n, s=0;
cout<<„Unesi broj elemenata niza“<<endl;
cin>>n;
int *pniz= new int (n);
for( i=0;i<n;i++)
{
cout<<“ Unesi „<<i+1<<“ element niza „<<endl;
cin>>pniz[i];
s+=pniz[i];
}
cout<<“ Suma elemenata alociranog niza je s=“<<s<<endl;
delete[]pniz;
system(„PAUSE“);
return EXIT_SUCCESS;
}

Isti zadatak, ali uradjen korišćenjem funkcije suma koja unosi elemente alociranog, dinamičkog niza i iste sumira

#include <cstdlib>
#include <iostream>

using namespace std;
int suma(int *pniz, int duzina)
{
int i, s=0;
for( i=0;i<duzina;i++)
{
cout<<“ Unesi „<<i+1<<“ element niza „<<endl;
cin>>pniz[i];
s+=pniz[i];
}
return s;
}
int main(int argc, char *argv[])
{
int i,n, s=0;
cout<<„Unesi broj elemenata niza“<<endl;
cin>>n;
int *pniz= new int [n];
cout<<“ Suma elemenata alociranog niza je s=“<<suma(pniz,n)<<endl;
delete[]pniz;
system(„PAUSE“);
return EXIT_SUCCESS;
}

Pr. 2. Šta ispisuje sledeći program?

#include <cstdlib>
#include <iostream>

using namespace std;

int main(int argc, char *argv[])
{
int a[]={0, 1, 2, 3, 4};
int *p;
int i;
for (p=a, i=0;p<&a[4];p++)
{
cout<<*p<<endl;
}
cout<<“ „<<endl;
for (p=&(a[0]), i=0;p+i<a+4;p++,i++)
{
cout<<*(p+i)<<endl;

}
cout<<“ „<<endl;
for (p=a+4, i=0;i<=4;i++)
{
cout<<p[-i]<<endl;
}

system(„PAUSE“);
return EXIT_SUCCESS;
}

Rešenje:

dinamickiniz2