Skip to content

Instantly share code, notes, and snippets.

@novalagung
Last active June 23, 2023 01:13
Show Gist options
  • Save novalagung/7912690 to your computer and use it in GitHub Desktop.
Save novalagung/7912690 to your computer and use it in GitHub Desktop.
// mengunakan library stdio,
// agar bisa memanfaatkan fungsi standar i/o (input output)
// salah duanya seperti fungsi scanf() dan printf()
#include "stdio.h"
// fungsi utama (main) menggunakan tipe data int,
// dikarenakan beberapa IDE secara "strict" meminta
// fungsi main harus memiliki nilai balik (return value).
int main() {
// variabel untuk menampung pilihan opsi.
int pilih;
// endless loop atau perulangan tanpa henti.
// perulangan ini hanya akan berhenti jika pengguna menginputkan angka 0.
// untuk lebih lanjut lihat baris 33-38.
while (1 == 1) {
// menampilkan judul program.
printf("======= Program Penghitung luas ========\n");
printf("| |\n");
printf("| 1. Menghitung Luas Persegi Panjang |\n");
printf("| 2. Menghitung Luas Persegi |\n");
printf("| 0. Selesai |\n");
printf("| |\n");
printf("========================================\n\n");
printf("Pilih opsi 1, 2, atau 0 ? ");
// opsi yg dipilih user akan ditampung di variabel "pilih".
scanf("%d", &pilih);
printf("\n");
if (pilih < 0) {
// jika inputan user adalah angka negatif,
// maka program akan diulang (kembali ke baris 17)
// sekaligus menampilkan pesan berikut:
printf("Ma'af tidak menerima inputan berupa nilai negatif\n");
} else if (pilih == 0) {
// jika inputan user adalah angka 0, maka perulangan dihentikan.
break;
} else if (pilih == 1) {
// jika inputan user adalah angka 1, maka akan
// mengoperasikan program "Menghitung Luas Persegi Panjang".
// deklarasi variabel panjang, lebar, dan luas.
int panjang, lebar, luas;
printf("=== Menghitung Luas Persegi Panjang ====\n\n");
// menampung inputan variabel panjang.
printf("Inputkan panjang persegi panjang : ");
scanf("%d", &panjang);
// menampung inputan variabel lebar.
printf("Inputkan lebar persegi panjang : ");
scanf("%d", &lebar);
printf("\n");
if (panjang <= 0 || lebar <= 0) {
// jika salah satu atau kedua nilai dari "panjang ATAU lebar"
// adalah negatif atau nol,
// maka penghitungan akan dibatalkan
// dan program akan diulang (kembali ke baris 17)
// sekaligus menampilkan pesan berikut:
printf("Ma'af tidak menerima nilai negatif ataupun nol\n");
} else if (lebar > panjang) {
// jika nilai dari lebar lebih dari panjang,
// maka penghitungan akan dibatalkan
// dan program akan diulang (kembali ke baris 17)
// sekaligus menampilkan pesan berikut:
printf("Ma'af panjang harus lebih besar dari lebar\n");
} else {
// jika inputan user sesuai kriteria,
// maka proses penghitungan luas akan dijalankan.
// dan sekaligus program akan diulang (kembali ke baris 17)
luas = panjang * lebar;
printf("Luas persegi panjang : %d\n", luas);
}
} else if (pilih == 2) {
// jika inputan user adalah angka 2, maka akan
// mengoperasikan program "Menghitung Luas Persegi".
// deklarasi variabel sisi, dan luas.
int sisi, luas;
printf("Menghitung luas persegi\n");
// menampung inputan variabel sisi.
printf("Sisi : ");
scanf("%d", &sisi);
if (sisi <= 0) {
// jika nilai dari variabel sisi adalah negatif,
// maka penghitungan akan dibatalkan
// dan program akan diulang (kembali ke baris 17)
// sekaligus menampilkan pesan berikut:
printf("Ma'af tidak menerima nilai negatif ataupun nol\n");
} else {
// jika inputan user sesuai kriteria,
// maka proses penghitungan luas akan dijalankan.
// dan sekaligus program akan diulang (kembali ke baris 17)
luas = sisi * sisi;
printf("Luas persegi : %d\n", luas);
}
} else {
// jika user menginputkan angka diluar kriteria di atas,
// maka program akan diulang (kembali ke baris 17)
// sekaligus menampilkan pesan berikut:
printf("Ma'af pilihan salah, silakan pilih opsi ada\n");
}
printf("\n\n");
// program ini tak butuh continue, karena semua proses bisnis sudah
// terbungkus dalam tiap blok seleksi kondisi.
// namun dikarenakan perintah tugasnya harus menggunakan continue
// maka saya taruh disini.
continue;
}
// jika perulangan berhenti,
// maka akan menampilkan beberapa pesan sebelum program dihentikan.
printf("Selamat tinggal kawan\n");
printf("Jangan lupa belajar\n\n");
printf("Good luck, see you next time\n\n");
printf("Noval Agung Prayogo / 12121021 / SI");
// nilai balik dari fungsi main yang bertipe int.
return 0;
}
@novalagung
Copy link
Author

example output

@dita29
Copy link

dita29 commented Jun 23, 2023

2 kali 2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment