Increment problem c++

Hai semua tolong dong saya bingung soal increment c++ ,misal Int i=5,j; J=2*++i + 2*i++;

Klo di hitung 2*++1 = 6*2=12 int menjadi 6, 2*i++ = 6*2=12 int menjadi 7, 12+12=24

Tapi klo di program hasil j yg di buat saya itu 26 bukan 24,mohon penjelasannya secara lengkap kenapa bisa demikian.terima kasih

avatar Sanditn
@Sanditn

1 Kontribusi 0 Poin

Diperbarui 5 tahun yang lalu

2 Jawaban:

Coba kita track ya <pre> Int i=5,j; J=2*++i + 2*i++; </pre>

<pre> Int i=5,j; // i = 5 J=2*++i + 2i++; = J = 2++i, i = 5+1 (6), jadi j = 2*6 + 2 * i (i disini udh berubah jadi 6), ditambah 1, berarti 2 * 7 = 14, 12 + 14 = 26, ga ada yg salah dari code nya </pre>

avatar codingforbabies
@codingforbabies

159 Kontribusi 53 Poin

Dipost 5 tahun yang lalu

increment klo menurut saya itu variable nya akan nambah 1 setiap kali di gunakan; jadi agan ngeloop variable output hasil nya akan nambah seperti ni

<pre> //loop int x = 1 int y = 2 while ( y == 2){
x++; std::cout &lt;&lt; x &lt;&lt; std::endl ; } </pre> maka output nya :

<pre> 1 2 3 4 5 6 7 8 //(dan seterusnya) </pre>

avatar Kafin
@Kafin

2 Kontribusi 2 Poin

Dipost 5 tahun yang lalu

Login untuk ikut Jawaban