Hai
readers... ini adalah laprak ke II dari matakuliah Algoritma Pemograman saat saya
kuliah di semester 2 jurusan Teknik Informatika di Undip.
Semoga bermanfaat ya bagi yang ingin mencari referensi. Tapi ingat, JANGAN COPAS!!!.
Sebab hasil terbaik ialah jika kita mengerjakan sendiri. Khususnya bagi
kamu yg merasa adik tingkat saya dan ada laprak ttg ini... Oya, maaf jika gambarnya tidak bisa muncul, karena saya hanya copas laprak saya ke web ini...
BAB I
PENDAHULUAN
1.1 PERMASALAHAN
1.1.1
Buatlah koding
dari program:
a. bacakar.c
b. konstan2.c
c. IF2.c
d. tempair.c
e. Ubah script pada switch-case.c
agar dapat menerima inputan huruf besar maupun huruf kecil
Contoh keluaran
program :
(Contoh 1)
Ketikkan sebuah huruf, akhiri dengan RETURN
>>> A
Yang anda ketik adalah a
(Contoh 2)
Ketikkan sebuah huruf, akhiri dengan RETURN
>>> a
Yang anda ketik adalah a
(Petunjuk : Gunakan struktur percabangan IF)
dan program lainnya
yang telah dibuat pada saat praktikum (seperti: bacakarakterfloat.c, if3.c,
konstan.c, dan switch-case.c)
1.1.2
Analisa dan bahaslah
koding mengenai kelima program tersebut.
1.2
DASAR TEORI
1.2.1 Pengertian Bahasa C
Bahasa
C adalah salah satu bahasa
pemrograman yang populer di dunia dan mempunyai kemampuan lebih dari bahasa
pemrograman yang lain. Banyak sekali aplikasi-aplikasi yang ditulis dalam bahasa
C, atau paling tidak inti utama programnya ditulis dalam bahasa C.
Bahasa
C diciptakan oleh Dennis Ritchie pada
tahun 1972. Sebenarnya, bahasa C merupakan pengembangan dari bahasa BCPL
yang lebih dahulu ada. Sebagai bahasa yang digolongkan dalam middle level
language, bahasa C mempunyai kemudahan didalam mengakses perangkat
keras, juga kecepatan prosesnya yang mendekati low level language
seperti Assembly, tetapi memberikan kemudahan yang tidak ditawarkan Assembly..
Salah
satu cara untuk membuat program bahasa C bisa dengan menggunakan Ubuntu.
Berikut caranya:
1.
Buka
Ubuntu lalu buka Text Editor. Atau bisa juga buka terminal dulu lalu tulis
gedit.
Kemudian buatlah source kode dalam
bahasa C.
2.
Setelah
soured code-nya telah dibuat, simpan file dengan mengklik ikon , atau bisa cuka dengan menekan
Ctrl+s
3.
Lalu
ketik nama filenya dan bagian akhir, diberi ekstensi .c contoh: assign.c. kemudian klik Save.
4.
Jika
program ingin dijalankan, maka terlebih dahulu kita harus mengkompilenya.
Caranya:
Gcc –c namaprogram.c
Gcc –o namaprogram namaprogram.o
Contoh:
5.
Kemudian,
jika ingin dijalankan programnya ketik ./namaprogram
6.
Setelah
ditekan enter, maka program pun sudah bisa dijalankan. ^^
1.2.2 Struktur
Pemrograman C
#include <stdio.h>
·
Menyertakan sebuah file lain yaitu file
stdio.h
·
Berisi informasi tentang Input &
Output , bagian dari paket C Compiler
·
# merupakan instruksi PREPROCESSOR,
diproses oleh C-PREPROCESSOR.
main()
Sebuah nama fungsi, tanda kurung mencakup
informasi yang merupakan argumen. Harus ada
dalam program, karena dari fungsi ini program akan mulai dieksekusi, tanpa
fungsi ini program tidak akan dapat dilaksanakan.
/* program sederhana*/
Sebuah komentar untuk memudahkan orang lain dalam
mengerti program kita. Simbol /* dan */ dipakai untuk menandai komentar segala
sesuatu di dalam tanda /* dan */ diabaikan oleh C compiler.
{ Menandai awal dari badan fungsi
} Mengakhiri definisi fungsi
; (titik koma)
·
Untuk mengakhiri stiap pernyataan/perintah
·
Antara pernyataan/perintah yang satu
dengan yang lain hanya dapat dipisahkan dengan tanda titik koma (;) bukan
dengan baris yang berbeda atau spasi atau karakter yang lain
int num;
sebuah deklarasi statement yaitu mendefinisikan
variabel bernama num sebagai tipe integer.
deklarasi statement sangat penting, karena
mendeklarasikan 2 hal :
·
Dalam fungsi tersebut
akan ada variabel yang bernama num
·
Variabel num mempunyai
tipe integer.
dalam C, semua variabel
harus dideklarasikan
printf ("..");
sebuah print statement yaitu mencetak
kalimat dalam tanda petik.
printf ("..%d\n",num);
Mencetak kalimat dalam tanda petik dengan
meletakkan harga variabel num diposisi %d. Harga
dari num mensubstitusi simbol %d yaitu menempatkannya
pada posisi %d dan menampilkannya sebagai
digit.
1.2.3 Penyeleksian Kondisi / Struktur
Kondisional
Penyeleksian
kondisi digunakan untuk mengarahkan perjalanan suatu proses.
a. STRUKTUR KONDISI “IF….”
Struktur
if dibentuk dari pernyataan if dan sering digunakan untuk menyeleksi suatu
kondisi tunggal. Bila proses yang diseleksi terpenuhi atau bernilai benar, maka
pernyataan yang ada di dalam blok if akan diproses dan dikerjakan. Bentuk umum
struktur kondisi if adalah :
if(kondisi)
pernyataan;
b. STRUKTUR KONDISI “IF......ELSE….”
Dalam struktur
kondisi if.....else minimal terdapat
dua pernyataan. Jika kondisi
yang diperiksa
bernilai benar atau
terpenuhi maka pernyataan
pertama yang
dilaksanakan
dan jika kondisi yang diperiksa bernilai salah maka pernyataan yang
kedua
yang dilaksanakan. Bentuk umumnya adalah sebagai berikut :
if(kondisi)
pernyataan-1
else
pernyataan-2
c. STRUKTUR KONDISI “SWITCH...CASE...
DEFAULT…”
Struktur
kondisi switch....case....default digunakan
untuk penyeleksian kondisi dengan kemungkinan yang terjadi cukup
banyak. Struktur ini akan melaksanakan salah
satu dari beberapa pernyataan ‘case’ tergantung nilai
kondisi yang ada di dalam switch. Selanjutnya proses diteruskan hingga
ditemukan pernyataan ‘break’. Jika tidak ada nilai pada case yang sesuai dengan
nilai kondisi, maka proses akan diteruskan kepada pernyataan yang ada di bawah
‘default’. Bentuk umum dari struktur kondisi ini adalah :
switch(kondisi)
{
case 1 : pernyataan-1;
break;
case 2 : pernyataan-2;
break;
.....
.....
case n : pernyataan-n;
break;
default : pernyataan-m
}
BAB II
PEMBAHASAN
2.1 CODING
2.1.1
Bacakarakterfloat.c
/*
Nama : Weny Ariska Yulianty /
24010312120019
Nama Program : bacakarakterfloat.c
Deskripsi : contoh membaca karakter, kemudian
menuliskan nilai yang dibaca
Tanggal : 19 April 2013
*/
#include<stdio.h>
int
main ()
{
/* Kamus */
int a;
float b;
/* Algoritma*/
system("clear");
printf("Contoh membaca dan menulis
untuk tipe integer dan float\n");
printf("\nMasukkan satu buah nilai
integer : ");
scanf("%d",&a);
printf("\nMasukkan satu buah nilai
float : ");
scanf("%f",&b);
printf("\nHasilnya adalah
:\n");
printf("Nilai a=%d\n",a);
printf("Nilai b=%.2f\n",b);
printf("\n\n\t^_^--BYE--^_^\n\n");
//getch ();
return 0;
}
|
2.1.2 if3.c
/*
Nama : Weny Ariska Yulianty /
24010312120019
Nama
Program : if3.c
Deskripsi : contoh pemakaian IF tiga kasus,
membaca sebuah nilai,
menuliskan 'Nilai, nilai a,
merupakan nilai positif', jika a > 0
'Nilai, nilai a,
merupakan nilai nol', jika a = 0
'Nilai, nilai a,
merupakan nilai negatif', jika a < 0
Tanggal : 19 April 2013
*/
#include<stdio.h>
int
main
()
{
/* Kamus */
int a;
/*Algoritma*/
system("clear");
printf("Contoh IF tiga
kasus\n");
printf("Ketikkan suatu nilai
integer : ");
scanf("%d",&a);
if (a > 0)
{
printf("Nilai %d merupakan
nilai positif \n", a);
}
else if (a == 0)
{
printf("Nilai %d merupakan
nilai Nol \n", a);
}
else /*a < 0*/
{
printf("Nilai %d merupakan
nilai negatif \n", a);
}
//getch ();
return 0;
}
|
2.1.3 konstan.c
/*
Nama : Weny Ariska Yulianty /
24010312120019
Nama
Program : konstant.c
Deskripsi : membaca jari-jari, menghuitung luas
lingkaran, lathan pemakaian konstanta
Tanggal : 19 April 2013
*/
#include<stdio.h>
#define
phi 3.14
int
main
()
{
/* Kamus */
const float pi = 3.1415;
float r;
/*Algoritma*/
system("clear");
/*Baca data*/
printf("Jari-jari lingkaran =");
scanf("%f",&r);
/*Hitung dan tulis hasil*/
printf("Luas lingkaran(menggunakan
CONST) =%f\n",pi*r*r);
printf("Luas lingkaran(menggunakan
DEFINE)=%f\n",phi*r*r);
printf("Akhir program \n");
//getch ();
return 0;
}
|
2.1.4 Switch-case.c
/*
Nama : Weny Ariska Yulianty / 24010312120019
Nama
Program : switch-case.c
Deskripsi : contoh pemakaian swicth-case.
Tanggal : 19 April 2013
*/
#include
<stdio.h>
int
main
()
{
/* Kamus */
char cc;
/*Algoritma*/
system("clear");
printf("Ketikkan sebuah huruf,
akhiri dengan RETURN >>> ");
scanf("%s",&cc);
printf("\n ");
switch (cc)
{
case 'a':
{
printf("\tYang
diketik adalah a \n");
break;
}
case 'u':
{
printf("\tYang
diketik adalah u \n");
break;
}
case 'e':
{
printf("\tYang
diketik adalah e \n");
break;
}
case 'i':
{
printf("\tYang
diketik adalah i \n");
break;
}
case 'o':
{
printf("\tYang
diketik adalah o \n");
break;
}
default:
printf("\tHuruf %c merupakan
konsonan atau karakter lainnya \n\n",cc);
}
//getch ();
return 0;
}
|
2.1.5 bacakar.c
/*
Nama : Weny Ariska Yulianty /
24010312120019
Nama
Program : bacaakar.c
Deskripsi : membaca karakter
Tanggal : 19 April 2013
*/
#include<stdio.h>
int
main
()
{
/* Kamus */
char cc;
/* Algoritma*/
system("clear");
printf("Hello\n");
printf("Baca 1 kar : ");
scanf("%c",&cc);
printf(“%c\n”, cc);
printf("bye ^^\n ");
//getch ();
return 0;
}
|
2.1.6 konstan2.c
/*
Nama : Weny Ariska Yulianty /
24010312120019
Nama
Program : konstan2.c
Deskripsi : menghuitung luas lingkaran, dari
jari-jari yang dibaca,
latihan pemakaian konstanta
dengan define
Tanggal : 19 April 2013
*/
#include<stdio.h>
#define
pi 3.1415
int
main
()
{
/* Kamus */
float r;
float luas;
/*Program*/
system("clear");
/*Baca data*/
printf("Jari-jari lingkaran =
");
scanf("%f",&r);
/*Hitung dengan rumus*/
luas = pi * r * r;
/*Print hasil*/
printf("Luas lingkaran =
%6.2f\n", luas);
printf("Akhir program \n");
//getch ();
return 0;
}
|
2.1.7 if2.c
/*
Nama : Weny Ariska Yulianty /
24010312120019
Nama
Program : if2.c
Deskripsi : contoh pemakaian IF dua kasus
komplementer, membaca sebuah nilai,
menuliskan 'Nilai a
positif, nilai a', jika a >= 0
'Nilai a
negatif, nilai a', jika a < 0
Tanggal : 19 April 2013
*/
#include<stdio.h>
int
main
()
{
/* Kamus */
int a;
/*Program*/
system("clear");
printf("Contoh IF dua
kasus\n");
printf("Ketikkan suatu nilai
integer = ");
scanf("%d",&a);
if (a >= 0)
{
printf("Nilai a positif %d
\n", a);
}
else
/*a < 0 */
{
printf("Nilai a negatif %d
\n", a);
}
//getch ();
return 0;
}
|
2.1.8 tempair.c
/*
Nama : Weny Ariska Yulianty /
24010312120019
Nama
Program : tempair.c
Deskripsi : contoh pemakaian IF tiga kasus:
wujud cair
Tanggal : 19 April 2013
*/
#include<stdio.h>
int
main
()
{
/* Kamus */
int T;
/*Program*/
system("clear");
printf("Contoh IF tiga
kasus\n");
printf("Temperatur (der. C) =
");
scanf("%d",&T);
if (T < 0)
{
printf("Wujud air beku %d
\n", T);
}
else if ((0 <= T) && (T <=
100))
{
printf("Wujud air cair %d
\n", T);
}
else if (T > 100)
{
printf("Wujud air uap/gas %d
\n", T);
}
//getch ();
return 0;
}
|
2.1.9 vokalbesarkecil1.c
/*
Nama : Weny Ariska Yulianty / 24010312120019
Nama
Program : vokalbesarkecil1.c
Deskripsi : contoh pemakaian struktur
percabangan IF yang menerima inputan huruf besar maupun huruf kecil
Tanggal
: 19 April 2013
*/
#include
<stdio.h>
int
main
()
{
/* Kamus */
char cc;
/*Algoritma*/
system("clear");
printf("Ketikkan sebuah huruf
vokal, akhiri dengan RETURN >>> ");
scanf("%c",&cc);
printf("\n ");
switch (cc)
{
case 'A':
{
printf("Yang diketik
adalah a \n");
break;
}
case 'E':
{
printf("Yang diketik adalah e
\n");
break;
}
case 'I':
{
printf("Yang diketik
adalah i \n");
break;
}
case 'O':
{
printf("Yang diketik adalah o
\n");
break;
}
case 'U':
{
printf("Yang diketik adalah u
\n");
break;
}
case 'a':
{
printf("Yang diketik
adalah a \n");
break;
}
case 'e':
{
printf("Yang diketik adalah e
\n");
break;
}
case 'i':
{
printf("Yang diketik
adalah i \n");
break;
}
case 'o':
{
printf("Yang diketik adalah o
\n");
break;
}
case 'u':
{
printf("Yang diketik adalah u
\n");
break;
}
default:
printf("%c merupakan huruf konsonan atau karakter lainnya
\n", cc);
}
//getch ();
return 0;
}
|
2.2 PEMBAHASAN CODING
2.2.1 . bacakar.c
Bacakar.c adalah program yang menjelaskan
tentang membaca karakter.
Penjelasan koding:
·
char
cc; adalah inputannya ataupun outputannya karakter.
·
printf
(“hello \n”); adalah menampilkan tulisan “hello” dan “\n” itu berfungsi sebagai ganti baris.
·
printf
(“baca 1 kar: ”); yang
dimaksud adalah menampilkan tulisan tersebut dan kemudian kita memasukkan
karakter sesuai kamus, setelah itu ada tulisan scanf (“%c\n”, cc) lanjutan eksekusi dari karakter yang kita
masukkan tadi. Apabila tidak
menggunakan scanf maka karakter
yang kita masukkan tidak bisa dibaca dan di eksekusi.
·
scanf dalam
program tersebut berfungsi sebagai inputan berbagai data, dan data tersebut
harus ada adalah data yang akan kita compiler nantinya.
·
“%c” adalah
format untuk type karakter.
· getch membaca karakter tetapi
data yang dimasukkan tidak akan di munculkan ke layar.
· return mengembalikan program
tersebut.
|
2.2.1 konstan2.c
Program konstan2.c adalah program untuk
menghitung luas lingkaran dari jari jari yang dibaca dari inputan user dan
juga untuk melatih pemakaian konstanta dengan define.
Pembahasan
koding:
· Dalam
coding diatas kita akan melihat tulisan #define
pi 3.1415 maksudnya adalah semua kata “pi” yang ada dalam coding
diartikan sebagai angka yang mempunyai nilai tetap atau konstanta yaitu “3.1415”. Ketika kita hendak
menghitung luas lingkaran, tidak perlu mengetik atau menginput angka 3.1415,
karna cukup ketik kata “pi” maka
program akan membaca kata tersebut sesuai yang kita buat pada awal program.
· float r dan float luas adalah inputan r dan luasnya itu bertype bilangan
pecahan.
· printf (“Jari-jari Lingkaran = ”); menampilkan
tulisan tersebut ke layar kemudian scanf
(“%f”, &r); mengesekusi dari inputan jari-jari lingkaran yang kita
masukkan.
· luas
= pi*r*r; adalah rumus yang dibuat untuk mencari luas sebuah lingkaran.
· printf (“Luas Lingkaran = %6.2f\n, luas”); menampilkan
tulisan tersebut ke layar dan juga hasil dari perhitungan rumus.
· %6.2f maksudnya menjelaskan 6
angka didepan koma dan 2 angka dibelakang koma dalam tipe float. Dimana tipe
data ini dipanggil dari variable luas.
· %f merupakan format type untuk
float dalam bahasa C.
|
2.2.3 if2.c
If2.c adalah program yang
menggunakan operator kondisional if dengan 2 kondisi. Dalam program ini kita mencoba
menganalisa apakah sebuah bilangan integer yang diinputkan oleh user
merupakan bilangan positif atau negatif.
Pembahasan
koding:
else
/* a < 0 */ jika nilai a atau inputannya kurang dari nol,
maka akan dieksekusi pada sorce code printf
(“Nilai a negatif %d \n”, a); yang berarti akan menampilkan tulisan “Nilai a negatif (%d=nilai
a)”dilayar, atau dengan kata lain nilai a-nya negatif
|
2.1.4 tempair.c
Dalam program tempair.c kali ini kita
menggunakan operator kondisional if dengan tiga kondisi yang menentukan
wujud suatu zat. Kita memberikan inputan temperature yang bernilai integer
dan suatu zat tersebut bernilai derajat celcius.
Pembahasan koding:
· if (T < 0) dan printf (“Wujud air beku %d \n”, T) maksudnya
jika inputan temperaturnya lebih kecil dari nol maka “Wujud air beku”
|
2.1.5
vokalbesarkecil1.c
vokalbesarkeci1.c ini adalah
pengubahan dari program switch case yang digunakan untuk percabangan yang
banyak. Di program ini diberikan perubahan dengan menggunakan percabangan switch-case.
Di program ini jika kita menginput huruf vocal yang berkapital ataupun tidak
(huruf besar atau huruf kecil) maka program akan menampilkan tampilan bahwa
huruf itu merupakan huruf vocal. Dan sebaliknya, jika menginputkan selain
huruf vocal (A/I/U/E/O/a/i/u/e/o) maka akan menampilkan tulisan bahwa huruf
tersebut merupakan huruf konsonan atau karakter lain.
Berikut pembahasan
codingnya:
#include
<stdio.h> à memanggil library stdio.h
int
main
()
{
/* Kamus */
char cc; à mendeklarasikan bahwa variabel cc bertipe
karakter
/*Algoritma*/
system("clear"); à untuk membersihkan layar
printf("Ketikkan sebuah huruf
vokal, akhiri dengan RETURN >>> ");
scanf("%c",&cc); à untuk menginputkan nilai variabel cc oleh user
printf("\n "); à mengganti baris
switch (cc)
{
case 'A': àjika diinput variabel cc adalah karakter A, maka
{
printf("Yang diketik
adalah a \n");
à akan muncul tulisan pada layar “Yang diketik
adalah a”
break; à untuk menghentikan perintah pada switch-case
}
case 'E': àjika diinput variabel cc adalah karakter E, maka
{
printf("Yang diketik adalah e
\n");
à akan muncul tulisan pada layar “Yang diketik
adalah e”
break;
}
case 'I': àjika diinput variabel cc adalah karakter I, maka
{
printf("Yang diketik
adalah i \n");
à akan muncul tulisan pada layar “Yang diketik
adalah i”
break;
}
case 'O': àjika diinput variabel cc adalah karakter O, maka
{
printf("Yang diketik adalah o
\n");
à akan muncul tulisan pada layar “Yang diketik
adalah o”
break;
}
case 'U': àjika diinput variabel cc adalah karakter U, maka
{
printf("Yang diketik adalah u
\n");
à akan muncul tulisan pada layar “Yang diketik
adalah u”
break;
}
case 'a': àjika diinput variabel cc adalah karakter a, maka
{
printf("Yang diketik
adalah a \n");
à akan muncul tulisan pada layar “Yang diketik
adalah a”
break;
}
case 'e': àjika diinput variabel cc adalah karakter e, maka
{
printf("Yang diketik adalah e
\n");
à akan muncul tulisan pada layar “Yang diketik
adalah e”
break;
}
case 'i': àjika diinput variabel cc adalah karakter i, maka
{
printf("Yang diketik
adalah i \n");
à akan muncul tulisan pada layar “Yang diketik
adalah i”
break;
}
case 'o': àjika diinput variabel cc adalah karakter o, maka
{
printf("Yang diketik adalah o
\n");
à akan muncul tulisan pada layar “Yang diketik
adalah o”
break;
}
case 'u': àjika diinput variabel cc adalah karakter u, maka
{
printf("Yang diketik adalah u
\n");
à akan muncul tulisan pada layar “Yang diketik
adalah u”
break;
}
default: à selain itu,
printf("%c merupakan huruf konsonan atau karakter lainnya
\n", cc); à akan muncul tulisan pada layar “(huruf yang diinput) merupakan
huruf konsonan atau karakter lainnya”
}
return 0;
}
|
2.3 SCREENSHOT
2.3.1 bacakarakterfloat.c
à Saat di-Run Programnya
2.3.2 if3.c
à Saat di-Run Programnya
2.3.3 konstan.c
à Saat di-Run Programnya
2.3.4 switch-case.c
à Saat di-Run Programnya
2.3.5 bacakar.c
à Saat di-Run Programnya
2.3.6 if2.c
à Saat di-Run Programnya
2.3.7 konstan2.c
à Saat di-Run Programnya
2.3.8 tempair.c
à Saat di-Run Programnya
2.3.9 vokalbesarkecil1.c
à Saat di-Run Programnya
DAFTAR PUSTAKA
Amri, Ahmad Ariful. 2012. “Fungsi Scanf
Dalam Bahasa C”. Dalam http://go-program.blogspot.com/2012/11/fungsi-scanf-dalam-bahasa-c.html
Anymous. 2012. “fungsi if switch for while do
while ” Dalam http://www.kompikita.net/2012/04/fungsi-if-switch-for-while-do-while.html
Caterine. 2012. “struktur kondisional dalam bahasa C”.
Dalam http://cateyeon.blogspot.com/2012/07/12.html
Liem, Inggriani. 2003. “Diktat Program Kecil dalam Bahasa C”. Bandung : Institut Teknologi Bandung.
Tidak ada komentar:
Posting Komentar