deyra.files.wordpress.com · web viewisi dari fungsi main selanjutnya akan mengikuti,berupa...
TRANSCRIPT
PRAKTIKUM I
METODE PENGENALAN C++
II. DASAR TEORI
Sejarah C++
Tahun 1978, Brian W. Kerninghan & Dennis M. Ritchie dari AT & T
Laboratories mengembangkan bahasa B menjadi bahasa C. Bahasa B yang
diciptakan oleh Ken Thompson sebenarnya merupakan pengembangan dari
bahasa BCPL ( Basic Combined Programming Language ) yang diciptakan oleh
Martin Richard.
Sejak tahun 1980, bahasa C banyak digunakan pemrogram di Eropa yang
sebelumnya menggunakan bahasa B dan BCPL. Dalam perkembangannya, bahasa
C menjadi bahasa paling populer diantara bahasa lainnya, seperti PASCAL,
BASIC, FORTRAN.
Tahun 1989, dunia pemrograman C mengalami peristiwa penting dengan
dikeluarkannya standar bahasa C oleh American National Standards Institute
(ANSI). Bahasa C yang diciptakan Kerninghan & Ritchie kemudian dikenal
dengan nama ANSI C.
Mulai awal tahun 1980, Bjarne Stroustrup dari AT & T Bell Laboratories
mulai mengembangkan bahasa C. Pada tahun 1985, lahirlah secara resmi bahasa
baru hasil pengembangan C yang dikenal dengan nama C++. Sebenarnya bahasa
C++ mengalami dua tahap evolusi. C++ yang pertama, dirilis oleh AT&T
Laboratories, dinamakan cfront. C++ versi kuno ini hanya berupa kompiler yang
menterjemahkan C++ menjadi bahasa C.
Pada evolusi selanjutnya, Borland International Inc. mengembangkan
kompiler C++ menjadi sebuah kompiler yang mampu mengubah C++ langsung
menjadi bahasa mesin (assembly). Sejak evolusi ini, mulai tahun 1990 C++
menjadi bahasa berorientasi obyek yang digunakan oleh sebagian besar
pemrogram professional.
Struktur Bahasa C++
Contoh 1 : Hasil :
// my first program in C++ Hello World!
#include <iostream.h>
int main ()
{
cout << "Hello World!";
return 0;
}
Sisi kiri merupakan source code, yang dapat diberi nama hiworld.cpp dan
sisi kanan adalah hasilnya setelah di-kompile dan di-eksekusi.
Program diatas merupakan salah satu program paling sederhana dalam C++,
tetapi dalam program tersebut mengandung komponen dasar yang selalu ada pada
setiap pemrograman C++. Jika dilihat satu persatu :// my first program in C++
Baris ini adalah komentar. semua baris yang diawali dengan dua garis
miring (//) akan dianggap sebagai komentar dan tidak akan berpengaruh terhadap
program. Dapat digunakan oleh programmer untuk menyertakan penjelasan
singkat atau observasi yang terkait dengan program tersebut. #include <iostream.h>
Kalimat yang diawali dengan tanda (#) adalah are preprocessor directive.
Bukan merupakan baris kode yang dieksekusi, tetapi indikasi untuk kompiler.
Dalam kasus ini kalimat #include <iostream.h> memberitahukan preprocessor
kompiler untuk menyertakan header file standard iostream. File spesifik ini juga
termasuk library deklarasi standard I/O pada C++ dan file ini disertakan karena
fungsi-fungsinya akan digunakan nanti dalam program.int main ()
Baris ini mencocokan pada awal dari deklarasi fungsi main. fungsi main
merupakan titik awal dimana seluruh program C++ akan mulai dieksekusi.
Diletakan diawal, ditengah atau diakhir program, isi dari fungsi main akan selalu
dieksekusi pertama kali. Pada dasarnya, seluruh program C++ memiliki fungsi
main.
main diikuti oleh sepasang tanda kurung () karena merupakan fungsi. pada
C++, semua fungsi diikuti oleh sepasang tanda kurung () dimana, dapat berisi
argumen didalamnya. Isi dari fungsi main selanjutnya akan
mengikuti,berupa deklarasi formal dan dituliskan diantara kurung
kurawal ({}), seperti dalam contoh.cout << "Hello World";
Intruksi ini merupakan hal yang paling penting dalam program contoh. cout
merupakan standard output stream dalam C++ (biasanya monitor). cout
dideklarasikan dalam header file iostream.h, sehingga agar dapat digunakan
maka file ini harus disertakan.
Perhatikan setiap kalimat diakhiri dengan tanda semicolon (;). Karakter ini
menandakan akhir dari instruksi dan harus disertakan pada setiap akhir instruksi
pada program C++ manapun. return 0;
Intruksi return menyebabkan fungsi main() berakhir dan mengembalikan
kode yang mengikuti instruksi tersebut, dalam kasus ini 0. Ini merupakan cara
yang paling sering digunakan untuk mengakhiri program.
Tidak semua baris pada program ini melakukan aksi. Ada baris yang hanya
berisi komentar (diawali //), baris yang berisi instruksi untuk preprocessor
kompiler (Yang diawali #),kemudian baris yang merupakan inisialisasi sebuah
fungsi (dalam kasus ini, fungsi main) dan baris yang berisi instruksi (seperti,
cout <<), baris yang terakhir ini disertakan dalam blok yang dibatasi oleh kurung
kurawal ({}) dari fungsi main.
Struktur program dapat dituliskan dalam bentuk yang lain agar lebih mudah
dibaca, contoh :
int main ()
{
cout << " Hello World ";
return 0;
}
Atau dapat juga dituliskan :
int main () { cout << " Hello World "; return 0; }
Dalam satu baris dan memiliki arti yang sama dengan program-program
sebelumnya. pada C++ pembatas antar instruksi ditandai dengan semicolon (;)
pada setiap akhir instruksi.
Contoh 2 : Hasil :
// my second program in C++ Hello World! I'm a C++ program
#include <iostream.h>
int main ()
{
cout << "Hello World! ";
cout << "I'm a C++ program";
return 0;
}
Void main ()
{
C=a/b;
Cout<<”Hasil 1=”<<c<<endl;
++b;
Cout<<”Hasil 2=”<<b<<endl;
A*=b;
Cout<<”Hasil 3=”<<a<<endl;
}
3.a
#include<iostream.h>
#include<math.h>
void main ()
{
int a,t;
float s_miring, luas, keliling;
cout<<"inputkan alas =";cin>>a;
cout<<"inputkan tinggi =";cin>>t;
s_miring=sqrt(a*a+t*t);
luas=0.5*a*t ;
keliling=a+t+s_miring ;
cout<<"Luas Segitiga ="<<luas<<endl;
cout<<"Keliling Segitiga ="<<keliling<<endl;
}
3.b
#include<iostream.h>
void main ()
{
int a,t;
float s_miring, luas, keliling;
cout<<"inputkan alas =";cin>>a;
cout<<"inputkan tinggi =";cin>>t;
s_miring=sqrt(a*a+t*t);
luas=0.5*a*t ;
keliling=a+t+s_miring ;
cout<<"Luas Segitiga ="<<luas<<endl;
cout<<"Keliling Segitiga ="<<keliling<<endl;
}
3.c
#include<iostream.h>
#include<math.h>
void main ()
{
int a,t;
float s_miring, luas, keliling;
cout<<"inputkan alas =";cin>>a;
cout<<"inputkan tinggi =";cin>>t;
s_miring=sqrt(a*a+t*t);
luas=0.5*a*t ;
keliling=a+t+s_miring ;
cout<<"Luas Segitiga ="<<luas<<endl;
cout<<"Keliling Segitiga ="<<keliling<<endl;
}
4.a
#include<iostream.h>
void main()
{
float tinggi;
float bb1,bb2;
cout<<"inputkan tinggi badan =";cin>>tinggi;
bb1=tinggi-100 ;
bb2-0.9*bb1 ;
cout<<"berat badan ideal ="<<bb2<<endl;
}
4.b
#include<iostream.h>
void main()
{
int x_hari;
int thn, bln, hri, sisa1,sisa2;
cout<<"inputkan waktu untuk pembuatan instrumen medis =";cin>>x_hari;
thn=int(x_hari/365) ;
sisa1=(x_hari%365) ;
bln=int(sisa1/30);
sisa2=(sisa1%30);
hri=int(sisa2/1);
cout<<"waktu yang dibutuhkan untuk pembuatan instrumen medis adalah
="<<thn<<"tahun_"<<bln<<"bulan_"<<hri<<"hari_"<<endl;
}
III. ALGORITMA
1.aBegin
Tampil “TeknobiomedikUnair”
end
1.b dan c
2. secara umum
Begin
Tulis nama
Tampil “Hai, “ nama
Tampil “Selamat Belajar Bahasa Pemrograman C++”
end
Begin
Tulis a=9, b=4
C =a/b
Tampil C
b--
3. secara umum
Tampil b
A+=b
Tampil a
end
Begin
Tulis a, t
S_miring = sqrt(a*a + t*t)
Luas = 0,5*a*t
Kelliling = a+t+s_miring
Tampil luas
Tampil Keliling
end
4. a
4.b
Begin
Tulis tinggi
Bb1 = tinggi – 100
Bb ideal = 0,9*bb1
Tampil “Inputkan tinggi badan=”
Tampil Keliling
end
Begin
Tulis x_hari
thn= int(hari/366)
sisa1=mod(hari/366)
bulan=int(sisa1/30)
sisa2=mod(sisa1/30)
hari=int(sisa2/1)
Tampil “Waktu untuk pembuatan instrument medis=”
IV. TUGAS
a. Soal
1. a. Salinlah listing program pada contoh 1 dan jalankan !
a. Buat program yang hasil eksekusinya sebagai berikut :
Ket : Doni diinputkan oleh user
b. Ganti Doni menjadi nama anda!
2. a. Salin listing program berikut dan jalankan :
#include<iostream.h>
Int a=9,b=4,c;
Tampil “waktu yang dibutuhkan untuk pembuatan instrumen medis adalah =” thn “tahun_” bln “bulan_” hri ”hari_”
end
Void main ()
{
c=a/b;
cout<<”Hasil1 = ”<<c<<endl;
b--;
cout<<”Hasil2 = ”<<b<<endl;
a+=b;
cout<<”Hasil3 = “<<a<<endl;
}
b. Bagaimana output Hasil1 ? Cek kebenarannya dan perbaiki!
c. Bagaimana output Hasil1 bila operator “/” diganti dengan +, -, * dan %
d. Bagaimana output Hasil2 bila “b--“ diganti dengan b++, --b, ++b
e. Bagaimana output Hasil3 bila “a+=b” diganti dengan a/=b, a-=b, a%=b,
a*=b !
3. a. Salinlah listing program pada contoh 2 dan jalankan !
b. Hapuslah #include<math.h> , apa yang terjadi ?
c. Bagaimana output program bila input alas = 3.45 dan cek kebenarannya!
4. Buat program untuk menyelesaikan problem berikut :
a. Berat badan ideal seseorang dihitung dengan cara mengurangi tinggi
badan dengan 100 kemudian mengurangi lagi dengan 10% dari hasil
tersebut. Tentukan berat badan ideal seorang pasien jika diketahui tinggi
badannya !
b. Suatu proyek pembuatan instrument medis membutuhkan waktu selama
x hari. Tentukan berapa tahun, berapa bulan dan berapa hari proyek
tersebut dikerjakan !
b. Jawaban
1. a. soal nomor 1.a masih berupa program sederhana yang
menampilkan tulisan “Teknobiomedik Unair” pada perintah cout.
Kemudian ada juga perintah endl di bagian akhir perintah cout
yang menampilkan “Hai, “ yangperintah tersebut berfungsi
untuk mengakhiri baris tersebut. Fungsinya sama dengan enter
pada keyboard.
b. pada nomor 1.b ada beberapa perintah cout yang menampilkan
kalimat-kalimat pada hasil output yang tujuannya membantu user
untuk penggunaan program. Seperti “Inputkan Nama Anda=”,
"Hai..", dan <<"Selamat Belajar Bahasa Pemrograman C++". Di
nomor 1.b kita belajar cara memberikan input data dengan
perintah “cin”. Data yang diinputkan berupa karakter/huruf,
sehingga pada baris awal pernyataan variabelnya “char” dengan
jumlah maksimal karakter yang dimasukkan adalah 10 karakter.
c. nomor 1c hampir sama dengan 1b. bedanya jika pada 1b nama
yang di inputkan sesuai perintah dari soal sedangkan 1c
menggunakan nama kita sendiri.
2. a.soal nomor 2, menggunakan operator unary dan operator
pengerjaan. Data yang digunakan bukan input dari user tetapi
sudah ditentukan. Variabel yang digunakan adalah int, yaitu
integer,. Variabel ini digunakan untuk menampilkan hasil dari
program ini dalam bentuk bilangan bulat jadi tidak akan
menampilkan bilangan desimal seperti ketika kita menggunakan
variabel float. Pada nomor 2 ini kami mulai mempelajari
perbedaan matematika dengan pemrograman. Misalnya pada
“a+=b” pada bagian yang digunakan adalah bagian b terbaru
pada “b - -“ bukan pada b yang dimasukkan di awal.
3. a. pada nomor 3a tipe variabel yang digunakan adalah float, hal
ini karena nilai yang digunakan tidak selalu bilangan bulat. Input
yang digunakan adalah alas (a) dan tinggi (t). untuk
menyelesaikan soal ini, dimenggunakan rumus segitiga siku-siku,
yaitu mencari sisi miring(s_miring), luas, dan keliling. Hasilnya
perhitungan pada program sesuai dengan perhitungan manual.
b. Ketika #include<math.h> dihapus, program tidak dapat
dijalankan karena header #include<math.h> merupakan deklarasi
yang diperlukan oleh operasi matematis dalam statement. Hal ini
menyebabkan semua unsur yang mengandung perhitungan
matematis pada listing tidak muncul. Seperti perhitungan
“s_miring=sqrt(a*a+t*t)”, “luas=0.5*a*t dan
“keliling=a+t+s_miring”.
c. Ketika memasukkan input alas 3.45, nilai perhitungan di program
tidak sama dengan yang manual. Hal ini karena int hanya untuk
bilangan bulat saja. Untuk bilangan decimal menggunakan float.
4. a. Soal ini saya menyusun sendiri listingnya sesuai dengan
keinginan sayadan berdasarkan perintah yang ada. Program
inicukup sederhana dan konsepnya sama dengan no.3
b.Pada program kali ini saya mulai sedikit bermain – main dengan
int pada rumus dan menggunakan mod atau tanda %. Sedangkan
untuk yang lainnya sama seperti yang sebelum - sebelumnya.
.
c. Output
1.a
1.b
1.c
2.a
2.b1
2.b2
2.c1
2.c2
2.c3
2.c4
2.d1
2.d2
2.d3
2.e1
2.e2
2.e3
2.e4
3.a
3.b
3.c
4.a
4.b
LAPORAN
PRAKTIKUM PROKOM
Praktikum 1 : Metode Pengenalan C++
Pelaksanaan Praktikum
Hari : Jumat Tanggal : 9 Maret 2012-03-16 Jam : ke 3 - 4
OLEH :
FAUZIYAH FIRDAUSI M. S
NIM : 081017008
Dosen Pembimbing : Ibu Endah
LABORATORIUM KOMPUTER
DEPARTEMEN FISIKA
FAKULTAS SAINS & TEKNOLOGI
UNIVERSITAS AIRLANGGA