Anda di halaman 1dari 43

1

BAB I
PENDAHULUAN

1.1. Latar Belakang


Dalam penulisan laporan praktikum ini, penulis akan memberikan
beberapa pengertian yang berhubungan dengan judul laporan, karena tanpa
pengertian yang jelas akan menyebabkan informasi yang disajikan tidak sesuai
dengan hasil praktikum yang dipaparkan.

Algoritma dan pemrograman merupakan ilmu yang sangat esensial dalam


membuat program. Dengan pemrograman itu sendiri, sebuah program bisa
disusun dibantu dengan algoritma. Algoritma membantu penyelesaian masalah
yang ingin dipecahkan untuk membuat sebuah program,kemudian program
disusun oleh programmer dengan mengcompile source code menjadi sebuah
program yang dapat dieksekusi.

Algoritma dapat disusun dalam bentuk pseudo code maupun flowchart.


Pseudo code adalah Kode atau tanda yang menyerupai (pseudo) program atau
merupakan penjelasan cara menyelesaikan suatu masalah. Pseudo-code sering
digunakan oleh manusia untuk menuliskan algoritma. Sementara flowchart adalah
suatu teknik untukk menyusun rencana program yang telah dipergunakan oleh
kalangan programmer komputer sebelum algoritma menjadi populer. Flowchart
menggunakan simbol gambar yang menunjukkan aliran dari proses terhadap data.

Listing pemrograman tersebut ditulis dalam bahasa pemrograman.


Terdapat macam macam bahasa pemrograman, dari tingkat rendah seperti bahasa
mesin sampai bahasa tingkat tinggi seperti Pascal, C, Delphi dll. Setiap bahasa
pemrograman memiliki kelemahan dan kelebihan masing-masing. Tinggal peran
programmer itu sendiri yang memilih bahasa pemrograman yang sesuai dengan
kebutuhannya.
2

Tentunya ada faktor lain yang perlu diperhatikan dalam pemrograman,


seperti efisiensi dalam menuliskan source dan seberapa user friendlynya program
tersebut. Semua itu tentunya penting agar program yang dibuat lebih berdaya guna
dan memudahkan pengguna komputer.

1.2. Tujuan Praktikum


1. Untuk mengenal dan memahami fungsi dasar dalam Bahasa C.
2. Agar bisa menggunakan fungsi dasar Bahasa C.
3. Untuk bisa mengaplikasikan Bahasa C dalam pembuatan berbagai
program.

1.3. Manfaat Praktikum


1. Menambah wawasan mengenai pemrograman bahasa C.
2. Memberikan pengetahuan mengenai struktur dan sintaks bahasa C.
3. Memberikan pengetahuan mengenai bagaimana mengaplikasikan bahasa C
dalam pembuatan berbagai program.
3

BAB II

LANDASAN TEORI

Dalam praktikum ini digunakan bahasa pemrograman C, untuk itu dibawah ini
akan diuraikan beberapa teori dasar mengenai bahasa C sebagai berikut ini:

2.1. Sejarah Bahasa C

Bahasa C diciptakan oleh Dennis Ritchie bersama dengan Brian Kernighan


pada tahun 1970-an di Bell Telephone Laboratories Inc. Bahasa ini mendapat
sambutan dari para programmer dan berhasil digunakan untuk menciptakan
berbagai software baru seperti VisiCalc, WordStar,Lotus dll. Bahkan system
operasi UNIX juga dilahirkan dari bahasa ini.

Bahasa C dikatakan sebagai bahasa pemrograman terstruktur, karena


strukturnya menggunakan fungsi-fungsi sebagai subroutinenya(fungsi lain selain
fungsi utama). Subroutine ini ditulis setelah fungsi utama(main) atau diletakkan
pada file pustaka(library). Bila file pustaka ini akan dipakai dalam suatu program,
maka nama file headernya harus dilibatkan dalam program menggunakan
preprocessor directive

2.2. Struktur Bahasa C

Bahasa C memiliki beberapa elemen dasar seperti:

1. Karakter
Mengacu dari system standar kode internasional ANSI karakter yang
dikenal didalam bahasa C adalah karakter abjad/huruf, angka, dan simbol-simbol
khusus.
4

2. Keyword
Keyword adalah suatu kata yang memiliki makna dan fungsi tertentu,
karena itu ia disebut juga reserved word. Hampir semua keyword ditulis dalam
huruf kecil.
3. Identifier
Identifier dapat dikatakan sebagai suatu tempat untuk menyimpan nilai.
Identifier dapat diberi nama unik dan bisa memiliki tipe data.Ia dibagi menjadi
dua:

a. Konstanta: nilainya tetap selama program


berjalan(dieksekusi),cara untuk mengubahnya hanya melalui source
code saja.
b. Variabel: nilainya dapat berubah atau diubah selama program
berjalan(dieksekusi).Yang mengubahnya hanyalah user atau proses.
4. Tipe data
Merupakan pengelompokan data yang digunakan untuk merepresentasikan
jenis sebuah nilai yang terdapat pada program.
5. Operator
Operator berkaitan erat dengan kata operasi. Operator ditandai dengan
sebuah atau beberapa simbol dan kata.
6. Punctuator
Punctuator adalah simbol-simbol yang berkenaan sebagai tanda baca pada
struktur penulisan bahasa C.

2.3. Macam-macam Pernyataan


Ada macam-macam pernyataan atau statement yang digunakan dalam
bahasa C. Pernyataan pernyataan itu diuraikan sebagai berikut:

2.3.1. Pernyataan Kosong(Null Statement)


5

Pernyataan ini merupakan yang paling sederhana, kita hanya perlu


menambahkan pengakhir titik koma(;) saja di bagian akhirnya.Tidak ada
tindakan yang dilakukan dalam pernyataan ini.

2.3.2. Pernyataan Ungkapan(Expression Statement)


Sementara pernyataan yang ini dibentuk dari suatu ungkapan dan diakhiri
dengan titik koma.

2.3.3. Pernyataan kendali(Control Statement)


Statement ini digunakan untuk mengendalikan proses dari program, yaitu:
Penyeleksian kondisi(percabangan):
a) If, case dan switch
Fungsi if dapat dibagi menjadi 3 yaitu:
-If tunggal:
If(kondisi)
{
Perintah benar;
}

-If-else:

If(kondisi)
{
Perintah benar;
}

-Nested if:

If(kondisi 1)
{
If(kondisi 2)
6

{
Perintah benar kondisi 2;
}
Else
{
Perintah salah kondisi 2;}
}
Else
Perintah salah kondisi 1;
Fungsi switch memiliki struktur sebagai berikut:

switch (ungkapan) {
case nilai1: perintah jika nilai1=ungkapan;break;
case nilai2: perintah jika nilai2=ungkapan;break;
………
case nilaiN: perintah jika nilaiN=ungkapan;break;
default:
perintah salah nilai 1 s/d N;
}

b) .Lompatan(perulangan):
Looping atau perulangan adalah pengulangan perintah perintah
sampai mencapai keadaan tertentu. Fungsi-fungsi perulangan dapat
dibagi menjadi:for, while, do-while, goto, break dan continue.
-For:
Perulangan for digunakan untuk menghasilkan pengulangan
beberapa kali tanpa penggunaan kondisi apapun. Bentuk dasarnya
adalah:

For(nilai awal;batas;pencacah)
{
7

Badan perulangan
}

-While:
Perulangan while merupakan salah satu pernyataan yang berguna
untuk memproses suatu pernyataan atau beberapa pernyataan
beberapa kali tanpa diketahui pasti berapa kali perulangan tersebut
akan dilakukan. Struktur umum perulangan ini adalah:
Nilai awal;
While(batas)
{
Badan perulangan;
Pencacah;
}

-Do while:
Mirip seperti while,hanya saja pada do while pernyataannya hanya
sekali dieksekusi. Bentuk umumnya adalah:
Nilai awal;
do
{
Badan perulangan;
Pencacah;
} while(batas);

-continue-break:
Biasanya digunakan pada switch dan loop. Bila digunakan pada for
bentuknya adalah:
for(nilai awal;batas;pencacah)
{
8

If(batas) continue;
{ pernyataan;}
If(batas) break;
}
-goto:
Bentuk umumnya adalah:
goto bawah;
Pernyataan1;
Pernyataan2;
bawah: pernyataan3;

2.3.4. Pernyataan Jamak(Compound /Block Statement)


Pernyataan atau statement yang terdiri dari gabungan beberapa statement
tunggalyang ditulis pada posisi diantara tanda kurung kurawal(“{”dan“}”)

2.4. Fungsi
Fungsi adalah suatu kumpulan instruksi/perintah/program yang
dikelompokkan menjadi satu,letaknya terpisah dari program yang menggunakan
fungsi tersebut, memiliki nama tertentu yang unik, dan digunakan untuk
mengerjakan suatu tujuan tertentu. Sementara parameter adalah nama nama
peubah yang dideklarasikan pada bagian header fungsi.Secara harfiah, penulisan
dalam bahasa C disusun secara modular. Bafhkan pada program utamanya juga
berbentuk modul. Secara umum bentuk fungsi C adalah sebagai berikut:

Tipe_data nama fungsi (daftar_parameter)


{
Tubuh_fungsi;

2.4.1. Deklarasi
9

Ada dua cara untuk mendeklarasikan fungsi yaitu secara langsung dan
tidak langsung. Pada deklarasi langsung, fungsi ditempatkan diatas fungsi
main().
Sementara secara tidak langsung dapat dilakukan dengan menempatkan
nama prototype fungsi diatas fungsi main() dan implementasinya
dibawahnya.
2.4.2. Parameter
Parameter bisa dilewatkan kedalam sebuah fungsi dengan dua cara sbb:
1. Call by Value
Adalah suatu cara melewatkan sebuah nilai pada parameter.

2. Call by Reference
Adalah suatu cara melewatkan alamat sebuah variable pada sebuah
parameter. Untuk jenis parameter ini, perlu ditambahkan operator pointer
yaitu & atau * di depannya.

3. Rekursif
Rekursif adalah pemanggilan oleh dirinya sendiri. Oleh karena fungsi bisa
menghasilkan nilai balik, maka fungsi juga bisa memanggil dirinya
sendiri.

2.5. Array
Array adalah suatu bentuk struktur data yang menampung satu data atau
lebih dari satu data yang sejenis. setiap elemen atau anggota array dapat dikenali
atau diakses melalui suatu indeks. array dibagi tiga berdasarkan jumlah
dimensinya. array berdimensi satu disebut vektor, yang berdimensi dua disebut
matriks serta yang berdimensi lebih dari dua disebut tensor.
10

BAB III

HASIL PRAKTIKUM

3.1. Modul I
3.1.1. Latihan

1. Listing
#include <stdio.h>
#include <conio.h>

int main ()

{
int c;

double a;

float b;

long int x;

char nama[15];

char F;

printf("Masukkan angka berdasarkan tipe data\n");

printf("Bilangan Bulat(int): ");scanf("%d",&c);

printf("Bilangan Riil (float): ");scanf("%f",&b);

printf("Bilangan Double: ");scanf("%lf",&a);

printf("Bilangan long integer: ");scanf("%li",&x);

printf("Bilangan karakter: ");scanf("%s",&F);


11

printf("Masukkan Nama Anda: ");scanf("%s",&nama);

printf("\n Tampilkan kembali yang anda input tadi\n");

printf("integer:%d\n Long Integer: %li\n Float:%f \n


Long Float: %lf\n Karakter: %c\n String:
%s",c,x,b,a,F,nama);

return 0;

Hasil Eksekusi

Gambar 1.1 Program yang menghasilkan input sesuai tipe


data.

2. Listing
#include<stdio.h>

int main ()
12

{ int angka1,angka2,total;

printf("Masukkan angka pertama: ");

scanf("%i",&angka1);

printf("Masukkan angka kedua: ");

scanf("%i",&angka2);

total=angka1+angka2;

printf("Hasil penjumlahan adalah %i",total);

return 0;

Hasil Eksekusi

Gambar 1.2 Program yang menyatakan penjumlahan.


3. Listing

#include<conio.h>

#include<stdio.h>

#include<stdlib.h>

using namespace std;


13

int main ()

{ char nim [25];

char nama [25];

char alamat [25];

printf("\t\tLaboraturium Pemrograman\t\t\n");

printf("\t\tTeknik Informatika Unimal\t\t\n");

printf("================================
=======================\n");

printf("NIM\t: ");scanf("%s",&nim);

printf("\n");

printf("NAMA\t: ");scanf("%s",&nama);

printf("\n");

printf("ALAMAT\t: ");scanf("%s",&alamat);

printf("\n");

printf("================================
=======================\n");

printf("NIM\t\tNAMA\t\tALAMAT");

printf("\n");

printf("================================
=======================\n");

printf("%s",nim);
14

printf(" ");

printf("%s",nama);

printf(" ");

printf("%s", alamat);

printf(" ");

printf("\n");

printf("================================
=======================\n");

return EXIT_SUCCESS;

Hasil Eksekusi

Gambar 1.3 Program yang memberikan output data


pribadi.

3.2. Modul II
3.2.1. Latihan
15

1. Listing
#include<stdio.h>
#include<conio.h>

int main ()
{
int a,c=10;
printf("Masukkan sebuah nilai: ");scanf("%d",&a);
if(a<10)
{printf("Nilai %d lebih kecil dari %d\n",a,c);}
printf("Jumlah %d+%d=%d\n",a,c,a+c);
return 0;
}
Hasil Eksekusi

Gambar 2.1.1 Hasil eksekusi latihan 1 apabila diberikan


input angka yang lebih kecil dari 10.

Gambar 2.1.2 Hasil eksekusi latihan 1 apabila diberikan


input angka yang lebih besar dari 10.
2. Listing
16

#include<stdio.h>
#include<conio.h>

int main ()
{
int a,c;
printf("Masukkan nilai angka pertama:
");scanf("%d",&a);
printf("Masukkan nilai angka kedua: ");scanf("%d",&c);
if(a<c)
{printf("Nilai %d lebih kecil dari %d\n",a,c);}
else
{printf("Nilai %d lebih besar dari %d\n",a,c);}
return 0;
}
Hasil Eksekusi

Gambar 2.2.1 Hasil eksekusi latihan 2 apabila diberikan


input angka pertama 4 dan angka kedua 5.
17

Gambar 2.2.2 Hasil eksekusi latihan 2 apabila diberikan


input angka pertama 5 dan angka kedua 4.
3. Listing
#include<stdio.h>
#include<conio.h>

int main ()
{
int a,b,c;
printf("Masukkan nilai angka pertama:
");scanf("%d",&a);
printf("Masukkan nilai angka kedua: ");scanf("%d",&b);
printf("Masukkan nilai angka ketiga: ");scanf("%d",&c);
if(a>c && a>b)
{printf("Angka %d terbesar dari %d dan %d \n",a,b,c);}
else if (c>a && c>b)
{printf("Angka %d terbesar dari %d dan %d \n",c,b,a);}
else
{printf("Angka %d terbesar dari %d dan %d \n",b,c,a);}
return 0;
}
Hasil Eksekusi

Gambar 2.3 Program pembanding tiga angka.


4. Listing
#include<stdio.h>
#include<conio.h>
18

int main ()
{
int a,b,c;

printf("masukkan nilai angka pertama:


");scanf("%d",&a);
printf("masukkan nilai angka kedua: ");scanf("%d",&b);
printf("masukkan nilai angka ketiga: ");scanf("%d",&c);
if(a>c)
{
if(a>b)
printf("Angka %d terbesar dari %d dan %d
\n",a,b,c);
else
printf("Angka %d terbesar dari %d dan %d
\n",b,c,a);
}
else if (c>a)
{
if(c>b)
printf("Angka %d terbesar dari %d dan %d
\n",c,b,a);
else
printf("Angka %d terbesar dari %d dan %d
\n",b,c,a);
}
else
{
printf("Angka %d terbesar dari %d dan %d \n",b,c,a);
}
19

return 0;
}
Hasil Eksekusi

Gambar 2.4 Program yang membandingkan 3 angka.


5. Listing
#include<stdio.h>
#include<conio.h>

int main ()
{
int a,b,c;

printf("Masukkan sebuah angka antara 1-3:


");scanf("%d",&a);
switch(a)
{
case 1:printf("Anda memasukkan angka satu");break;
case 2:printf("Anda memasukkan angka
dua");break;
case 3:printf("Anda memasukkan angka
tiga");break;
default: printf("Inputan salah, Input angka 1-3");
}
return 0;
}
20

Hasil Eksekusi

Gambar 2.5.1 Hasil Eksekusi latihan 5 bila angka yang


diinput 1-3.

Gambar 2.5.2 Hasil Eksekusi Latihan 5 bila angka yang


diinput lebih dari 3, dalam hal ini angka 5.
6. Listing
#include<stdio.h>
#include<conio.h>

int main ()
{
char unit;
int j;

printf("Anda unit apa? (A/B/C): ");scanf("%c",&unit);


switch(unit)
{
case 'A':printf("Apa jenis kelamin Anda (L/P)?:\n");
printf("Angka 1 untuk laki-
laki dan angka 2 untuk perempuan: ");scanf("%d",&j);
21

switch(j)
{
case 1: printf("Anda dari
unit %c yang berjenis kelamin Laki-laki",unit);break;
case 2: printf("Anda dari unit %c
yang berjenis kelamin perempuan",unit);break;
default: printf("Inputan jenis
kelamin salah");
} break;
case 'B':printf("Apa jenis kelamin Anda
(L/P)?:\n");
printf("Angka 1 untuk laki-
laki dan angka 2 untuk perempuan: ");scanf("%d",&j);
switch(j)
{
case 1: printf("Anda dari
unit %c yang berjenis kelamin Laki-laki",unit);break;
case 2: printf("Anda dari unit %c
yang berjenis kelamin perempuan",unit);break;
default: printf("Inputan jenis
kelamin salah");
} break;
case 'C':printf("Apa jenis kelamin Anda
(L/P)?:\n");
printf("Angka 1 untuk laki-
laki dan angka 2 untuk perempuan: ");scanf("%d",&j);
switch(j)
{
case 1: printf("Anda dari
unit %c yang berjenis kelamin Laki-laki",unit);break;
22

case 2: printf("Anda dari unit %c


yang berjenis kelamin perempuan",unit);break;
default: printf("Inputan jenis
kelamin salah");
} break;

default:printf("Inputan salah, input unit A/B/C");


}
return 0;
}
Hasil Eksekusi

Gambar 2.6 Program yang memberikan output data sesuai


yang dimasukkan.
3.2.2. Tugas
Listing
#include<stdio.h>
#include<conio.h>

int main()
{
int ukuran,nama;
printf("Masukkan no produk(1.Nutrilon/2.Promil/3.Similac:
");scanf("%d",&nama);
switch(nama)
{
case 1:printf("Masukkan ukuran: ");scanf("%d",&ukuran);
23

switch(ukuran)
{ case 400:printf("Harga produk adalah Rp 77.000,-");break;
case 900:printf("Harga produk adalah Rp 145.000,-");break;
default:printf("Ukuran yang anda masukkan salah ");
}break;
case 2:printf("Masukkan ukuran: ");scanf("%d",&ukuran);
switch(ukuran)
{ case 400:printf("Harga produk adalah Rp 45.000,-");break;
case 900:printf("Harga produk adalah Rp 90.000,-");break;
default:printf("Ukuran yang anda masukkan salah ");
}break;
case 3:printf("Masukkan ukuran: ");scanf("%d",&ukuran);
switch(ukuran)
{ case 400:printf("Harga produk adalah Rp 90.000,-");break;
case 900:printf("Harga produk adalah Rp 175.000,-");break;
default:printf("Ukuran yang anda masukkan salah ");
}break;
default:printf("No produk yang anda masukkan salah\n");
}
return 0;
}
Hasil Eksekusi

Gambar 2.7 Program mengenai harga produk susu.


3.3. Modul III
3.3.1. Latihan
1. Listing
24

#include<stdio.h>

int main()
{
int i;
for(i=1;i<=10;i++)
{
printf("%d\t",i);
}
return 0;
}
Hasil Eksekusi

Gambar 3.1 Program perulangan angka menggunakan for.


2. Listing
#include<stdio.h>
#include<conio.h>

int main()
{
int i,j;
for (i=1;i<=10;i++)
{
for(j=1;j<=10;j++)
{
printf("*");
}
printf("\n");
25

}
return 0;
}
Hasil Eksekusi

Gambar 3.2 Program perulangan for yang berbentuk


nested..
3. Listing
#include<stdio.h>
#include<conio.h>

int main()
{
int i;

i=1;
while(i<=10)
{
printf("%d\t",i);
i=i+1;
}
return 0;
}
Hasil Eksekusi
26

Gambar 3.3 Program perulangan menggunakan while.


4. Listing
#include<stdio.h>
#include<conio.h>

int main()
{
int i;
do
{
printf("%d\t",i);
i=i+1;
}while(i<=10);
return 0;
}
Hasil Eksekusi

Gambar 3.4 Program perulangan do-while..


5. Listing
#include<stdio.h>
#include<conio.h>

int main()
{
int i,j;
for(i=1;i<=10;i++)
27

{
if(i==4) continue;
{
printf("%d\t",i);
}
if(i==9) break;
}
return 0;
}
Hasil Eksekusi

Gambar 3.5 Program perulangan menggunakan break.


6. Listing
#include<stdio.h>
#include<conio.h>

int main()
{
printf("Pernyataan Pertama \n");
goto bawah;
printf("Pernyataan Kedua\n");
bawah:printf("Pernyataan Ketiga");

return 0;
}
Hasil Eksekusi
28

Gambar 3.6 Program perulangan menggunakan goto.


Tugas
1. Listing
#include<stdio.h>
#include<conio.h>

int main()
{
int i;
for(i=10;i>=1;i--)
{
printf(" ");
printf("%d",i);
}
return 0;
}
Hasil Eksekusi

Gambar 3.7 Program perulangan angka secara mundur.


2. Listing
#include<stdio.h>
#include<conio.h>
#include<iomanip.h>
29

#define maxs 7
int main()
{
int a,b;
for (a=0;a<=maxs;a+=2)
{
for(b=a;b<=maxs;b++)

{ if (b %2==1)
setw(2);
else
printf("*");
}
printf("\n");
}
return 1;
}
Hasil Eksekusi

Gambar 3.8 Program perulangan bintang.


3. Listing
#include<stdio.h>
#include<conio.h>

int main ()
{
int i,h;
30

int j = 8;
for(i=5;i>0;i--)
{
h=j-i;
printf("%i\t", h);
printf("\n");

}
return 0;
}
Hasil Eksekusi

Gambar 3.9 Program perulangan angka secara menurun.

3.4. Modul IV
3.4.1. Latihan
1. Listing
#include<stdio.h>
#include<conio.h>

int kali(int angka_1, int angka_2)


{
return angka_1 * angka_2;
}
int main()
{
printf("Hasil kali angka 2 dan 3 adalah",kali(2,3));
31

return 0;
}

Hasil Eksekusi

Gambar 4.1 perkalian menggunakan fungsi


2. Listing
#include<stdio.h>
#include<conio.h>

int kali(int angka_1, int angka_2);


int jumlah(int*angka_1,int*angka_2);

int main()
{
int a,b;
a=10;b=10;

printf("Hasil kali antara a dan b adalah


%d\n",kali(a,b));
printf("Hasil jumlah antara a dan b adalah
%d",jumlah(&a,&b));

return 0;
}
32

int kali(int angka_1, int angka_2) //implementasi prototype


fungsi
{
angka_1=angka_1 * angka_2;
return angka_1;
}

int jumlah(int *angka_1, int *angka_2) //implementasi


prototype fungsi
{
*angka_1=*angka_1+*angka_2;
return *angka_1;
}
Hasil Eksekusi

Gambar 4.2 Fungsi call by reference

3. Listing
#include<stdio.h>
#include<conio.h>

int faktorial(int); //deklarasi fungsi


int main()
{
printf("%d",faktorial(5));
return 0;
}
33

int faktorial(int angka_1) //implementasi prototype fungsi


{
if(angka_1==0)
return 1;
else
return angka_1*faktorial(angka_1-
1);
}
Hasil Eksekusi

Gambar 4.3 Fungsi rekursif

3.4.2. Tugas
1. Listing
#include<stdio.h>
#include<conio.h>

int segitiga(int angka_1,int angka_2);


int main()
{
int a, b;
a=8;b=5;

printf("Luas segitiga adalah%d\n",segitiga(a,b));

return 0;
}
int segitiga(int angka_1, int angka_2)
34

{
angka_1=0.5*angka_1*angka_2;
return angka_1;
}
Hasil Eksekusi

Gambar 4.4 Fungsi menghitung luas bangun segitiga

3.5. Modul V
3.5.1. Latihan
1. Listing
#include<stdio.h>
#include<conio.h>
int main()
{
int i,bil_bulat[5];
float bil_real[5];
char nama[20];

for(i=0;i<=5;i++)
{
printf("Masukkan bilangan bulat ke
%d:",i+1);
scanf("%d",&bil_bulat[i]);
printf("Masukkan bilangan pecahan ke
%d:",i+1);
scanf("%f",&bil_real[i]);
}
35

printf("Masukkan nama anda :");


scanf("%s",&nama);
for(i=0;i<5;i++)
{
printf("bilangan bulat ke %d:
%d\n",i+1,bil_bulat[i]);
printf("bilangan bulat ke %d:
%f\n",i+1,bil_real[i]);
}
printf("Nama Anda : %s",nama);

return 0;

}
Hasil Eksekusi

Gambar 5.1 Latihan Array Dimensi satu

2. Listing
#include<stdio.h>
36

#include<conio.h>

int main()
{
int i,j;
int matrikA[3][3],matrikB[3][3], matrikhasil[3][3];

for (i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("Masukkan elemen
A[%d][%d]: ",i+1,j+1);
scanf("d",&matrikA[i][j]);
}
}
for (i=0;i<3;i++)
{
for (j=0;j<3;j++)
{
printf("Masukkan elemen
B[%d][%d]: ",i+1,j+1);
scanf("%d",&matrikB[i][j]);
}
}
printf("\n Elemen dari matriks A adalah:\n");
for (i=0;i<3;i++)
{
for(j=0;j<3;j++)
{
printf("%d\t",matrikA[i][j]);
37

}
printf("\n");
}
printf("\n Elemen dari matriks B adalah:\n");
for (i=0;i<3;i++)
{
for (j=0;j<3;j++)
{
printf("%d\t",matrikB[i][j]);
}
printf("\n");
}

for (i=0;i<3;i++)
{
for(j=0;j<3;j++)
{

matrikhasil[i][j]=matrikA[i][j]+matrikB[i][j];
}
}

for (i=0;i<3;i++)
{
for(j=0;j<3;j++)
{

printf("%d\t",matrikhasil[i][j]);
}
printf("\n");
}
38

return 0;
}
Hasil Eksekusi

Gambar 5.2 Array Dua Dimensi


39

BAB IV
ANALISA PROGRAM
Dari hasil praktikum diatas dapat dihasilkan analisa yang menunjukkan
bahwa dalam menuliskan source code ada hal-hal essensial yang harus dipenuhi
agar program dapat berjalan , seperti struktur mana yang harus ada dan tata cara
penulisan struktur tersebut, yaitu:

a. Preprosessor Directive adalah bagian yang berisi pengikutsertaan file atau


berkas-berkas fungsi maupun pendefinisian konstanta atau fungsi makro
tertentu. Header file ini berisi perintah tertentu yang akan dipakai dalam
mengoperasikan program misalnya printf dan scanf yang terdapat dalam
<stdio.h>, jadi gunakanlah header file sesuai dengan perintah yang ingin
digunakan.

b. Suatu program C minimal harus memiliki function main(), tanpa function itu
maka program C tidak dapat dieksekusi tapi bisa dikompilasi. Fungsi main ini
umumnya ditulis dalam bentuk int main ( ) yang berarti bahwa nilai kembali
dari fungsi adalah integer, atau void main ( ) yang berarti fungsi tersebut tidak
memiliki nilai kembali

c. Selanjutnya setiap menulis bahasa C diperlukan statement. Statement adalah


suatu baris instruksi/perintah tertentu. Statement menyebabkan suatu tindakan
akan dilakukan oleh komputer. Perlu diperhatikan bahwa pemberian tanda
kurung kurawal di awal dan akhir statement. Jika tidak compiler tidak akan
membaca statement tersebut dan program tidak bisa dieksekusi karena
dianggap error.

d. Deklarasi variabel menyebabkan komputer menyediakan tempat yang diberi


nama (identifier). Kita bebas memberi nama identifier asal tidak menyamai
reserved keyword.
40

e. Untuk mencetak teks ke layar computer dibutuhkan perintah printf. lalu untuk
membaca hasil inputan dari perintah yang diberikan teks tersebut, dibutuhkan
scan, lalu hasil inputan itu disimpan dalam variable tertentu. “%i” untuk
integer, “%c” untuk char dan string.

f. Dalam bahasa C tidak dikenal string, sehingga dibutuhkan penggunaan array


agar bisa menggunakan string. Contoh dapat dilihat pada latihan 3 modul I
dan hasil eksekusinya dapat dilihat seperti gambar 1.3.

g. Dalam setiap program tentunya diperlukan operasi entah itu aritmatika dan
penyamaan variabel, dsb. Penulisan hasil dari operasi biasanya dituliskan di
sebelah kiri dan operasinya disebelah kanan.

h. Berikan tanda kurung saat menuliskan statement dalam fungsi if, namun
jangan berikan tanda semicolon(;). Jika tidak, statement itu tidak akan dibaca
sebagai fungsi if. Fungsi if terdapat tiga jenis yaitu if biasa, if-else dan dan
nested if. Pada if, statement hanya dijalankan apabila ia bernilai benar.
Sementara pada nested if jika kondisi pada salah satu statement ia juga akan
membaca statement yang lain, dan begitu seterusnya sampai statement
terakhir.

i. Fungsi switch (case) hanya membaca variabel integer, bila ingin agar switch
membaca char maka variabel char pada fungsi case harus diberi tanda petik
satu („) dan berikan perintah break di tiap akhir statement.

j. Untuk membatasi perulangan dalam fungsi loop dibutuhkan nilai awal,


kondisi dan yang paling penting: pencacah. Setiap kondisi harus memiliki
akhir agar tidak terjadi loop tak berhingga.
41

k. Selain fungsi main() dapat ditambahkan fungsi lain Jika fungsi akan
diletakkan disembarang tempat dari fungsi main(), maka fungsi tersebut harus
dideklarasikan terlebih dahulu sebelum fungsi main( ).

l. Array dapat berbentuk satu dimensi dan dua dimensi, contohnya dapat dilihat
dalam latihan di modul V. Tanda kurung siku pada array ada dua. Yang
satudigunakan sebagai ukuran array, sementara yang satu lagi sebagai tempat
penyimpanan array.

m. Untuk mengakhiri program, pertama perhatikan fungsi main yang digunakan.


Bila ia berbentuk void, Anda dapat menulis perintah getch ( ); atau
membiarkannya kosong. Bila int main ( ), maka akhiri program dengan
menuliskan nilai kembalinya dengan format return 0; atau return 1; untuk
perulangan.
42

BAB V
PENUTUP
5.1. Kesimpulan
Bahasa C memang termasuk sebagai bahasa popular karena kemudahan
dalam eksekusi dan menyelesaikan masalah dalam algoritma dengan bentuk
programnya yang berupa modular. Jadi, setiap algoritma yang dibuat lebih mudah
diaplikasikan kedalam bahasa ini. Selain itu sintaksnya juga tidak sulit di baca.

Namun disamping semua kelebihannya itu, terdapat juga kelemahan-


kelemahan seperti misalnya, bahasa C terkesan „boros‟ bila dibandingkan dengan
bahasa versi barunya yaitu C++, selain itu bahasa C susah dipakai dalam
pembuatan program yang besar, belum mendukung string, serta penggunaan
pointer yang lumayan yang cukup susah bagi pemula.

Dalam mempelajari bahasa C ini kami menemui banyak kesulitan, namun


justru itulah yang menantang kami, dan membuat kami jadi semakin ingin
mempelajari bahasa pemrograman yang lain.
43

DAFTAR PUSTAKA
Rizal,S.Si.,M.IT.2010. Modul Praktikum Algoritma dan Pemrograman I.
Drs.Suarga,M.Sc.,M.Math.,Ph.D.2006.Algoritma Pemrograman.Yogyakarta :
Andi.
Soulie,Juan.2007.C++ Language Tutorial.
http://dickynd.wordpress.com/tag/tutorial-c/

Anda mungkin juga menyukai