Rangkuman Modul 1-6 Praktikum Algoritma
MODUL 1
dalam melakukan pemrograman dengan menggunakan salah satu jenis bahasa pemrograman seperti bahasa C atau C++, ada beberapa hal dasar yang perlu diperhatikan yaitu:
Include
Biasanya bagian ini ada di baris paling awal sendiri dalam script karena ini akan menyisipkan file header lain agar kita dapat menggunakan beberapa fungsi yang berbeda. Contoh header yang paling sering digunakan yaitu
#include<iostream.h>
#include<conio.h>
Fungsi main()
Dibagian ini akan memuat tubuh utama dari script pemrograman. Karena dalam pemrograman harus digunakan minimal satu fungsi
Komentar
Untuk memberikan keterangan tentang script program yang dibuat dapat disisipkan komentar, karena ini tidak akan diproses oleh compiler.
Untuk memberikan komentar berupa satu baris dapat digunakan tanda // sebagai awalan
Untuk memberikan komentar langsung berupa beberapa baris dapat digunakan
/* .......................(isi komentar)...
..................*/
Tanda semicolon
Untuk setiap akhiran fungsi tag pemrograman harus digunakan tanda ini (;)
Cout
Dalam c++, tag cout (<<) sangat sering digunakan untuk mengarahkan data pada output.
Cin
Tag dalam C++ yang digunakan untuk memasukkan input. Dengan tag (>>)
Untuk jenis jenis fungsi lanjutan yang lainnya yaitu sebagai berikut
Dalam program tampilan
1. Puts, menampilkan output diikuti dengan baris baru dibawahnya
2. Printf, sama seperti puts namun tidak diikuti dengan garis baru dibawahnya.
3. \n , memberikan enter atau garis baru
4. \t , memberikan jarak tab antar output sesuai keinginan
5. \r , menghapus output selanjutnya setelah kode ini
6. \a , output akan memberikan efek suara
Dalam pengisian input ke variabel string
1. Gets(variabel), untuk input daya program, namun hanya dapat melakukan input data berbasis karakter saja tidak bisa untuk numerik
2. Scanf(“%s”, variabel), untuk menerima masukan input dari user
%s, untuk tipe string
%d, untuk tipe integer
%f, untuk tipe float
%7.2f, untuk tipe float dengan lebar tampilan 7
%7.4f, untuk tipe float dengan tanda + diawal bil. Dan 7 digit dengan tingkat kepresisian 4 digit
&g, untuk memanggil variabel bertipe data float dengan nilai desimal adalah duplikasi bilangan sebelum koma, untuk a tidak ada.
%e, menyatakan bilangan ke dalam standar pangkat
%5.2e, menyarakan bilangan ke dalam standar pangkat dengan lebar tambpilan 5 digit dengan tingkat kepresisian 2 digit.
Dalam program matematika (sertakan header <math.h>
Tipe data yang sering digunakan yaitu
1. Int (integer) untuk bil. bulat
2. Float untuk bil. pecahan
3. Double untuk bil. Pecahan yang memiliki tingkat kepresisian lebih tinggi
Operator aritmatika dalam pemrograman
4. + , tambah
5. - , kurang
6. * , kali
7. / , bagi
8. % , hasil sisa bagi
9. Sqrt , hasil akar
MODUL 2
Percabangan yaitu pemberian pilihan kondisi.
Bentuk umum percabangan IF yaitu
if(umur >= 30){
cout<<"Selamat siang pak \nSalam buat anakmu ya!"<< endl;
}
Bentuk percabangan ganda: IF-ELSE
if(n >= 60)
cout<<"Lulus"<<endl;
else
cout<<"Tidak Lulus"<<endl;
bentuk percabangan bertingkat: IF-ELSE-IF
if(n>=80)
cout<<"A"<<endl;
else if(n>=60)
cout<<"B"<<endl;
else if(n>=40)
cout<<"C"<<endl;
else
cout<<"D"<<endl;
bentuk percabangan kombinasi
if(n>=40)
if(n>=60)
if(n>=80)
cout<<"A"<<endl;
else
cout<<"B"<<endl;
else
cout<<"C"<<endl;
else
cout<<"D"<<endl;
MODUL 3
PERULANGAN
While
Memungkinkan statement-statement yang di dalamnya tidak dilakukan sama sekali. Bentuk umumnya
While(kondisi){
Pernyataan;
}
Do ... While
Mirip dengan while namun hanya saja pernyataannya akan dieksekusi paling sedikit satu kali. Bentuk umunya
Do {
Pernyataan;
}while(kondisi)
For
Menghasilkan looping beberapa kali tanpa penggunaan kondisi apapun. Dengan catatan telah diktahui batas awal, syarat looping, dan perubahannya. Selama kondisi terpenuhi, maka pernyataan akan terus dieksekusi. Bentuk umumnya
For(inisialisasi; kondisi; perubahan){
Pernyataan;
}
Continue dan break
Biasanya digunakan dalam pernyataan switch, namun dapat juga digunakan dalam loop.
Break berfungsi mengeluarkan eksekusi compiler dari struktur program setelah suatu kondisi tertentu dipenuhi.
Continue berfungsi untuk melanjutkan suatu kompile setelah suatu perintah sudah terpenuhi.
Goto
Untuk melakukan lompatan ke suatu pernyataan berlabel yang ditandai dengan tanda “ : “ atau disebut label sebagai petunjuk proses. Bentuk umumnya
Goto bawah;
Pernyataan1;
Pernyataan2;
Bawah: Pernyataan;
MODUL 4, 5, 6
Fungsi tambahan tag
Setw, membuat tampilan dalam rata kanan dengan lebar ditentukan oleh nilai yang ada dalam kurung
Set presision, merupakan suatu fungsi manipulator yang digunakan untuk mengatur jumlah digit desimal yang ingin ditampilkan.
ios::fixed dan ios::scientific
Mempunyai fungsi yang sama yaitu format bilangan rill akan tetap dapat diubah dengan memanggil fungsi set atau unset diikuti argumen ios::scientific atau ios::fixed
Setios, manipulator untuk mengontrol, seperti nios::fixed,showpoint,dll
ios::showpoint, menampilkan titik decimal pada bil.pecahan
ios::fixed, memformat keluaran dalam bentuk notasi decimal
fabs(), Untuk menghitung nilai mutlak dari x; x bilangan real.
delay(), sebagai waktu tunda antara bunyi pertama ke bunyi berikutnya
sound(), menunjukkan besarnya frekuensi bunyi yang dikeluarkan
strlen(), Bentuk format strlen(const char *s) , Fungsi menghitung panjang string s
strcpy(), Bentuk format strcpy(char *dest, const char *src), Fungsi mengkopi string src ke dest
strcat(), Bentuk format strcat (char*dest, const char*src), Fungsi menambahkan kopian src ke bagian akhir dest
strcmp(), Bentuk format strcmp(const char*s1, const , char*s2), Fungsi melakukan perbandingan s1 dengan s2
strcspn(), Bentuk format strcspn (const char *s1, const char *s2), Fungsi menemukan bagian awal string s1 yang mengandung s2
strupr(), Bentuk format strupr(const char *s), Fungsi mengubah string menjadi huruf KAPITAL (uppercase)
strlwr(), Bentuk format strlwr(const char *s), Fungsi mengubah string menjadi huruf biasa/kecil (lowercase)
strrev(), Bentuk format strrev(const char *s), Fungsi membalik semua karakter string, jadi huruf terakhir menjadi awal
strset(), Bentuk format strset(const char *s, int ch), Fungsi menset semua karakter dalam s ke ch
Tambahan fungsi operator
+= untuk menambahkan nilai x dengan nilai 10
stdrdev = sqrt(pemb/(N-1)) : rumus standart deviasi
Program membuat tabel konversi suhu dapat menggunakan perulangan Do-While
#include
char pilihan;
float input,
output;
float C_ke_F(float C){
float F; F = 9.0/5.0*C + 32.0 ; return F;}
float F_ke_C(float F){
float C; C = 5.0/9.0*(F - 32.0) ; return C;}
float C_ke_R(float C){
float R; R = 4.0/5.0 *C; return R;}
float R_ke_C(float R){
float C; C = 5.0/4.0 *R; return C;}
float F_ke_R(float F){
float R; R = 4.0/9.0*(F - 32) ; return R;}
float R_ke_F(float R){
float F;
F = 9.0/4.0*R + 32 ;
return F;}
void Menampilkan_Menu(){
cout << "Pilih konversi berikut :" << endl
<< "A. Celcius ke Fahrenheit" << endl
<< "B. Fahrenheit ke Celcius" << endl
<< "C. Celcius ke Reamur" << endl
<< "D. Reamur ke Celcius"<< endl
<< "E. Fahrenheit ke Reamur" << endl
<< "F. Reamur ke Fahrenheit" << endl
<< "X. Selesai" << endl;}
void Mengisi_Pilihan(){
cout << "Masukkan pilihan konversi = "; cin >> pilihan;}
void Mengisi_Input(){
cout << "Isikan nilai suhu = "; cin >> input;}
void Pilihan_Konversi(){
if ((pilihan == 'A')||(pilihan == 'a')){
output = C_ke_F(input);
cout << "Temperatur " << input << " C = "<< output << " F";}
else if ((pilihan == 'B')||(pilihan == 'b')){
output = F_ke_C(input);
cout << "Temperatur " << input << " F = "<< output << " C";}
else if ((pilihan == 'C')||(pilihan == 'c')){
output = C_ke_R(input);
cout << "temperatur " << input << " C = "<< output << " R";}
else if ((pilihan == 'D')||(pilihan == 'd')){
output = R_ke_C(input);
cout << "Temperatur " << input << " R = "<< output << " C";}
else if ((pilihan == 'E')||(pilihan == 'e')){
output = F_ke_R(input);
cout << "Temperatur " << input << " F = "<< output << " R";}
else if ((pilihan == 'F')||(pilihan == 'f')){
output = R_ke_F(input);
cout << "Temperatur " << input << " R = "<< output << " F";}
else if ((pilihan == 'X')||(pilihan == 'x')){
cout << "Selesai"; }
else cout << "Tidak ada dalam menu konversi";}
main(){
Menampilkan_Menu();
Mengisi_Pilihan();
Mengisi_Input();
Pilihan_Konversi();
}
#include
#include
#include
void main(){
char tulisan[100], terenkripsi[100];
int kunci, panjang, kode;
cout<<"Masukkan tulisan = ";
gets(tulisan);
cout<<"Masukkan nilai kunci = ";
cin >> kunci;
panjang = strlen(tulisan);
strcpy(terenkripsi, tulisan);
for(int i =0; i < panjang; i++){
kode = int(tulisan[i]+kunci);
if(kode<32 95="" if="" kode=""> 126)
kode = kode - 95;
terenkripsi[i] = char(kode);
}
cout<<"terenkripsi = "< 32>
Menjalankan program tersebut, masukkan sebuah tulisan dan juga kunci untuk mengenkripsi (bil bulat positif atau negatif). Sifat operasinya adalah dapat-balik (reversible). Untuk mendekripsi gunakan nilai lawan dari kunci tersebut.
Bagaimana bentuk terenkripsi dari “lila” dengan kunci 93 ?
Bentuk terenkripsi dari “lila ” dengan kunci 93 adalah jgj_ Apa tulisan asli dari pesan berikut ini serta berapa nilai kunci yang dipakai untuk mengenkripsi tulisan aslinya ? tulisan asli dari Ru|qzq#0!u}# w#q}q~0rqxq$q0S tidak dapat saya temukan!
Hilangkan baris strcpy(... di atas, apa yang terjadi (9)?
strcpy(terenkripsi,tulisan) : dihilangkan maka saat program dijalankan mkaa diakhir akan ditemukan tulisan aslinya.
Komentar
Posting Komentar