Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- using namespace std;
- /*
- a) deklarirati niz tipa double koji ima 10 elemenata:
- double niz [10]={0.0, 1.1, 2.2, 3.3., 4.4, 5.5, 6.6, 7.7, 8.8, 9.9}
- b) provjeriti koliko prostora u memoriji zauzima tip podatka double i koliko prostora u
- memoriji zauzima cijeli niz
- (upotrijebite operator sizeof)
- c) deklarirati pokazivač koji pokazuje na objekt tipa double
- d) inicijalizirate pokazivač na adresu prvog elementa niza
- (pokušajte ovu inicijalizaciju napraviti na dva načina)
- e) ispišite 4 element niza na barem 3 različita načina
- (koristite indeksaciju elemenata niza, dereferenciranje pokazivača i operacije nad pokazivačem)
- f) ispišite adrese svih elemenata niza koristeći operator inkrementa na pokazivač
- (vodite računa da ukoliko dekrementirate pokazivač – rezultat je adresa pomaknuta za onoliko bajta
- koliko zauzima tip podatka na koji upućuje pokazivač)
- g) ispišite elemente niza koristeći dereferenciranje pokazivača.
- */
- int main()
- {
- double niz[10] = { 0.0, 1.1, 2.2, 3.3, 4.4, 5.5, 6.6, 7.7, 8.8, 9.9 };
- cout << "sizeof double -> " << sizeof(double) << endl;
- cout << "sizeof niz -> " << sizeof(niz) << endl;
- double *p = NULL;
- p = &niz[0];
- // n0 n1 n2 n3 n4
- // | 8 | 16 | 24 | 32 | 40 | ...
- // p p2
- // p2-p = 3 tj. 3*8= 4 clan niza
- p = &niz[3];
- double *p2 = &niz[6];
- cout << "\n4. element niza: " << endl;
- cout << " niz[3] -> \t\t" << niz[3] << endl;
- cout << " *p -> \t" << *p << endl;
- cout << " *p2-*p -> \t" << *p2-*p << endl;
- cout << "\nAdrese clanova niza su:" << endl;
- for (int i = 0; i < 10; i++)
- {
- p = &niz[i];
- cout << "n[" << i << "] -> " << p << endl;
- }
- cout << "\nVrijednosti clanova niza su:" << endl;
- for (int i = 0; i < 10; i++)
- {
- p = &niz[i];
- cout << "n[" << i << "] -> " << *p << endl;
- }
- system("pause >nul");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment