Anda di halaman 1dari 34

LANDASAN TEORI BAHASA C Sejarah Bahasa C Akar dari bahasa C adalah bahasa BCPL yang dikembangkan oleh Martin

Richards pada tahun 1967. Bahasa ini memberikan ide kepada Ken Thompson yang kemudian mengembangkan bahasa yang disebut dengan B pada tahun 1970. Perkembangan selanjutn ya dari bahasa B adalah bahasa C oleh Dennis Ritchie sekitar tahun 1970-an di Bell Telephone Laboratories Inc. (sekarang adalah AT&T Bell Labo ratories). Bahasa C pertama kali digunakan pada komputer Digital Equipment Corporation PDP-11 yang menggunakan sistem operasi UNIX. Standar bahasa C yang asli adalah standar dari UNIX. Sistem operasi, kompiler C dan seluruh program aplikasi UNIX yang esensial ditulis dalam bahasa C. Kepopuleran bahasa C membuat versi-versi dari bahasa ini banyak dibuat untuk komputer mikro. Untuk membuat versi-versi tersebut menjadi standar, ANSI (American National Standards Institute) membentuk suatu komite (ANSI committee X3J11) pada tahun 1983 yang kemudian menetapkan standar ANSI untuk bahasa C. Standar ANSI ini didasarkan kepada standar UNIX yang diperluas. Struktur Penulisan Program C Program C pada hakekatnya tersusun atas sejumlah blok fungsi. Sebuah program minimal mengandung sebuah fungsi. Fungsi pertama yang harus ada dalam program C dan sudah ditentukan namanya adalah main(). Setiap fungsi terdiri atas satu atau beberapa pernyataan (statement), yang secara keseluruhan dimaksudkan untuk melaksanakan tugas khusus yang dibuka dengan tanda ({) dan diakhiri dengan tanda (}). Berikut ini adalah struktur dari program C main() { statemen-statemen fungsi_fungsi_lain() statemen-statemen ) Bahasa C dikatakan sebagai bahasa pemrograman terstruktur karena strukturnya menggun akan fungsi-fungsi sebagai program-program bagiannya (subroutine). Fungsifungsi yang ada selain fungsi utama (main()) merupakan program-program bagian. Fungsi-fungsi ini dapat ditulis setelah fungsi utama atau diletakkan di file pustaka (library). Jika fungsi-fungsi diletakkan di file pustaka dan akan dipakai di suatu program, maka nama file judulnya (header file) harus dilibatkan dalam program yang menggun akannya dengan preprocessor directive berupa #include.

Pengenalan Fungsi-Fungsi Dasar a. Fungsi main() Fungsi main() harus ada pada program, sebab fungsi inilah yang menjadi titik awal dan titik akhir eksekusi program. Tanda { di awal fungsi menyatakan awal tubuh fungsi dan sekaligus awal eksekusi program, sedangkan tanda } di akhir fungsi merupakan akhir tubuh fungsi dan sekaligus adalah akhir eksekusi program. Jika program terdiri atas lebih dari satu fungsi, fungsi main() biasa d itempatkan pada posisi yang paling atas dalam p endefinisian fungsi. Hal ini hanya merupakan kebiasaan. Tujuann ya untuk memudahkan pencarian terhadap program utama bagi pemrogram. Jadi bukanlah merupakan suatu keharusan. Fungsi printf(). Fungsi printf() merupakan fungsi yang umum dipakai untuk menampilkan suatu keluaran pada layar peraga. Untuk menampilkan tulisan Selamat belajar bahasa C misalnya, pernyataan yang diperlukan berupa: printf(Selamat belajar bahasa C); Pernyataan di atas berupa pemanggilan fungsi printf() dengan argumen atau parameter berupa string. Dalam C suatu konstanta string ditulis dengan diawali dan diakhiri tanda petik - ganda (). Perlu juga diketahui pern yataan dalam C selalu diakhiri dengan tanda titik koma (;). Tanda titik koma dipakai sebagai tanda pemberhentian sebuah pern yataan dan bukanlah sebagai pemisah antara dua pernyataan.Tanda \ pada string yang dilewatkan sebagai argumen printf() mempunyai makna yang khusus. Tanda ini bisa digunakan untuk men yatakan karakter khusus seperti karakter baris-baru ataupun karakter backslash (miring kiri). Jadi karakter seperti \n sebenarnya men yatakan sebuah karakter. Contoh karakter yang ditulis dengan diawali tanda \ adalah: \ menyatakan karakter petik-ganda \\ menyatakan karakter backslash \t menyatakan karakter tab

Dalam bentuk yang lebih umum, format printf()

printf(string kontrol, daftar argumen); dengan string kontrol dapat berupa satu atau sejumlah karakter yang akan ditampilkan ataupun berupa pen entu format yang akan mengatur penampilan dari argumen yang terletak pada daftar argumen. Mengenai penentu f ormat di antaranya berupa: %d untuk menampilkan bilangan bulat (integer) %f untuk menampilkan bilangan titik-mengambang (pecahan) %c untuk menampilkan sebuah karakter %s untuk menampilkan sebuah string Contoh: #include <stdio.h> main( ) { printf(No : %d\n, 10); printf(Nama : %s\n, dakka); printf(Nilai : %f\n,90); printf(Huruf : %c\n,A); }

Pengenalan Praprosesor #include #include merupakan salah satu jenis pengarah preposesor (preposesor directive). Pengarah preposesor ini dipakai untuk membaca file yang diantaranya berisi deklarasi fungsi dan definisi konstanta. Bentuk umum #include : #include <nama file> Bentuk pertama (#include <nama file>) mengisyaratkan bahwa pencarian file dilakukan pada directori khusus, yaitu directory include. Sedangkan bentuk kedua (#include nama file) menyatakan bahwa pencarian file yang dilakukan pertama kali pada directori aktif tempat program sumber dan seandainya tidak ditemukan pencarian akan dilanjutkan pada directori lainnya yang sesuai dengan perint ah pada system operasi. Kebanyakan program melibatkan file stdio.h (file judul I/O standart, yang disediakan bahasa C), yang melibatkan program yang menggunakan pustaka I/O (input/output) standart seperti printf().

Tipe data

Tidak seperti bahasa pemrograman yang lain seperti BASIC, ketika digunakan sebuah identifier tipe data dari identifier tersebut harus didefinisikan. Tipe data yang berbeda akan menempati besarnya memori yang berbeda. Tipe data Int Char Float Double penjelasan bilangan bulat karakter tunggal bilangan pecahan desimal bilangan pecahan berpresisi ganda ukuran memori 2 byte 1 byte 4 byte 8 byte

Sebagai tambahan, tipe-tipe data dasar di atas dapat diperluas dengan menggunakan qualifier tipe data short, long, signed dan unsigned. Konstanta C mempuntai 4 tipe konstanta: integer, floating-point, karakter dan string. Konstanta integer dan floating point mewakili bilangan. a. Integer Konstanta integer adalah sebuah bilangan integer yang berupa sebuah nilai atau dapat dikatakan bilangan bulat. Konstanta tersebut hanya terdiri dari satu atau gabungan bilangan 0 sampai 9. Contoh: 0 5 237 4778 b. Float Sebuah konstanta float adalah sebuah bilangan dasar-10 yang bisa terdiri dari sebuah pecahan desimal atau sebuah bilangan eksponensial atau ke dua-duanya. Contoh: 0. 813.420 650. 2e-8 0.06e-8

c. Karakter Sebuah konstanta karakter adalah sebuah karakter yang berada di dalam tanda petik. Contoh: A a $

Dan untuk karakter yang tidak dapat dituliskan dengan tanda () dapat dituliskan dengan tanda (/) diawal seperti karakter (), (/), dll. d. Konstanta string Sebuah konstanta string terdiri dari sebarang karakter yang terdapat di antara tanda petik ganda. Beberapa contoh dari konstanta string adalah:

biru Variabel

mas dakka

245-134-90

Variabel adalah sebuah identifer yang digunakan untuk mewakili informasi yang spesifik di dalam sebuah bagian dari program. Sebuah variabel dapat ditugasi dengan berbagai macam data yang berbeda yang dapat diletakkan di berbagai tempat pada program. Contoh: int a, b, c; char d; Deklarasi

Deklarasi Variabel Bentuk umum pendeklarasian suatu variable adalah : Nama_tipe nama_variabel; Contoh : float nilai; // Deklarasi variable bertipe float Deklarasi Konstanta Dalam bahasa C konstanta dideklarasikan menggunakan preprocessor #define. Contohnya : #define PHI 3.14 o #define nim 206135024 o #define nama KudaLumping Deklarasi Fungsi Fungsi merupakan bagian yang terpisah dari program dan dapat diaktifkan atau dipanggil dimanapun di dalam program. Fungsi dalam bahasa C ada yang sudah disediakan sebagai fungsi pustaka seperti printf(), scanf(), getch() dan untuk menggunakannya tidak perlu dideklarasikan. Fungsi yang perlu dideklarasikan terlebih dahulu adalah fungsi yang dibuat o oleh programmer. Bentuk umum deklarasi : Tipe_fungsi nama_fungsi(parameter_fungsi); Contohnya : float luas_lingkaran(int jari); o void tampil(); o int tambah(int x, int y);

Operator a. Operator Penugasan Operator Penugasan (Assignment operator) dalam bahasa C berupa tanda sama dengan (=). Contoh : nilai = 87;

b. Operator Aritmatika Bahasa C menyediakan lima operator aritmatika, yaitu : * / % + : : : : : untuk perkalian untuk pembagian untuk sisa pembagian (modulus) untuk pertambahan untuk pengurangan

c. Operator Hubungan (Perbandingan) Operator Hubungan digunakan untuk membandingkan hubungan antara dua buah operand sebuah nilai atau variable. Operator hubungan dalam bahasa C :

1. 2. 3. 4. 5. 6.

< <= > >= == !=

: : : : : :

Kurang dari Kurang dari sama dengan Lebih dari Lebih dari sama dengan Sama dengan Tidak sama dengan x

BAB I PERINTAH-PERINTAH DASAR I/O

TUJUAN : Memberikan latihan pada mahasiswa untukmenulis sebuah program C sederhana sehingga mahasiswa dapat mengenal penggunaan fungsi-fungsi dasar I/O seperti scanf(), printf(), dan getchar(). Soal Latihan : 1. Tulislah sebuah program C untuk mencetak baris-baris berikut ke layar : Berenang-renang dahulu, berakit-rakit kemudian, Bersakit-sakit dahulu, bersenang-senang kemudian. Catatan : Penggunaan Tab sebelum huruf pertama sengaja dilakukan. Jawab :
/* Nama Program * Fungsi * Penulis * * Ditulis tanggal * Diubah tanggal * Catatan : L1 : - menampilkan sebuah kalimat : Muhammad Rifqi Abdurrakhim : 12 september 2011 : : * * */ * *

#include <stdio.h>

main()

{ printf(\t Berenang-renang dahulu, berakit-rakit kemudian,\n ); printf(\t Bersakit-sakit dahulu, bersenang-senang kemudian.); return 0;

1) Tampilan program

2) Analisa Program diatas merupakan program untuk menampilkan data ke layar. Instruksi yang digunakan untuk menampilkan data ke layar adalah printf(....).

2. Tulislah sebuah program C yang menanyakan pengguna untuk memasukan sebuah bilangan. Bilangan tersebut dan kuadrat bilangan tersebut tercetak pada baris yang sama. Contohnya bila bilangan 4 dimasukan, keluaran program adalah : Bilangan = 4 Jawab :
/* Nama Program * Fungsi * Penulis * Ditulis tanggal * Diubah tanggal * Catatan : L2 : - menghitung bilangan kuadrat : Muhammad Rifqi Abdurrakhim : 12 september 2011 : : * * * * * */

Kuadrat dari bilangan = 16

#include <stdio.h> main() { float kuadrat;

int

bilangan=4;

printf("\t Bilangan=%d", bilangan"); /*scanf("%d", &bilangan);*/ kuadrat=bilangan*bilangan; printf("\t Kuadrat dari bilangan=%f", kuadrat); return 0; }

1) Tampilan program

2) Analisa Program diatas merupakan program untuk menampilkan, mengambil, dan mengolah data. Scanf("%f", &a) merupakan instruksi untuk membaca data pada layar dan memasukkannya ke variabel a. Dan operasi bilangan kuadrat=(a*a) merupakan instruksi untuk mengalikan data pada variabel kuadrat. Dan mengeluarkannya ke layar dengan instruksi printf(" Kuadrat dari bilangan %0.f = %0.f",a,kuadrat). 1.1.1 Latihan 3 A. Latihan 3 1) Listing program
/* Nama Program * Fungsi * Penulis * Ditulis tanggal : Latihan3 : - mengambil karakter : Muhammad Rifqi Abdurrakhim : 12 september 2011 * * * *

* Diubah tanggal * Catatan

: :

* */

#include <stdio.h> //library file yang digunakan sebagai I/O main() //fungsi { //awal program //deklarasi variabel a,b,c sebagai char = "); //keluarkan string ke

char a,b,c;

printf("Masukkan karakter satu //layar scanf("%c", &a); a= getchar();

//baca data dari keyboard sebagai char dan //masukkan ke variabel a //masukkan nilai a sebagai karakter = "); //keluarkan string ke layar

printf("Masukkan karakter dua scanf("%c", &b); b= getchar();

//baca data dari keyboard sebagai char dan //masukkan ke variabel b //masukkan nilai b sebagai karakter = "); //keluarkan string ke

printf("Masukkan karakter tiga layar scanf("%c", &c); c= getchar(); scanf(%d); intejer }

//baca data dari keyboard sebagai char dan //masukkan ke variabel c //masukkan nilai c sebagai karakter //baca data dari keyboard dan cetak sebagai

// akhir program

2) Tampilan program

3) Analisa Program diatas merupakan program untuk menampilkan dan mengambil data yang berupa karakter. Scanf("%c", &a) merupakan instruksi untuk membaca data pada layar dan memasukkannya ke variabel a . getchar()
merupakan perintah untuk membaca data masukkan dan menampilkan data ke layar, sama halnya dengan printf (). Dan scanf(%d) merupakan perintah untuk menampilkan data masukkan yang berupa variable integer.

BAB II PENULISAN SEBUAH PROGRAM C


Struktur Kondisi

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 didalam blok if akan diproses dan dikerjakan. Bentuk umum struktur kondisi if adalah : if(kondisi) pernyataan;

Contoh Program

/* Program pencarian nilai terbesar pada struktur kondisi if */ #include"stdio.h" #include"conio.h" void main() { int a,b,c,max; printf("Entry bil 1 : ");fflush(stdin);scanf("%i",&a); printf("Entry bil 2 : ");fflush(stdin);scanf("%i",&b); printf("Entry bil 3 : ");fflush(stdin);scanf("%i",&c); if((a>b)&&(a>c)) max=a; if((b>a)&&(b>c)) max=b; if((c>a)&&(c>b)) max=c; printf("Bil terbesar : %i\n",max);

getch(); }

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

Contoh Program :
/*program kelulusan struktur kondisi ifelse*/ #include stdio.h #include conio.h

void main() { float nilai; printf(Silahkan masukan nilai yang diperoleh : ); scanf(%f, &nilai); /* nilai yang diberikan akan disimpan dalam variable nilai */ if (nilai > 65) printf(\n LULUS !!!\n); else printf(\n TIDAK LULUS !!!\n); getch();

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 }

2.1

Melihat siklus software sederhana 1) Listing program


/* Nama Program * Fungsi * Penulis * Ditulis tanggal * Diubah tanggal * Catatan : 2-1.cpp : - mengambil karakter : Muhammad Rifqi Abdurrakhim : 13 september 2011 :: * * * * * */

#include<stdio.h> //library file yang digunakan sebagai I/O main() { int nilai,hasil; // deklarasikan variabel nilai, hasil sebagai integer char Operator; // deeklarasi Operator yang digunakan sebagai karakter hasil=0; // Pemberian nilai awal untuk hasil // loop sampai pengguna memasukkan parameter q untuk keluar do { printf ("\nHasil:%d\n",hasil); //keluarkan konstanta string yang //tertulis //dan data integer pada variabel hasil ke layar printf ("Masukkan operator dan bilangan: "); //keluarkan //konstanta string //yang tertulis ke layar scanf("\n%c %d",& Operator,& nilai); //baca data masukan //sebagai karakter dan integer pada variabel operator dan nilai switch(Operator) //baca data pada variabel operator,jika?? { case'+': //case dari parameter + hasil=hasil+nilai; //operasi bilangan penambahan break; //keluar fungsi case'-': //case dari parameter - hasil=hasil-nilai; //operasi bilangan pengurangan break; //keluar fungsi case'*': //case dari parameter * hasil=hasil*nilai; //operasi bilangan perkalian break; //keluar fungsi case'/': //case dari parameter / if(nilai !=0) hasil =hasil/nilai; //operasi bilangan pembagian else printf(" Error pembagian dengan 0\n"); case'q': //case dari parameter q //keluar dari program break; //keluar fungsi default: //case default jika semua parameter tidak ditemukan printf("pilihan tidak dikenal %d\n",Operator); } } while( Operator!='q'); //jika data pada variabel operator tidak sama dengan parameter q maka return 0; //kembali ke nilai 0 }

2) Tampilan program

3) Kebutuhan program a. Kebutuhan. mengkonsep dari program apa yang sedang dibutuhkan. b. Spesifikasi Program. Tahap ini menggambarkan apa yang dapat dikerjakan sebuah program untuk mendapatkan hasil akhir. c. Perancangan Kode. Berupa perancangan program secara menyeluruh. Dapat berupa algoritma utama, definisi module, struktur data dan format file

d. Penulisan. Penulisan kode program untuk menghasilkan program secara lengkap. e. Pengujian. Setelah tahap penulisan program dilakukan maka diperlukan tahap pengujian sebelum program dikeluarkan ke user dangan cara Debugging. Error akan sering dijumpai selama proses pengujian. Kesalahan-kesalahan ini harus dikoreksi dan program diuji kembali. f. Pengemasan program, didokumentasikan dan dikirim keluar untuk digunakan oleh user.

4) Spesifikasi dari program di atas a. switch : statemen ini digunakan untuk melakukan pemilihan ekspresi atau kondisi yang memilki nilai dari parameter . b. case : untuk mendefinisikan nilai parameter konstan c. break : untuk keluar dari definisi case d. default : untuk menyimpan statmen alternatif yang akan dieksekusi apabila semua nilai yang didefenisikan tidak sesuai dengan ekspresi case e. do-while (proses pengulangan) : untuk melakukan proses pengulangan pada struktur program yang terdapat pada block do-while. Proses pengulangan ini akan tetap berlangsung meskipun nilai yang akan diulang memiliki kondisi salah. f. If : prose pemilihan untuk kasus yang memiliki syarat g. Return : untuk mengembalikan pengulangan

5) Analisa
Dari listing program diatas dapat diketahui bahwa proses pemilihan data dilakukan dengan menggunakan statement switch(). Statement switch

merupakan pengganti dari fungsi statement if. Karena dengan statement switch akan didapatkan program yang lebih singkat, hal ini memungkinkan untuk menulis banyak program jika dari pada menggunakan statement if.

BAB III STATEMENT PENGENDALI (CONTROL STATEMENT)

Latihan struktur pengontrol dengan menggunakan statement pengontrol while, dowhile, loop for, loop tersarang,if-else, dan switch. 3.1 Latihan 1 A. Menggunakan statement while
1. Listing Program : 3lat1while.cpp : - latihan menggunakan while : Muhammad Rifqi Abdurrakhim : 13 september 2011 :: * * * * * */

/* Nama Program * Fungsi * Penulis * Ditulis tanggal * Diubah tanggal * Catatan

#include <stdio.h> // library file yang digunakan sebagaifungsi I/O// main() // Fungsi { int i; //deklarasi i sebagai integer float penjum; i=2; // deklarasi i dengan angka 2 while(i<=100) //fungsi while { penjum=penjum+i; i+=3; } printf("Penjumlahan adalah : %f\n",penjum); tampilkan hasil operasi scanf("%d"); return 0;

2. Tampilan Program

B. Menggunakan statement do..while 1. Listing Program

/* Nama Program * Fungsi * Penulis * Ditulis tanggal * Diubah tanggal * Catatan

: 3lat.1dowhile.cpp : - latihan menggunakan do..while : Muhammad Rifqi Abdurrakhim : 13 september 2011 ::

* * * * * */

#include <stdio.h> // library file yang digunakan sebagaifungsi I/O// main() // Fungsi { int i; //deklarasi i sebagai integer float penjum; i=2; // deklarasi i dengan angka 2

do { penjum=penjum+i; i+=3; } while (i<=100); printf("Penjumlahan adalah : %f\n",penjum); scanf("%d"); return 0;

2. Tampilan Program

C. Menggunakan statement for 1. Listing program


/* Nama Program : 3.1for.cpp * Fungsi : - latihan menggunakan for * Penulis : Muhammad Rifqi Abdurrakhim * Ditulis tanggal : 13 september 2011 * Diubah tanggal :* Catatan : #include <stdio.h> //library file yang digunakan sebagaifungsi I/O// * * * * * */

main() //Fungsi Utama { int i; //Deklarasi i sebagai integer float penjum; for(i=2;i<=100;i+=3) { penjum=penjum+i; } printf("Penjumlahan adalah : %f\n",penjum); // tampilkan data scanf("%d"); return 0; }

2. Tampilan Program

3.2 Latihan 2 1) Listing program


/* Nama Program * Fungsi * Penulis * Ditulis tanggal * Diubah tanggal * Catatan : 3lat2.cpp : - latihan menggunakan for : Muhammad Rifqi Abdurrakhim : 13 september 2011 :: * * * * * */

#include <stdio.h> // library file yang digunakan sebagaifungsi I/O main () //fungsi { //awal program int suhu; //deklarasi variable suhu sebagai integer //tampilkan string ke layar printf(" Masukkan suhu liquid: "); //baca dat input sebagai variable suhu scanf("%d",& suhu); if (suhu <=0) // pernyataan jika maka { //tampilkan string ke layar sebagai variable suhu printf(" Liquid berupa ES "); } else if ((suhu>0)&&(suhu<=100)) // jika penyataan salah maka { //tampilkan string ke layar sebagai variable suhu printf(" Liquid berupa CAIR"); } else // pernyataan salah maka/ { //awal fungsi // tamp[ilkan ke layar sebagai variable suhu printf(" Liquid berupa UAP"); } //akhir fungsi return 0; } //akhir program

2) Tampilan program

3) Analisa Dari listing program diatas didapatkan sebuah statement if. If merupakan sebuah statement fungsi yang biasa digunakan sebagai statement pemilih. Dimana if akan memilih satu diantara dua ekspresi. Jika eksrpesi benar maka statement yang ada di eksekusi jika tidak maka akan mengeksekusi statement selanjutnya sesuai dengan pilihan yang disediakan dalam penulisan program. Bentuk umumn statement if adalah if (ekspresi) statement 1 else statement 2

BAB IV FUNGSI
4.1. Latihan soal 1 A. Latihan soal 1A 1) Listing program
/* Nama Program * Fungsi * Penulis * Ditulis tanggal * Diubah tanggal * Catatan : faktoria.cpp : - latihan menggunakan for : Muhammad Rifqi Abdurrakhim : 14 september 2011 :: * * * * * */

#include <stdio.h> // library file yang digunakan sebagaifungsi I/O// /* Mendefinisikan fungsi untuk menghitung nilai faktorial */ int Faktorial (int N) { if (N == 0) { return 1; } else { return N * Faktorial(N-1); } } int main (void) { int bilangan; printf("Masukan bilangan yang akan dihitung : "); scanf("%d", &bilangan); printf("%d! = %d", bilangan, Faktorial(bilangan)); return 0; }

2) Tampilan program

3) Analisa

Program diatas merupakan program yang menggunakan fungsi dimana fungsi tersebut akan dikembalikan berdasarkan parameter yang telah dimasukkan. hasil=factn(S) menyatakan bahwa hasil merupakan sebuah fungsi factorial yang akan dipanggil ke dalam program. Dimana fungsi factorial yag dipanggil memiliki parameter yang dinyatakan dengan if dan for.

BAB V ARRAY
Latihan 1 1. Listing Program

/* Nama Program * Fungsi * * Penulis * Ditulis tanggal * Diubah tanggal * Catatan


#include <stdio.h> #include <stdlib.h> #include <conio.h> #include <time.h> main () {

: lat_v1.cpp : - random dan tampilkan angka terbesar - tampilkan angka terendah : Muhammad Rifqi Abdurrakhim : 15 september 2011 ::

* * * * * * */

unsigned int a,list[10]; unsigned int nilai_min = 32767, nilai_max = 0; int i; srand((unsigned)time(NULL)); for(i=1; i<=10; i=i+1) { a=rand() % 1000 ; list[i]=a; printf("Data ke-%d adalah %u\n",i,list[i]); } for(i=1; i<=10; i=i+1) { if(nilai_min>list[i]) nilai_min = list[i]; } printf("\nNilai minimum adalah %u\n", nilai_min); for(i=1; i<=10; i=i+1)

if(nilai_max<list[i]) nilai_max = list[i]; printf("\nNilai maksimum adalah %u\n", nilai_max); getch(); return 0; } 2. Tampilan Program

Latihan 2 1. Listing Program

/* Nama Program * Fungsi * * Penulis * Ditulis tanggal * Diubah tanggal * Catatan


#include <stdio.h> #include <ctype.h> #include <conio.h> #define MAX_SIZE 80 main() { char list[MAX_SIZE]; int n;

: lat_v2.cpp : - input karakter dengan Array : Muhammad Rifqi Abdurrakhim : 15 september 2011 ::

* * * * * * */

void baca (char list[], int n);

void konversi (char list[], int n); void display (char list[], int n); do { printf("Berapa banyak karakter yang akan dientri (maksimum 80) ? "); scanf("%d",&n); if(n<0||n>80) { printf("Jumlah karakter harus antara 0 sampai 80.\n"); printf("Coba lagi.\n\n"); } } while (n<0||n>80); if(n>0) { baca(list, n); konversi(list, n); display(list, n); } else { printf("Tidak ada yang dipilih. Program berakhir.\n"); } getchar(); scanf("%d"); return 0; } void baca(char list[], int n) { int i; for(i=0; i<=(n-1);++i) { printf("Masukkan karakter ke %d :",i+1); scanf("%c\n",&list[i]); } return; } void konversi(char list[], int n)

{ int i; for(i=0; i<=(n-1); ++i) list[i] = toupper (list[i]); return; } void display(char list[], int n) { int i; for(i=0; i<=(n-1); ++i) putchar(list[i]); printf("\n"); return; } 2. Tampilan Program

Tugas Buat program tebak angka dari 1 s/d 999 1. Listing Program

/* Nama Program * Fungsi *

: tugas1ver3.cpp : - tebak angka dari 1 s/d 999

* * *

* Penulis * Ditulis tanggal * Diubah tanggal * Catatan


#include <stdio.h> #include <ctype.h> #include <conio.h> #include <stdlib.h> int a,b,i; main() { a=0; i=0; b=0;

: Muhammad Rifqi Abdurrakhim : 15 september 2011 ::

* * * */

randomize(); a=rand() % 1000; //printf("%d",a); printf("Tebak ANGKA printf("created by OhiM\n"); do { printf("Coba masukkan tebakan anda (1 - 999):"); scanf("%d",&b); i=i+1; if (b<a) { printf("Kaleutikan! \n\n"); } else if(b>a) { printf("Kagedean! \n\n"); } else { printf("cucooooo!\n\n"); } } while (b!=a); printf("angka tertebak!!!\n"); printf("Anda menjawab sebanyak %d",i); printf("kali\n");

");

if (i<=5) { printf("ANDA DEWA"); } else if (i<=10) { printf("ANDA JAGGOAN NEON"); } else if (i<15) { printf("ANDA KEREN"); } else { printf("ANDA INI APA?!"); } getch(); } 2. Tampilan Program

Tugas 2 Randomize menggunakan fungsi do..while, while dan for Fungsi do..while 1. Listing Program

/* Nama Program * Fungsi * Penulis * Ditulis tanggal * Diubah tanggal


#include <stdio.h> #include <stdlib.h> #include <conio.h> #include <time.h> main () {

: tugas2dowhile.cpp : - random dowhile : Muhammad Rifqi Abdurrakhim : 15 september 2011 :-

* * * * *

unsigned int a,list[10]; unsigned int nilai_min = 32767, nilai_max = 0; int i; srand((unsigned)time(NULL)); i=1; do { a=rand() % 100 ; list[i]=a; printf("Data ke-%d adalah %u\n",i,list[i]); i++; } while (i<=10); i=1; do { if(nilai_min>list[i]) nilai_min = list[i]; i++; } while (i<=10); printf("\nNilai minimum adalah %u\n", nilai_min); i=1; do { if(nilai_max<list[i]) nilai_max = list[i]; i++; } while (i<=10);

printf("\nNilai maksimum adalah %u\n", nilai_max); getch(); return 0; } 2. Tampilan Program

Fungsi while 1. Listing Program

/* Nama Program * Fungsi * Penulis * Ditulis tanggal * Diubah tanggal


#include <stdio.h> #include <stdlib.h> #include <conio.h> #include <time.h> main () {

: tugas2while.cpp : - random while : Muhammad Rifqi Abdurrakhim : 15 september 2011 :-

* * * * *

unsigned int a,list[10]; unsigned int nilai_min = 32767, nilai_max = 0; int i; srand((unsigned)time(NULL)); i=1; while (i<=10) { a=rand() % 100 ;

list[i]=a; printf("Data ke-%d adalah %u\n",i,list[i]); i++; } i=1; while (i<=10) { if(nilai_min>list[i]) nilai_min = list[i]; i++; } printf("\nNilai minimum adalah %u\n", nilai_min); i=1; while (i<=10) { if(nilai_max<list[i]) nilai_max = list[i]; i++; } printf("\nNilai maksimum adalah %u\n", nilai_max); getch(); return 0; } 2. Tampilan Program

Fungsi For 1. Listing Program

/* Nama Program * Fungsi * Penulis * Ditulis tanggal * Diubah tanggal


#include <stdio.h> #include <stdlib.h> #include <conio.h> #include <time.h> main () {

: tugas2for.cpp : - random for : Muhammad Rifqi Abdurrakhim : 15 september 2011 :-

* * * * *

unsigned int a,list[10]; unsigned int nilai_min = 32767, nilai_max = 0; int i; srand((unsigned)time(NULL)); for(i=1; i<=10; i=i+1) { a=rand() % 100 ; list[i]=a; printf("Data ke-%d adalah %u\n",i,list[i]); } for(i=1; i<=10; i=i+1) { if(nilai_min>list[i]) nilai_min = list[i]; } printf("\nNilai minimum adalah %u\n", nilai_min); for(i=1; i<=10; i=i+1) if(nilai_max<list[i]) nilai_max = list[i]; printf("\nNilai maksimum adalah %u\n", nilai_max); getch(); return 0; } 2. Tampilan Program

Anda mungkin juga menyukai