Tuesday, 9 April 2013


Video penjelasan source code program perintah aritmatika, logic , dan unary dapat dilihat pada video dibawah  berikut.

Video penjelasan source code operasi aritmatika,logic, dan unary


Berikut adalah source code pada Tugas II beserta analisis/ penjelasannya dalam bentuk komentar di dalam codenya.

Coding Tugas II  
Source Code:
   1.  #include <stdio.h>
   2.  #include <stdlib.h>

   3.  int main(void){
4.     int i=8,j=5,k;
5.     float x=0.005, y=-0.01, z;

6.     printf("==============================================\n");
7.     printf("                   TUGAS II                   \n\n ");
8.     printf("NAMA   : I NYOMAN YOGA SETYAWAN                        \n ");
9.     printf("NO.REG : 49013017\n");
10.   printf("==============================================\n\n");

11.   printf("Soal 1. (3*i-2*j)%(2*j-4)\n");//Soal 1
12.   printf("--------------------------\n");
13.   k=((3*i)-(2*j))%((2*j)-4);
14.   printf("Output dari (3*i-2*j)%(2*j-4) adalah = %i\n\n",k);
/*Penjelasan Soal 1
=>terdapat inisialisasi nilai awal i=8 dan j=5
=>perintah yang akan dieksekusi yaitu 2*((i/5)+(4*(j-3))%(i+j-2))
1. berikut langkah eksekusi perintah :
2. perintah pertama yang dikerjakan (3*i)-(2*j) = (3*8)-(2*5) = 24-10 = 14
3. perintah kedua yang dikerjakan (2*j)-4 = (2*5)-4 = 10-4 = 6
4. perintah terakhir yang dikerjakan (3*i)-(2*j) % (2*j)-4 = 14 modulus 6  yang menghasilkan output = 2 dan akan tersimpan pada variabel k yg memiliki tipe data integer.
*/

15.   printf("Soal 2. 2*((i/5)+(4*(j-3))%(i+j-2))\n");//Soal 2
16.   printf("-----------------------------------\n");
17.   i=8,j=5;
18.   k=2*((i/5)+(4*(j-3))%(i+j-2));
19.   printf("Output dari 2*((i/5)+(4*(j-3))%(i+j-2)) adalah = %i\n\n",k);
/*Penjelasan Soal 2
=>terdapat inisialisasi nilai awal i=8 dan j=5
=>perintah yang akan dieksekusi yaitu k= 2*((i/5)+(4*(j-3))%(i+j-2))
=>berikut langkah eksekusi perintah :
1. perintah pertama yang dikerjakan (i/5)+(4*(j-3))%(i+j-2) = 1+8 = 9
2. perintah terakhir yang dikerjakan 2*((i/5)+(4*(j-3))%(i+j-2)) = 2*9 yang menghasilkan output = 18 dan akan tersimpan pada variabel k yg memiliki tipe data integer.
*/

20.   printf("Soal 3. (i-3 *j)%( 12 +2 *j )/( x - y )\n");//Soal 3
21.   printf("----------------------------------------\n");
22.   i=8,j=5;
23.   z =(i-3 *j)%(12+2*j)/(x-y);
24.   printf("Output dari (i-3 *j)%(12+2*j)/(x-y) adalah = %f\n\n",z);
/*Penjelasan Soal 3
=>terdapat inisialisasi nilai awal i=8, j=5 yg bertipe integer dan x=0.005, y=-0.01 yg bertipe float
=>perintah yang akan dieksekusi yaitu z =(i-3 *j)%(12+2*j)/(x-y)
=>berikut langkah eksekusi perintah :
1. perintah pertama yang dikerjakan (i-3 *j) = 8-3*5 = 8-15 = -7 
2. perintah kedua yang dikerjakan (12 + 2 * j)= 12 + 2 * 5 = 12 * 10 = 24
3. perintah ketiga yang dikerjakan (x-y) = 0.005-(-0.01) = 0.005 + 0.01 = 0.015
4. perintah keempat yang dikerjakan (i-3 *j) % (12+2*j) = -7 % 24 = -7
5. perintah terakhir yang dikerjakan (i-3 *j) % (12+2*j) / (x-y) = -7 / 0.015
yang menghasilkan output = -466.6666677 dan akan tersimpan pada variabel z yg memiliki tipe data float.
*/

25.   printf("Soal 4. -(i + j )\n");//Soal 4
26.   printf("------------------\n");
27.   i=8,j=5;
28.   k = -(i+j);
29.   printf("Output dari -(i+j) adalah = %i\n\n",k);
/*Penjelasan Soal 4
=>terdapat inisialisasi nilai awal i=8, j=5 yg bertipe integer.
=>perintah yang akan dieksekusi yaitu k = -(i+j)
=>berikut langkah eksekusi perintah :
1. perintah pertama yang dikerjakan (i+j) = 8+5 = 13 
2. perintah terakhir yang dikerjakan -(i+j)
   yang menghasilkan output = -13 dan akan tersimpan pada variabel k yg    memiliki tipe data integer
*/

30.   printf("Soal 5. ++i\n");//Soal 5
31.   printf("------------\n");
32.   i=8;
33.   ++i;
34.   printf("Output dari ++i adalah = %i\n\n",i);
/*Penjelasan Soal 5
=>terdapat inisialisasi nilai awal i=8 yg bertipe integer.
=>perintah yang akan dieksekusi yaitu ++i
=>berikut langkah eksekusi perintah :
1. perintah yang dikerjakan increment 8 atau 8+1 = 9 
yang menghasilkan output = 9 dan akan tersimpan pada variabel i yg memiliki tipe data integer
*/

35.   printf("Soal 6. i++\n");//Soal 6
36.   printf("------------\n");
37.   i=8;
38.   i++;
39.   printf("Output dari i++ adalah = %i\n\n",i);
/*Penjelasan Soal 6
=>terdapat inisialisasi nilai awal i=8 yg bertipe integer.
=>perintah yang akan dieksekusi yaitu i++
=>berikut langkah eksekusi perintah :
1. output yang akan dihasilkan = 9 dan akan tersimpan pada variabel i yg memiliki tipe data integer
*/

40.   printf("Soal 7. --j\n");//Soal 7
41.   printf("------------\n");
42.   j=5;
43.   --j;
44.   printf("Output dari --j adalah = %i\n\n",j);
/*Penjelasan Soal 7
=>terdapat inisialisasi nilai awal j=5 yg bertipe integer.
=>perintah yang akan dieksekusi yaitu --j
=>berikut langkah eksekusi perintah :
1. 5-1 , dimana i yang belum di increment yang menghasilkan output 4
*/

45.   printf("Soal 8. ++x\n");//Soal 8
46.   printf("------------\n");
47.   x=0.005;
48.   ++x;
49.   printf("Output dari ++x adalah = %.3f\n\n",x);
/*Penjelasan Soal 8
=>terdapat inisialisasi nilai awal x=0.005 yg bertipe float.
=>perintah yang akan dieksekusi yaitu ++x
=>berikut langkah eksekusi perintah :
1. perintah yang akan dikerjakan x+1 = 0.005 + 1
yang menghasilkan output 1.005
*/

50.   printf("Soal 9. y--\n");//Soal 9
51.   printf("------------\n");
52.   y=-0.01;
53.   y--;
54.   printf("Output dari y-- adalah = %.2f\n\n",y);
/*Penjelasan Soal 9
=>terdapat inisialisasi nilai awal y=-0.01 yg bertipe float.
=>perintah yang akan dieksekusi yaitu y--
=>berikut langkah eksekusi perintah :
1. perintah yang akan dikerjakan y-1 = -0.01 - 1
yang menghasilkan output -1.01
*/

55.   printf("Soal 10. i <= j\n");//Soal 10
56.   printf("----------------\n");
57.   i=8,j=5;
58.   printf("Output dari i <= j adalah = %i\n\n",i <= j);
/*Penjelasan Soal 10
=>terdapat inisialisasi nilai awal i=8,j=5 yg bertipe integer.
=>perintah yang akan dieksekusi yaitu i <= j
=>berikut langkah eksekusi perintah :
1. Melakukan perbandingan apakah nilai i=8 lebih kecil atau sama dengan nilai  j=5
2. Keadaan salah yang akan menghasilkan output 0 (false)
59.   */

60.   printf("Soal 11. x >= 0\n");//Soal 11
61.   printf("-------------------\n");
62.   x=0.005;
63.   printf("Output dari x >= 0 adalah = %i\n\n",x >= 0);
/*Penjelasan Soal 11
=>terdapat inisialisasi nilai awal x=0.005 yg bertipe float.
=>perintah yang akan dieksekusi yaitu x >= 0
=>berikut langkah eksekusi perintah :
1. Melakukan perbandingan apakah nilai x=0.005 lebih besar atau sama dengan 0
Keadaan benar yang akan menghasilkan output 1 (true)
*/

64.   printf("Soal 12. x < y\n");//Soal 12
65.   printf("----------------\n");
66.   x=0.005,y=-0.01;
67.   printf("Output dari x < y adalah = %i\n\n",x < y);
/*Penjelasan Soal 12
=>terdapat inisialisasi nilai awal x=0.005,y=-0.01 yg bertipe float.
=>perintah yang akan dieksekusi yaitu mengecek apakah x < y
=>berikut langkah eksekusi perintah :
1. Melakukan perbandingan apakah nilai x=0.005 kurang dari nilai y=-0.01
2. Keadaan salah karena nilai x lebih besar dari nilai y yang akan menghasilkan output 0 (false)
*/

68.   printf("Soal 13. j != 6\n");//Soal 13
69.   printf("----------------\n");
70.   j=5;
71.   printf("Output dari j != 6 adalah = %i\n\n",j != 6);
/*Penjelasan Soal 13
=>terdapat inisialisasi nilai awal j=5 yg bertipe integer.
=>perintah yang akan dieksekusi yaitu j != 6
=>berikut langkah eksekusi perintah :
1. Melakukan perbandingan apakah nilai j=5 tidak sama dengan 6
2. Keadaan benar  yang akan menghasilkan output 1 (true)
*/
72.   printf("Soal 14. (2 * x + y) == 0\n");//Soal 14
73.   printf("---------------------------\n");
74.   x=0.005,y=-0.01;
75.   printf("Output dari (2 * x + y)==0 adalah = %i\n\n",(2*x+y==0));
/*Penjelasan Soal 14
=>terdapat inisialisasi nilai awal x=0.005,y=-0.01 yg bertipe float.
=>perintah yang akan dieksekusi yaitu mengecek apakah (2 * x + y)==0
=>berikut langkah eksekusi perintah :
1. Melakukan perhitungan nilai dari (2 * x + y) = 2*0.005*-0.01 = 0
2. Melakukan perbandingan apakah nilai perhitungan (2 * x + y)  sama dengan 0
3. Keadaan benar karena 0=0  yang akan menghasilkan output 1 (true)
*/

76.   printf("Soal 15. 2*x+(y==0)\n");//Soal 15
77.   printf("--------------------\n");
78.   x=0.005, y=-0.01;
79.   printf("Output dari 2*x+(y==0) adalah = %.2f\n\n",2*x+(y==0));
/*Penjelasan Soal 15
=>terdapat inisialisasi nilai awal x=0.005,y=-0.01 yg bertipe float.
=>perintah yang akan dieksekusi yaitu mencari perhitungan 2*x+(y==0)
=>berikut langkah eksekusi perintah :
1. Melakukan perhitungan nilai dari 2*x = 2*0.005 = 0.01
2. Melakukan perbandingan apakah nilai y=-0.01 sama dengan 0
3. Keadaan salah yang akan menghasilkan output false yang bernilai 0 pada y==0
4. Melakukan perhitungan 0.01+0 = 0.01.
*/

80.   printf("Soal 16. 2*x+y==0\n");//Soal 16
81.   printf("------------------\n");
82.   x=0.005, y=-0.01;
83.   printf("Output dari 2*x+y==0 adalah = %.0f\n\n",2*x+y==0);
/*Penjelasan Soal 16
=>terdapat inisialisasi nilai awal x=0.005,y=-0.01 yg bertipe float.
=>perintah yang akan dieksekusi yaitu mencari nilai kebenaran 2*x+y==0
=>berikut langkah eksekusi perintah :
1. Melakukan perhitungan nilai dari 2*x+y = 2*0.005+-0.01 = -0.01
2. Melakukan perbandingan apakah nilai 2*x+y = -0.01 sama dengan 0
3. Keadaan salah yang akan menghasilkan output false yang bernilai 0
*/

84.   printf("Soal 17. !(i<=j)\n");//Soal 17
85.   printf("-----------------\n");
86.   i=8,j=5;
87.   printf("Output dari !(i<=j) adalah = %i\n\n",!(i<=j));
/*Penjelasan Soal 17
=>terdapat inisialisasi nilai awal i=8,j=5 yg bertipe integer.
=>perintah yang akan dieksekusi yaitu mencari nilai kebalikan dari nilai kebenaran (i<=j)
=>berikut langkah eksekusi perintah :
1. Melakukan perbandingan apakah nilai nilai i=8 kurang dari atau sama dengan nilai j=5.
2. Keadaan salah yang menghasilkan nilai perbandingan 0
3. Membalikkan nilai 0 yang menghasilkan output nilai 1
*/

88.   printf("Soal 18. !(x>0)\n");//Soal 18
89.   printf("-----------------\n");
90.   x=0.005;
91.   printf("Output dari !(x>0) adalah = %i\n\n",!(x>0));
/*Penjelasan Soal 18
=>terdapat inisialisasi nilai awal x=0.005 bertipe float.
=>perintah yang akan dieksekusi yaitu mencari nilai kebalikan dari nilai kebenaran x>0
=>berikut langkah eksekusi perintah :
1. Melakukan perbandingan apakah nilai x=0.005 lebih besar dari 0.
2. Keadaan benar yang menghasilkan nilai perbandingan 1
3. Membalikkan nilai perbandingan 1 yang menghasilkan output nilai 0
*/

92.   printf("Soal 19. (i > 0) && ( j < 5)\n");//Soal 19
93.   printf("-----------------------------\n");
94.   i=8,j=5;
95.   printf("Output dari (i > 0) && ( j < 5) adalah = %i\n\n",(i > 0) && ( j < 5));
/*Penjelasan Soal 19
=>terdapat inisialisasi nilai awal i=8,j=5 yang bertipe integer.
=>perintah yang akan dieksekusi yaitu mencari nilai kebenaran dari (i > 0) && ( j < 5)
=>berikut langkah eksekusi perintah :
1. Melakukan perbandingan apakah nilai i=8 lebih besar dari 0, dan menghasilkan nilai kebenaran 1(true).
2. Melakukan perbandingan apakah nilai j=5 kurang dari 5, dan menghasilkan nilai kebenaran 0 (false).
3. Mengecek apakah kedua perbandingan bernilai true (1)
4. tidak, karena terdapat salah satu nilai perbandingan false (0), yang dapat mengeluarkan nilai flase (0)
*/

96.   printf("Soal 20. (i > 0)|| (j < 5)\n");//Soal 20
97.   printf("-----------------------------\n");
98.   i=8,j=5;
99.   printf("Output dari (i > 0)|| (j < 5) adalah = %i\n\n",(i > 0)|| (j < 5));
/*Penjelasan Soal 20
=>terdapat inisialisasi nilai awal i=8,j=5 yang bertipe integer.
=>perintah yang akan dieksekusi yaitu mencari nilai kebenaran dari (i > 0)|| (j < 5)
=>berikut langkah eksekusi perintah :
1. Melakukan perbandingan apakah nilai i=8 lebih besar dari 0, dan menghasilkan nilai kebenaran 1(true).
2. Melakukan perbandingan apakah nilai j=5 kurang dari 5, dan menghasilkan nilai kebenaran 0 (false).
3. Mengecek apakah salah satu nilai perbandingan bernilai true (1)
4. iya, karena terdapat salah satu nilai perbandingan bernilai true (1), yang dapat mengeluarkan nilai true (1)
*/
100.  printf("Soal 21. (x > y) && (i > 0)||( j < 5)\n");//Soal 21
101.  printf("--------------------------------------\n");
102.  i=8,j=5,x=0.005,y=-0.01;
103.  printf("Hasil dari (x > y) && (i > 0)||( j < 5) = %i\n\n",(x > y) && (i > 0)||( j < 5));
/*Penjelasan Soal 21
=>terdapat inisialisasi nilai awal i=8,j=5 yang bertipe integer dan x=0.005,y=-0.01 yang bertipe float.
=>perintah yang akan dieksekusi yaitu mencari nilai kebenaran (x > y) && (i > 0)||( j < 5)
=>berikut langkah eksekusi perintah :
1. Melakukan perbandingan apakah nilai x=0.005 lebih besar dari nilai y=-0.01, dan menghasilkan nilai kebenaran 1(true).
2. Melakukan perbandingan apakah nilai i=8 lebih besar dari 0, dan menghasilkan nilai kebenaran 1 (true).
3. Melakukan perbandingan apakah nilai j=5 kurang dari 5, dan menghasilkan nilai 0 (false).
4. Mengecek nilai keluaran dari nilai perbandingan 1 && 1 || 0
5. Karena salah satu bernilai 1 (true) maka nilai outputnya adalah 1(true)
*/

104.  printf("Soal 22. (x > y) && (i > 0) && ( j < 5 )\n");//Soal 22
105.  printf("----------------------------------------\n");
106.  i=8,j=5,x=0.005,y=-0.01;
107.  printf("Output dari (x > y) && (i > 0) && ( j < 5 ) adalah = %i\n\n",(x > y)&& (i > 0) && ( j < 5 ));
/*Penjelasan Soal 22
=>terdapat inisialisasi nilai awal i=8,j=5 yang bertipe integer dan x=0.005,y=-0.01 yang bertipe float.
=>perintah yang akan dieksekusi yaitu mencari nilai kebenaran (x > y) && (i > 0) && ( j < 5 )
=>berikut langkah eksekusi perintah :
1. Melakukan perbandingan apakah nilai x=0.005 lebih besar dari nilai y=-0.01, dan menghasilkan nilai kebenaran 1(true).
2. Melakukan perbandingan apakah nilai i=8 lebih besar dari 0, dan menghasilkan nilai kebenaran 1 (true).
3. Melakukan perbandingan apakah nilai j=5 kurang dari 5, dan menghasilkan nilai 0 (false).
4. Mengecek nilai keluaran dari nilai perbandingan 1 && 1 && 0
Karena salah satu bernilai 0 (false) maka nilai outputnya adalah 0(false)
*/
108.  printf("Soal 23. k = (i + j )\n");//Soal 23
109.  printf("----------------------\n");
110.  i=8,j=5;
111.  printf("Output dari k = (i + j ) adalah = %i\n\n",k = (i + j));
/*Penjelasan Soal 23
=>terdapat inisialisasi nilai awal i=8,j=5 yang bertipe integer.
=>perintah yang akan dieksekusi yaitu menghitung nilai (i + j ) yang akan tersimpan pada variabel k yang bertipe integer
=>berikut langkah eksekusi perintah :
1. Melakukan perintah perhitungan i + j = 8 + 5 = 13
2. output nilai 13 akan tersimpan pada variabel k yang memiliki tipe data integer
*/

112.  printf("Soal 24. y -= x\n");//Soal 24
113.  printf("-----------------\n");
114.  x=0.005, y=-0.01;
115.  printf("Output dari y-=x adalah = %.3f\n\n",y-= x);
/*Penjelasan Soal 24
=>terdapat inisialisasi nilai awal x=0.005, y=-0.01 yang bertipe float.
=>perintah yang akan dieksekusi yaitu menghitung nilai keluaran dari operasi y-=x
=>berikut langkah eksekusi perintah :
1. Melakukan perintah perhitungan y-=x = y-x = -0.01-0.005 = -0.015
output nilai -0.015 akan dikeluarkan ke layar
*/
116.  printf("Soal 25. z = ( x + y)\n");//Soal 25
117.  printf("----------------------\n");
118.  x=0.005, y=-0.01;
119.  printf("Output dari z = ( x + y) adalah = %.3f\n\n",z = ( x + y));
/*Penjelasan Soal 25
=>terdapat inisialisasi nilai awal x=0.005, y=-0.01 yang bertipe float.
=>perintah yang akan dieksekusi yaitu menghitung nilai keluaran dari operasi z = ( x + y)
=>berikut langkah eksekusi perintah :
1. Melakukan perintah perhitungan pada operasi  ( x + y) = 0.005+(-0.01) = -0.005
2. output nilai -0.005 akan tersimpan pada variabel z yang bertipe float dan dikeluarkan ke layar.
*/

120.  printf("Soal 26. x *= 2\n");//Soal 26
121.  printf("----------------------\n");
122.  x=0.005;
123.  printf("Output dari x *= 2 adalah = %.2f\n\n",x *= 2);
/*Penjelasan Soal 26
=>terdapat inisialisasi nilai awal x=0.005 yang bertipe float.
=>perintah yang akan dieksekusi yaitu menghitung nilai keluaran dari operasi x *= 2
=>berikut langkah eksekusi perintah :
1. Melakukan perintah perhitungan pada operasi  x *= 2 = x*2 = 0.005*2 = 0.01
2. output nilai 0.01 akan dikeluarkan ke layar.
*/

124.  printf("Soal 27. k = ( x + y)\n");//Soal 27
125.  printf("----------------------\n");
126.  x=0.005, y=-0.01;
127.  printf("Output dari k = ( x + y) adalah = %i\n\n",k = ( x + y));
/*Penjelasan Soal 27
=>terdapat inisialisasi nilai awal x=0.005,y=-0.01 yang bertipe float.
=>perintah yang akan dieksekusi yaitu menghitung nilai keluaran dari operasi k = ( x + y)
=>berikut langkah eksekusi perintah :
1. Melakukan perintah perhitungan pada operasi  ( x + y) = 0.005 + (-0.01) = -0.005
2. output nilai -0.005 akan tersimpan pada variabel k yg memiliki tipe data integer dan dikeluarkan ke layar.
*/

128.  printf("Soal 28. i %= j\n");//Soal 28
129.  printf("----------------------\n");
130.  i=8,j=5;
131.  printf("Output dari i % = j adalah = %i\n\n",i %= j);
/*Penjelasan Soal 28
=>terdapat inisialisasi nilai awal i=8,j=5 yang bertipe integer.
=>perintah yang akan dieksekusi yaitu menghitung nilai keluaran dari operasi i % = j
=>berikut langkah eksekusi perintah :
1. Melakukan perintah perhitungan pada operasi  i % = j = i % j = 8 modulus 5 = 3
2. output nilai 3 akan dikeluarkan ke layar.
*/

132.  printf("Soal 29. i+= (j -2)\n");//Soal 29
133.  printf("----------------\n");
134.  i=8,j=5;
135.  printf("Output dari i+= (j -2) adalah = %i\n\n",i+= (j -2));
/*Penjelasan Soal 29
=>terdapat inisialisasi nilai awal i=8,j=5 yang bertipe integer.
=>perintah yang akan dieksekusi yaitu menghitung nilai keluaran dari operasi i+= (j -2)
=>berikut langkah eksekusi perintah :
1. Melakukan perintah perhitungan pada operasi  i+= (j -2) = i + (j-2) = 8+(5-2)=11
2. output nilai 11 akan dikeluarkan ke layar.
*/

136.  printf("Soal 30. k = i = j\n");//Soal 30
137.  printf("-------------------\n");
138.  i=8,j=5;
139.  printf("Output dari k = i = j adalah = %i\n\n",k = i = j);
/*Penjelasan Soal 30
=>terdapat inisialisasi nilai awal i=8,j=5 yang bertipe integer.
=>perintah yang akan dieksekusi yaitu menghitung nilai keluaran dari operasi k = i = j
=>berikut langkah eksekusi perintah :
1. Mengisi nilai k dengan i kemudian mengisi nilai i dengan nilai j
2. Output nilai baru yang tersimpan pada variabel k yaitu nilai j = 5
*/

140.  printf("Soal 31. k = ( j ==5) ? i : j\n");//Soal 31
141.  printf("------------------------------\n");
142.  i=8,j=5;
143.  printf("Output dari k = ( j ==5) ? i : j adalah = %i\n\n",k = ( j ==5) ? i : j);
/*Penjelasan Soal 31
=>terdapat inisialisasi nilai awal i=8,j=5 yang bertipe integer.
=>perintah yang akan dieksekusi yaitu k=( j ==5) ? i : j
=>berikut langkah eksekusi perintah :
1. Mengecek apakah nilai j = 5. j sama dengan 5 maka bernilai benar (1)
2. Jika bernilai benar maka output adalah i=8. dan jika bernilai salah maka output adalah j=5
3. nilainya benar maka outputnya adalah nilai pada i yaitu 8.
*/

144.  printf("Soal 32. k = ( j > 5 ) ? i : j\n");//Soal 32
145.  printf("------------------------------\n");
146.  i=8,j=5;
147.  printf("Output dari k = ( j > 5 ) ? i : j adalah = %i\n\n",k = ( j > 5 ) ? i : j);
/*Penjelasan Soal 32
=>terdapat inisialisasi nilai awal i=8,j=5 yang bertipe integer.
=>perintah yang akan dieksekusi yaitu k = ( j > 5 ) ? i : j
=>berikut langkah eksekusi perintah :
1. Mengecek apakah nilai j = 5 lebih besar dari 5 . Ini bernilai salah.
2. Karena mendapat nilai perbandingan 0 atau salah, jadi outputnya adalah nilai j yaitu 5.
*/

148.  printf("Soal 33. z = ( x >= 0) ? x : 0\n");//Soal 33
149.  printf("------------------------------\n");
150.  x=0.005;
151.  printf("Output dari z = ( x >= 0) ? x : 0 adalah = %.3f\n\n",z = ( x >= 0) ? x : 0);
/*Penjelasan Soal 33
=>terdapat inisialisasi nilai awal x=0.005 yang bertipe float.
=>perintah yang akan dieksekusi yaitu z = ( x >= 0) ? x : 0
=>berikut langkah eksekusi perintah :
1. Mengecek apakah nilai x=0.005 lebih besar atau samadengan 0. Ini bernilai benar.
2. Karena mendapat nilai perbandingan 1 atau benar, jadi outputnya adalah nilai x yaitu 0.005.
*/

152.  printf("Soal 34. z = ( y >= 0) ? y : 0\n");//Soal 34
153.  printf("------------------------------\n");
154.  y=-0.01;
155.  printf("Output dari z = ( y >= 0) ? y : 0 adalah = %f\n\n",z = ( y >= 0) ? y : 0);
/*Penjelasan Soal 34
=>terdapat inisialisasi nilai awal y=-0.01 yang bertipe float.
=>perintah yang akan dieksekusi yaitu z = ( y >= 0) ? y : 0
=>berikut langkah eksekusi perintah :
1. Mengecek apakah nilai y=-0.01 lebih besar atau samadengan 0. Ini bernilai salah.
2. Karena mendapat nilai perbandingan 0 atau salah, jadi outputnya adalah 0.
*/

156.  printf("Soal 35. i -= ( j > 0) ? j : 0\n");//Soal 35
157.  printf("------------------------------\n");
158.  i=8,j=5;
159.  printf("Output dari i -= ( j > 0) ? j : 0 adalah = %i\n\n",i -= ( j > 0) ? j : 0);
/*Penjelasan Soal 35
=>terdapat inisialisasi nilai awal i=8,j=5 yang bertipe integer.
=>perintah yang akan dieksekusi yaitu i -= ( j > 0) ? j : 0
=>berikut langkah eksekusi perintah :
1. Mengecek apakah nilai j=5 lebih besar atau samadengan 0. Ini bernilai benar maka nilai j pada ( j > 0) ? j : 0 yaitu 5 .
2. Mengerjakan perintah i-=( j > 0) ini samadenga i = i-5 = i = 8-5 =3.
3. Output yang akan dikeluarkan adalah 3.
*/

160.  system("pause");
161.   
162.  return 0;
   163.  }






Berikut adalah source code latihan pada modul II.                                 
                           Coding Perbaikan Latihan a
Source Code Sebelum Perbaikan
Source Code Setelah Perbaikan

      1.  int b;
      2.  b = 2*3;
      3.  printf ("2x3 = %d\n",b);
      4.  system("pause");
      5.  return (0);
  6.  }

1.  #include <stdio.h>
2.  int main(void)
3.  {
4.  int b;
5.  b = 2*3;
6.  printf ("2x3 = %d\n",b);
7.  system("pause");
8.  return (0);
9.  }


                                                            Coding Perbaikan Latihan b
Source Code Sebelum Perbaikan
Source Code Setelah Perbaikan

      1.  a = 2-5)*4;
      2.  printf ("2-5x4 = -12 sesuai dengan hasil perhitungan
      3.  berikut: %d\n",a);
      4.  system("pause");
   5.  return (0);

1.  #include <stdio.h>

2.  int main(void)
3.  {
4.  int a;
5.  a = (2-5)*4;
6.  printf("2-5x4 = -12 sesuai dengan hasil perhitungan berikut: %d\n",a);
7.  system("pause");
8.  return (0);
9.  }



                                                              Coding Perbaikan Latihan c
Source Code Sebelum Perbaikan
Source Code Setelah Perbaikan

      1.  int a;
      2.  a = (24/2%8+2*5-2));
      3.  printf ("24/2%8+2*5-2 = 10 sesuai dengan hasil perhitungan 1.  berikut: %d\n",a);

1.  #include <stdio.h>
2.  int main(void)
3.  {
4.  int a;
5.  a = ((24/2)%(8+2*5-2));
6.  printf ("24/2%8+2*5-2 = 10 sesuai dengan hasil perhitungan berikut: %d\n",a);
7.  system("pause");
8.  return(0);
9.  }



                                                          Coding Perbaikan Latihan d
Source Code Sebelum Perbaikan
Source Code Setelah Perbaikan

      1.  int a = 4, b = 12;
      2.  printf ("Apakah a > b ? (Ket: 1 = Ya, 0 = Tidak):\n%d\n",c = a
      3.  <b);
  
1.  #include <stdio.h>

2.  int main(void)
3.  {
4.  int a = 4, b = 12, c;
5.  printf ("Apakah a > b ? (Ket: 1 = Ya, 0 = Tidak):\n%d\n",c = a < b);

6.  system("pause");
7.  return(0);
8.  }  



                                                                        Coding Latihan e
Source Code Latihan e


     1.  int main(void)
     2.  {
     3.  float a,b;
     4.  printf("Inputkan nilai a : ");
     5.  scanf("%f",&a);
     6.  b = 3.5;
     7.  a += 5;
     8.  b *= (a-2);
     9.  printf("Nilai a = %.2f dan nilai b = %.2f\n",a,b);

     10. system("pause");
     11. return(0);
     12. }


                                                                                 Coding Latihan f
Source Code Latihan f

    1.  #include <stdio.h>

    2.  int main(void)
    3.  {
    4.  int k;

      // incremental operator (++)
      // ++k
    5.  printf("incremental operator (++)\n");
    6.  printf("++k\n");
    7.  printf("k = 5;\n");
    8. k = 5;
    9. printf("k = %d\n", k);  //k = 5
   10. printf ("k = %d\n", ++k); //k = 6
   11. printf("k = %d\n", k);  //k = 6
   12. printf("\n");

    // k++
   13. printf("k++\n");
   14. printf("k = 5;\n");
   15. k = 5;
   16. printf("k = %d\n", k); //k = 5
   17. printf ("k = %d\n", k++); //k = 5
   18. printf("k = %d\n", k); //k = 6
   19. printf("\n\n");


    // decremental operator (--)
   // --k
   20. printf("decremental operator (--)\n");
   21. printf("--k\n");
   22. printf("k = 5;\n");
   23. k = 5;
   24. printf("k = %d\n", k);
   25. printf ("k = %d\n", --k);
   26. printf("k = %d\n", k);
   27. printf("\n");

   // k--
   28. printf("k--\n");
   29. printf("k = 12;\n");
   30. k = 12;
   31. printf("k = %d\n", k);
   32. printf ("k = %d\n", k--);
   33. printf("k = %d\n", k);

   34. system("pause");
   35. return(0);

   36. }


                                                          Coding Perbaikan Latihan g
Source Code Sebelum Perbaikan
Source Code Setelah Perbaikan
       1.  int a = 4, b = 12;
       2.  printf ("Apakah a > b ? (Ket: 1 = Ya, 0 = Tidak):\n%d\n",c = a <
       3.  b);
1.  #include <stdio.h>
2.  int main(void)
3.  {
4.  int a = 4, b = 12, c;
5.  printf("Apakah a > b ? (Ket: 1 = Ya, 0 = Tidak):\n%d\n",c = a < b);
6.  system("pause");
7.  return(0);
8.  }



                                                          Coding Perbaikan Latihan h
Source Code Sebelum Perbaikan
Source Code Setelah Perbaikan

       1.  int a = 4, b = 12, c = 10, d;
       2.  d = (a && b) < c;
       3.  printf ("Apakah a dan b < c? (Ket: 1 = Ya, 0 = tidak):\n%d\n",d);

1.  #include <stdio.h>

2.  int main(void)
3.  {

4.  int a = 4, b = 12, c = 10, d;
5.  d = (a && b) < c;
6.  printf ("Apakah a dan b < c? (Ket: 1 = Ya, 0 = tidak):\n%d\n",d);

7.  system("pause");
8.  return(0);
9.  }




Coding Perbaikan Latihan i


Source Code Sebelum Perbaikan
Source Code Setelah Perbaikan



      1.  int a = 4, b = 12, c = 10, d;
      2.  d = (a || b) < c;
      3.  printf ("Apakah a dan b < c? (Ket: 1 = Ya, 0 = tidak):\n%d\n",d);

1.  #include <stdio.h>

2.  int main(void)
3.  {

4.  int a = 4, b = 12, c = 10, d;
5.  d = (a || b) < c;
6.  printf ("Apakah a dan b < c? (Ket: 1 = Ya, 0 = tidak):\n%d\n",d);

7.  system("pause");
8.  return(0);
9.  }








0 comments:

Post a Comment