Ulaz i izlaz podataka, naredba pridruživanja

2. Operator pridruživanja

Svaki programski jezik ima oprator pridruživanja. On varijabli s lijeve strane pridružuje vrijednost izraza s desne strane.

U Pythonu i C-u operator pridruživanja označava se znakom =.

Napomena:

U sljedećim lekcijama pojavit će se naredbe u kojima ćemo ispitivati jednakost izraza s lijeve i desne strane (primjerice, je li a+b jednako c+d). Za ispitivanje jednakosti koristit ćemo relacijski operator == i pisati a+b==c+d.
Da bi program mogao razlikovati pridruživanje od ispitivanja jednakosti, oni moraju biti drugačijeg oblika. Zbog toga  za naredbu pridruživanja koristimo znak =, a za ispitivanje jednakosti znak ==.

Primjer 1:

Naredbom a = 5, broj pet "pridružujemo" varijabli a. U stvari, u memorijsku lokaciju koju smo nazvali a upisujemo broj 5.

Primjer 2:

Naredba x = a + 2, najprije će iz memorijske lokacije imena a "dohvatiti" njezinu vrijednost (neka je to vrijednost iz prethodnog primjera, a = 5). Zatim će tu vrijednost (broj 5) zbrojiti  brojem 2 i na kraju će dobiveni rezultat spremiti u memoriju, na mjesto imena x.

Primjer 3:

Naredba x = x + 4 najprije će iz memorije dohvatiti vrijednost varijable x (neka je to 7), zatim  tom broju dodati broj 4. Dobiveni rezultat (11) spremiti će kao vrijednost varijable x (preko stare vrijednosti 7).

Primjer 4:

Pogledajmo koju će vrijednost imati varijabla x nakon izvođenja sljedećega dijela programa?

x = 3;
y = 2;
x = x – 3 * y;
y = -y;
x = x + y;

U početku je vrijednost varijable x jednaka 3, a vrijednost varijable y je 2.
U sljedećem koraku (x  = x – 3 * y;) izračuna se izraz x-3*y (3-3*2=3-6=-3) i dobivena vrijednost "spremi se" u varijablu x (x=-3).
Sljedeća naredba (y = -y;) vrijednost varijable y koja je bila 2 zamjenjuje sa -2.
I na kraju, (x = x + y;) izračuna se vrijednost x+y (-3-2=-5) i rezultat se sprema u varijablu x. Tako je odgovor na pitanje postavljeno na početku primjera: Varijabla x nakon izvođenja sljedećeg dijela programa imat će vrijednost -5.