Bismillahirahmanirrahim.
Tulisan ini diambil dari Laporan saya di kelas Pemrograman kursus Teknoplasma
- Nama: Muhammad Dimas Akbar
- Distro: Kubuntu 22.04 LTS
- Provinsi: Jawa Barat
- Tanggal: Selasa, 20 Februari 2024
- Pertemuan berapa: 16
- Pengajar: Ade Malsasa Akbar
Tulisan ini dapat diambil dalam bentuk [PDF] dan [Writer]
Program-1.c
|
/* Nama File : OPER1.C*/
#include <stdio.h>
int main ()
{ int x,y;
system("clear"); printf("Masukkan nilai x = "); scanf("%d",&x); printf("Masukkan nilai y = "); scanf("%d",&y); printf("\nNilai %d < %d adalah %d\n", x, y, x < y); printf("\nNilai %d > %d adalah %d\n", x, y, x > y); printf("\nNilai %d == %d adalah %d\n", x, y, x == y); printf("\nNilai %d <= %d adalah %d\n", x, y, x <= y); printf("\nNilai %d >= %d adalah %d\n", x, y, x >= y); printf("\nNilai %d != %d adalah %d\n", x, y, x != y);
getchar();
return 0; } |
/* Analisis Program 1 Bab 3 * Deskripsi : Relational operators * == artinya evaluasi kebenaran, apakah benar x = y * = artinya menyimpan nilai (dari kanan ke kiri) * < artinya kurang dari * > artinya lebih dari * != artinya tidak sama dengan * <= artinya kurang dari sama dengan * >= artinya lebih dari sama dengan */ |
Program-2.c
|
/* Nama File : OPER2.C */
#include <stdio.h>
int main ()
{ int x, y; printf("Masukkan nilai x = "); scanf("%d", &x); printf("Masukkan nilai y = "); scanf("%d", &y);
printf("\nNilai dari %d & %d adalah %d\n", x, y, x & y); printf("\nNilai dari %d | %d adalah %d\n", x, y, x | y); printf("\nNilai dari %d && %d adalah %d\n", x, y, x && y); printf("\nNilai dari %d || %d adalah %d\n", x, y, x || y); printf("\nNilai dari !0 adalah %d\n", !0); printf("\nNilai dari !1 adalah %d\n", !1); printf("\nNilai dari !%d adalah %d\n", x, !x); printf("\nNilai dari !%d adalah %d\n", y, !y);
getchar();
return 0; } |
/* Output * Masukkan nilai x = 25 Masukkan nilai y = 12
Nilai dari 25 & 12 adalah 8
Nilai dari 25 | 12 adalah 29
Nilai dari 25 && 12 adalah 1
Nilai dari 25 12 adalah 1
Nilai dari !0 adalah 1
Nilai dari !1 adalah 0
Nilai dari !25 adalah 0
Nilai dari !12 adalah 0
------------------ (program exited with code: 0) Press return to continue */
/* Analisis program 2 Bab 3 * salah adalah 0 dalam bahasa C * && adalah AND (perkalian), jika TRUE dikali TRUE hasilnya TRUE (output hasil nilainya selain 0) * adalah OR (penjumlahan), jika TRUE ditambah TRUE hasilnya TRUE (output hasil nilainya selain 0) * ! adalah NOT, !0 artinya 1 (TRUE), !1 artinya bukan 1 (FALSE) * Nilai dari !25 adalah 0, 25 adalah TRUE, NOT TRUE (!25) adalah FALSE * Nilai dari !12 adalah 0, 12 adalah TRUE, NOT TRUE (!12) adalah FALSE */ |
Program-3.c
|
/* Nama File : OPER3.C */
#include <stdio.h>
int main ()
{ int x, y, n, m;
printf("Masukkan nilai x ="); scanf("%d", &x); printf("Masukkan nilai y ="); scanf("%d", &y);
n=(x < 10) && (y > 10); m=(x > 10) || (y < 10); printf("\nNilai dari %d < 10 && %d > 10 adalah = %d", x, y, n); printf("\nNilai dari %d > 30 %d < 70 adalah = %d", x, y, m); getchar();
return 0; } |
/* Output Masukkan nilai x =1 Masukkan nilai y =2
Nilai dari 1 < 10 && 2 > 10 adalah = 0 Nilai dari 1 > 30 || 2 < 70 adalah = 1
------------------ (program exited with code: 0) Press return to continue
*/
/* Analisis Program 3 Bab 3 * Deskripsi : Logical Operator * Nilai 1 lebih kecil dari 10 (benar) dikali 2 lebih besar dari 10 (salah) sama dengan 0 * Nilai 1 lebih besar dari 30 (salah) ditambah 2 lebih kecil dari 70 (benar) sama dengan 1 */ |
Program-4.c
|
/* Nama File : OPER.4C */
#include <stdio.h>
int main ()
{ int a, b, x, y;
printf("Masukkan nilai a ="); scanf("%d", &a); printf("Masukkan nilai b ="); scanf("%d", &b); printf("Masukkan nilai x ="); scanf("%d", &x); printf("Masukkan nilai y ="); scanf("%d", &y);
printf("\nNilai y dari y *= x adalah = %d\n", y *= x); printf("\nNilai y dari y /= x adalah = %d\n", y /= x); printf("\nNilai y dari y += x adalah = %d\n", y += x); printf("\nNilai y dari y -= x adalah = %d\n", y -= x); printf("\nNilai y dari y %%= x adalah = %d\n", y %= x); puts(""); printf("\nNilai y dari y *= (a+b) adalah = %d\n", y*=(a+b)); printf("\nNilai y dari y /= (a-b) adalah = %d\n", y/=(a-b)); printf("\nNilai y dari y += (a%%b) adalah = %d\n", y+=(a%b)); printf("\nNilai y dari y -= (a/b) adalah = %d\n", y-=(a/b));
getchar();
return 0; } |
/* Output * Masukkan nilai a =1 Masukkan nilai b =2 Masukkan nilai x =3 Masukkan nilai y =4
Nilai y dari y *= x adalah = 12
Nilai y dari y /= x adalah = 4
Nilai y dari y += x adalah = 7
Nilai y dari y -= x adalah = 4
Nilai y dari y %= x adalah = 1
Nilai y dari y *= (a+b) adalah = 3
Nilai y dari y /= (a-b) adalah = -3
Nilai y dari y += (a%b) adalah = -2
Nilai y dari y -= (a/b) adalah = -2
------------------ (program exited with code: 0) Press return to continue
*/
/* Analisis Program 4 Bab 3 * baris 15 : y = y * x: y = 4 * 3; y = 12 * baris 16 : y = y / x: y = 12 / 3; y = 4 * baris 17 : y = y + x : y = 4 + 3; y = 7 * baris 18 : y = y - x : y = 7 - 3; y = 4 * baris 19 : y = y % x : y = 4 % 3; y = 1 * baris 21 : y = y * ( a + b) : y = 1 * ( 1 + 2 ) = 3 * baris 22 : y = y / ( a - b) : y = 3 * ( 1 - 2 ) = -3 * baris 23 : y = y + ( a % b) : y = -3 + ( 1 % 2 ) = -2 * baris 24 : y = y - ( a / b) : y = -2 - ( 1 / 2 ) = -2 */ |
Program-5.c
|
/* Nama File : OPER5.C */
#include <stdio.h>
int main ()
{ int a, b, c, d;
printf("Masukkan nilai a = "); scanf("%d", &a); printf("Masukkan nilai b = "); scanf("%d", &b); printf("Masukkan nilai c = "); scanf("%d", &c); printf("Masukkan nilai d = "); scanf("%d", &d);
printf("\nNilai a dibanding b adalah a lebih "); printf("%s dari pada b", (a>b)?"BESAR": "kecil"); printf("\nNilai c dibanding d adalah c lebih "); printf("%s dari pada d", (c<d)?"kecil":"BESAR");
getchar();
return 0; } /* Analisis Program 5 Bab 3 |
Program-6.c
|
/* Nama file: relational operators */
#include <stdio.h> int main ()
{ int a, b, c, d, hasil1, hasil2, hasil3, hasil4, hasil5; printf("Masukkan nilai a : "); scanf("%d", &a); printf("Masukkan nilai b : "); scanf("%d", &b); printf("Masukkan nilai c : "); scanf("%d", &c); printf("Masukkan nilai d : "); scanf("%d", &d);
hasil1 = (a>b) && (c<d) || (a==b); hasil2 = (a==b) || (c==d) && (a<b); hasil3 = (a<=c) && (b>=d) || (a==d); hasil4 = (a>=d) || (b<=c) && (c==d); hasil5 = (a!=b) || (c>d) || (a!=d);
printf("\nNilai dari (%d > %d) && (%d < %d) || (%d == %d) adalah %d", a, b, c, d, a, b, hasil1); printf("\nNilai dari (%d == %d) (%d == %d) && (%d < %d) adalah %d", a, b, c, d, a, b, hasil2); printf("\nNilai dari (%d <= %d) && (%d >= %d) || (%d == %d) adalah %d", a, c, b, d, a, d, hasil3); printf("\nNilai dari (%d >= %d) (%d <=%d) && (%d == %d) adalah %d", a, d, b, c, c, d, hasil4); printf("\nNilai dari (%d != %d) (%d > %d) || (%d != %d) adalah %d", a, b, c, d, a, d, hasil5);
getchar();
return 0; } |
/* Output Masukkan nilai beras = 1 Masukkan nilai jagung = 2 Masukkan nilai tepung = 3 Masukkan nilai roti = 4 alamat memori dari variabel beras: 174987880
Nilai beras dibanding jagung adalah beras lebih kecil dari pada jagung Nilai tepung dibanding roti adalah tepung lebih kecil dari pada roti
------------------ (program exited with code: 0) Press return to continue
*/
/* Analisis Program 5 Bab 3 * Deskripsi : conditional operator, dibaca di halaman 74, intinya ada di ? dan :, % yang ada di baris 16 dan 18 adalah string * & hanya ada di scanf, dan digunakan untuk menyimpan (menuju alamat memori), hanya untuk input * printf itu output * baris 14 : debug, usaha untuk menemuka bug/error, baik yang tampak maupun tersembunyi; * baris 19 : evaluasi kebenaran, jika benar beras lebih besar daripada jagung, maka cetak BESAR, jika salah, maka cetak 'kecil' * baris 21 : evaluasi kebenaran, jika benar tepung lebih kecil daripada roti, maka cetak "kecil", jika salah, maka cetak BESAR */ |
Program-7.c
|
/* Nama File : OPER6.C */
#include <stdio.h>
int main ()
{ int a=7, b=9, c=5, d=3; int m, n, hasil; m = (a>b) ? a:b; n = (c<d) ? d:c; hasil = (m>n) ? m:n;
printf("\nVariabel m = (%d>%d) ? %d:%d adalah %d", a,b,a,b,m); printf("\nKarena (%d>%d) maka hasilnya adalah salah, maka nilai variabel m adalah %d\n",a,b,m);
printf("\nVariabel n = (%d<%d) ? %d:%d adalah %d", c,d,d,c,n); printf("\nKarena (%d<%d) maka hasilnya adalah salah, maka nilai variabel n adalah %d\n",d,c,n);
printf("\nVariabel hasil = (m>n) ? m:n = (%d>%d) ? %d:%d adalah %d", m,n,m,n,hasil); printf("\nKarena (%d>%d) maka hasilnya adalah benar, maka nilai variabel hasil adalah %d\n", m,n, hasil);
getchar();
return 0; } |
/* Output Variabel m = (7>9) ? 7:9 adalah 9 // ? pilihan 1 jika benar (7), pilihan 2 jika salah (9) Karena (7>9) maka hasilnya adalah salah, maka nilai variabel m adalah 9
Variabel n = (5<3) ? 3:5 adalah 5 // ? pilihan 1 jika benar (3), pilihan 2 jika salah (5) Karena (3<5) maka hasilnya adalah salah, maka nilai variabel n adalah 5
Variabel hasil = (m>n) ? m:n = (9>5) ? 9:5 adalah 9 // ? pilihan 1 jika benar (9), pilihan 2 jika salah (5) Karena (9>5) maka hasilnya adalah benar, maka nilai variabel hasil adalah 9
------------------ (program exited with code: 0) Press return to continue */
/* Analisis Program 7 Bab 3 * baris 10 - baris 12 : rumus perhitungan * baris 14 - baris 21 : hasil evaluasi perhitungan */ |
Program-8.c
|
/* Nama File : Mencari Nilai Terbesar Menggunakan Conditional Operator.C */
#include <stdio.h>
int main ()
{ int a,b,c,d,x,y,hasil ; printf("masukkan nilai a = ") ; scanf("%d",&a); printf("masukkan nilai b = ") ; scanf("%d",&b); (a>=b) ? (printf("Nilai a >= b\n\n")) : (printf ("Nilai a <= b\n\n")); x = (a>=b) ? a:b ; //evaluasi nilai terbesar pertama
printf("masukkan nilai c = ") ; scanf("%d",&c); printf("masukkan nilai d = ") ; scanf("%d",&d); (c>=d) ? (printf("Nilai c >= d\n\n")) : (printf ("Nilai c <= d\n\n")); y = (c>=d) ? c:d ;//evaluasi nilai terbesar kedua
hasil = (x>=y) ? x: y ; //mengevaluasi mana yang terbesar ( dari pertama dan kedua ) printf("jadi nilai maksimumnya adalah %d",hasil) ;
getchar();
return 0; } |
/* Output masukkan nilai a = 1 masukkan nilai b = 2 Nilai a <= b
masukkan nilai c = 3 masukkan nilai d = 4 Nilai c <= d
jadi nilai maksimumnya adalah 4
------------------ (program exited with code: 0) Press return to continue */
/* Analisis program 8 Bab 3 Deskripsi : Operator Kondisional Baris 12 : x = (1>=2) ? 1:2 ; //evaluasi nilai terbesar pertama // evaluasi apakah benar 1 >= 2, jika benar pilih 1, jika salah pilih 2 // hasil evaluasi adalah salah, maka nilai x = 2 Baris 18 : y = (3>=4) ? 3:4 ;//evaluasi nilai terbesar kedua // evaluasi apakah benar 3 >=4, jika benar pilih 3, jika salah pilih 4 // hasil evaluasi adalah salah, maka nilai y = 4 Baris 22 : hasil = (2>=4) ? 2:4 ; //mengevaluasi mana yang terbesar ( dari pertama dan kedua ) printf("jadi nilai maksimumnya adalah %d",hasil) ; // evaluasi apakah 2>=4, jika benar pilih 2, jika salah pilih 4 // hasil evaluasi adalah salah, maka nilai hasil adalah d */ |
Kesimpulan
== artinya evaluasi kebenaran, apakah benar x = y
!= artinya tidak sama dengan
salah adalah 0 dalam bahasa C
&& adalah AND (perkalian), jika TRUE dikali TRUE hasilnya TRUE (output hasil nilainya selain 0)
|| adalah OR (penjumlahan), jika TRUE ditambah TRUE hasilnya TRUE (output hasil nilainya selain 0)
! adalah NOT, !0 artinya 1 (TRUE), !1 artinya bukan 1 (FALSE)
a += b yaitu a = a+b
a -= b yaitu a = a-b
a *= b yaitu a = a*b
a /= b yaitu a = a/b
a %= b yaitu a = a%b
& hanya ada di scanf, dan digunakan untuk menyimpan (menuju alamat memori), hanya untuk input
printf itu output
debug, usaha untuk menemuka bug/error, baik yang tampak maupun tersembunyi
? adalah ‘if’ ‘else’ dalam versi sederhana dalam evaluasi kebenaran antara dua pilihan, yaitu pilihan pertama dan pilihan kedua. Jika benar, maka pilihan pertama yang menjadi hasil evaluasi, jika salah maka pilihan kedua yang menjadi nilai hasi evaluasi
Sumber Referensi
- https://en.wikibooks.org/wiki/C_Programming
- https://www.programiz.com/
Semoga artikel ini bermanfaat dan barokah bagi seluruh rakyat Indonesia
****
No comments:
Post a Comment