Rabu, 10 Maret 2021

Program Tugas Praktikum

Edit Posted by with No comments

 #include<iostream>

#include<conio.h>

#include<string.h>

#include<stdio.h>

#include<math.h>


using namespace std;


char mainmenu();

char menu();

void perkenalan();

void waktu();

void btm();

void keluar();


char mainmenu(){

 system("cls");

 char pilih;

 cout<<"\t\t_____PRAKTIKUM PEMROGRAMAN DASAR_____"<<endl;

 cout<<"1. Tugas Praktikum"<<endl;

 cout<<"2. Keluar"<<endl;

 cout<<"Masukkan Pilihan Anda = ";cin>>pilih;

 if(pilih=='1')menu();

 if(pilih=='2')keluar();

}


char menu(){

 system("cls");

 char pil;

 cout<<"Pilih Salah Satu"<<endl;

 cout<<"1. Perkenalan"<<endl;

 cout<<"2. Menghitung Waktu"<<endl;

 cout<<"3. Selesai"<<endl;

 cout<<"Masukkan Pilahan Anda = ";cin>>pil;

 if(pil=='1')perkenalan();

 else if(pil=='2')waktu();

 else if(pil=='3')mainmenu();

return pil;

}


void perkenalan(){

 system("cls");

 string nama;

 char ulang;

 cout<<"Perkenalan\n"<<endl;

 cout<<"Hello, Siapa Namamu?\n"<<endl;

 cout<<"Isikan Nama Anda = "<<endl;cin>>nama;

 nama = nama;

 cout<<"Senang Berteman Denganmu, "<<nama<<" \n";

 cout<<"Berkenalan lagi atau tidak? (Y/N)";cin>>ulang;

  if(ulang=='y'){

   perkenalan();

  }

  else if(ulang=='N'||ulang=='n'){

   btm();

  }

}


void waktu(){

 system("cls");

 int sm,a,t,wakt,kel;

 float kec;

 char ulang;

 cout<<"Menghitung Waktu Berlari\n";

 cout<<"Isikan Nilai Sisi Miring Segitiga = ";cin>>sm;

 cout<<"Isikan Nilai Alas Segitiga = ";cin>>a;

 t = sqrt((sm*sm)-(a*a));

 cout<<"Nilai Tinggi Segitiga "<<t<<" (Rumus Phytagoras)\n";

 kel = sm+a+t;

 cout<<"Nilai Keliling Segitiga "<<kel<<" \n";

 cout<<"Isikan Nilai Kecepatan = ";cin>>kec;

 wakt = kel/kec;

 cout<<"Jadi Waktu Yang Dibutuhkan adalah "<<wakt<<" detik\n";

 cout<<"Menghitung lagi atau tidak? (Y/N)";cin>>ulang;

  if(ulang=='y'){

   waktu();

  }

  else if(ulang=='N'||ulang=='n'){

   btm();

  }

}


void btm(){

 char lagi;

 cout<<endl<<"Kembali ke Menu? (Y/N)";cin>>lagi;

 if(lagi=='Y'||lagi=='y'){

  menu();

 }

 else if(lagi=='N'||lagi=='n'){

 }

 else{

  cout<<"nCoba Kembali"<<endl;

  btm();

 }

}


void keluar(){ 

}

int main(){

 mainmenu();

 

}

Struktur Kontrol Percabangan dalam Algoritma Pemrograman

Edit Posted by with No comments

Di dalam dunia pemrograman, ada 3 jenis algoritma yang umum dijumpai, yakni algoritma runtunan, algoritma pemilihan, dan juga algoritma pengulangan. Ketiga jenis algoritma ini merupakan algoritma-algoritma dasar yang akan sangat kita perlukan untuk mempelajari lebih dalam tentang pemrograman ke depannya. Oleh karena itu, penting bagi kamu untuk benar-benar menguasai ketiga jenis algoritma ini.

Di artikel kali ini, kita akan mempelajari salah satu jenis algoritma di atas, yaitu algoritma pemilihan. Algoritma pemilihan ini juga dikenal dengan nama struktur kontrol percabangan. Struktur kontrol percabangan digunakan ketika kita perlu menjalankan suatu perintah berdasarkan kondisi atau syarat tertentu.

Untuk membantu kamu dalam memahami struktur kontrol percabangan ini, mari kita buat sebuah program sederhana. Program ini akan menyapa kamu sesuai dengan jenis kelamin yang kamu masukkan. Apabila kamu adalah seorang perempuan, program ini akan menyapamu dengan kalimat “Good morning, Miss!”. Namun, apabila kamu adalah seorang laki-laki, program ini akan mengganti kalimatnya menjadi “Good morning, Sir!”.

Dari contoh di atas, dapat kita lihat ya bahwa kalimat yang akan dikeluarkan oleh program tentunya bergantung pada jenis kelamin yang kamu masukkan. 

Syntax untuk Struktur Kontrol Percabangan

Secara umum, kita dapat mengaplikasikan struktur kontrol percabangan dengan dua jenis syntax, yaitu If-else dan juga Switch-case. Kedua syntax struktur kontrol percabangan ini dapat kita temui di banyak bahasa pemrograman. Meskipun strukturnya tidak jauh berbeda antara setiap bahasa pemrograman, syntax-nya tetap harus disesuaikan dengan bahasa pemrograman yang digunakan ya.

1.       If-else

Struktur kontrol percabangan yang pertama adalah If-else. Struktur if-else ini bisa dibilang merupakan struktur kontrol percabangan yang paling sederhana. Struktur penulisan if-else secara umum bisa dilihat pada gambar di bawah ini:

A screenshot of a cell phone Description automatically generated

Nah, kembali ke contoh kita sebelumnya, kira-kira kondisi dan perintah apa yang cocok untuk mengisi struktur If-else kita? Untuk kondisinya, kita bergantung pada jenis kelamin yang kita masukkan. Akan tetapi, tidak hanya sampai di situ, kita juga harus tahu apakah jenis kelaminnya perempuan atau laki-laki. Oleh karena itu, kondisinya bisa kita isi seperti gambar di bawah ini:

A close up of a logo Description automatically generated

Setelah itu, mari kita isi bagian untuk menuliskan perintahnya. Untuk program sederhana ini, kita hanya perlu mencetak kalimat yang sesuai dengan kondisi yang sudah kita tetapkan sebelumnya. Pada bagian kondisi If, kita mengisinya dengan jenis kelamin perempuan. Apabila kondisi tersebut terpenuhi, perintah yang ada di dalam blok If akan dijalankan. Oleh karena itu, kita bisa mengisikan bagian perintah pada blok If dengan perintah yang akan dijalankan saat jenis kelaminnya adalah perempuan. Potongan kodenya akan terlihat seperti di bawah ini:

A screenshot of a cell phone Description automatically generated

Setelahnya, kita masih memiliki blok else. Berbeda dengan blok If, kita tidak perlu menuliskan kondisi apapun pada blok else. Hal ini karena blok else sudah pasti dijalankan hanya jika kondisi pada blok If tidak terpenuhi. Dalam contoh kasus yang kita gunakan, blok else hanya akan dijalankan jika jenis kelaminnya bukan perempuan. Dalam kata lain, blok else akan dijalankan apabila jenis kelaminnya laki-laki.

Oleh karena itu, pada blok else, kita hanya perlu menuliskan perintah yang akan dijalankan apabila blok If tidak dijalankan. Pada contoh kasus yang kita gunakan, blok else akan kita isi seperti gambar berikut:

Struktur kontrol percabangan dengan If-else

Wah, berarti kondisi If-else hanya dapat digunakan pada kondisi yang melibatkan 2 pilihan saja dong? Jika hanya struktur If-else yang digunakan, program kamu memang hanya bisa menampung 2 pilihan. Akan tetapi, struktur If-else ini juga bisa dimodifikasi loh! Kamu bisa menambahkan banyak pilihan pada struktur if-else dengan menggunakan keyword else if. Untuk lebih jelasnya, kamu bisa menyimak gambar di bawah ini ya:

Struktur kontrol percabangan dengan If-else if

2.       Switch-case

Struktur kontrol percabangan yang kedua adalah struktur Switch-case. Secara fungsi, Switch-case bisa dibilang memiliki fungsi yang sama persis dengan If-else. Akan tetapi, struktur yang digunakan pada Switch-case ini sedikit berbeda dengan struktur If-else. Meskipun begitu, Switch-case ini akan sangat membantu apabila kamu memiliki banyak pilihan untuk program kamu.

Memangnya seperti apa sih struktur Switch-case itu? Nah, kamu bisa melihatnya pada gambar di bawah ini:

A screenshot of a cell phone Description automatically generated

Dapat kita lihat bahwa parameter yang digunakan setelah syntax Switch bukanlah kondisi seperti pada struktur If-else, melainkan hanya variabel. Variabel yang dimaksud adalah variabel yang digunakan untuk kondisi percabangan kita. Oleh karena itu, untuk contoh kasus yang kita gunakan, kita bisa mengisi variabelnya dengan jenis kelamin. Dengan begitu, syntax-nya akan menjadi seperti berikut:

A close up of a logo Description automatically generated

Selanjutnya, kita akan memasukkan kondisi yang diletakkan setelah syntax case. Berbeda dengan kondisi pada struktur If-else, kondisi yang diletakkan setelah syntax case ini hanya bisa diisi dengan sebuah nilai. Nilai tersebut dapat berupa integer, sebuah karakter, atau sebuah string. Yang terpenting, bagian ini hanya bisa diisikan dengan sebuah nilai dan bukannya perbandingan seperti kondisi pada If-else. Nilai pada bagian ini haruslah nilai dari variabel yang kita letakkan setelah syntax Switch.

Pada contoh kasus yang kita gunakan, variabel yang kita gunakan adalah jenis kelamin. Nilai dari jenis kelamin yang kita tetapkan ada 2, yakni perempuan atau laki-laki. Oleh karena itu, kita dapat mengisi bagian kondisi setelah syntax case seperti berikut:

A close up of a logo Description automatically generated

Setelah mengisi variabel dan kondisi, kita bisa menuliskan perintah yang akan dijalankan setelah tanda titik dua (:) pada masing-masing syntax case. Dengan demikian, syntax akhir dari struktur Switch-case kita akan terlihat seperti di bawah ini:

Struktur kontrol percabangan dengan Switch-case

Dari potongan kode di atas, dapat kita lihat adanya syntax ‘break’ di setiap akhir perintah. Fungsi syntax ’break’ tersebut adalah untuk mencegah program menjalankan case selanjutnya apabila program sudah menemukan case yang sesuai dengan kondisinya.

Nah, struktur Switch-case yang seperti demikian memungkinkan kamu untuk menambahkan berapa pun pilihan yang kamu miliki. Kamu bisa menambahkan 3 case, 5 case, atau bahkan 10 case. Oleh karena itu, struktur Switch-case ini memang lebih cocok digunakan apabila kamu menyediakan banyak pilihan pada program kamu.

Itulah 2 struktur kontrol percabangan yang umum dijumpai di dunia pemrograman. Setelah mempelajari dasar-dasar keduanya, sekarang kamu bisa lebih mendalami struktur kontrol percabangan yang ada deh! Misalnya, setelah ini, kamu bisa mencari tahu fungsi keyword ‘default’ pada struktur Switch-case. Selain itu, kamu juga bisa mencari struktur kontrol percabangan lainnya selain If-else dan Switch-case. Dengan begitu, kamu bisa memiliki lebih banyak pilihan untuk menerapkan percabangan ke dalam program kamu.