RSS

Sabtu, 13 Oktober 2012

Fungsi, Input, Output, Kode Format, Contoh Program pada Bahasa C

Untuk Sekarang yang harus kita bagi adalah Informasi untuk Pelajaran Teknik Pemrgraman Terstruktur. Walaupun ini tugas artikel bebas tapi apa salahnya shared tetang pelajaran.... ya kan teman-teman ?
Semoga bermanfaat bagi yang membacanya :)




A.     FUNGSI INPUT

*      Fungsi input tidak terformat
         Fungsi-fungsi menggunakan file judul  stdio.h yaitu gets(), sedangkan fungsi yang menggunakan file judul conio.h, yaitu getche(), getchar(), dan getch().
         getchar()
        Sintak  :           int getchar(void):
        Fungsi :
ü  mengembalikan sebuah karakter (nilai ASCII) berikutnya dari buffer keyboard.
ü  Karakter ditampilkan di layar monitor
ü  Menunggu sampai ada ENTER
ü  Header file ada di stdio.h
         getch()
        Sintak  :           int getch(void):
        Fungsi :
ü  mengembalikan satu karakter dari buffer keyboard
ü  karakter tidak ditampilkan di layar monitor (no echo)
ü  Tidak menunggu sampai ada ENTER
ü  Cocok untuk membuat password
ü  Header file ada di conio.h
         getche()
        Sintak  :           int getche(void)
        Fungsi :
ü  mengembalikan satu karakter dari keyboard
ü  Karakter ditampilkan di layar (echo)
ü  Tidak menunggu sampai ada ENTER
ü  Header file ada di conio.h
         gets()
        Sintak  : char *gets(char *buffer)
        Fungsi :
ü  membaca string dari keyboard sampai ketemu new-line dan disimpan pada buffer.
ü  Kemudian new-line di replace dengan null character
ü  Mengembalikan nilai NULL jika ada error dan mengembalikan argument-nya (buffer) jika sukses.
*      Fungsi input terformat
         Fungsi-fungsi menggunakan file judul  stdio.h yaitu perintah scanf(), Spesifikai format adalah : ”% type”  dimana type bisa diganti dengan salah satu dari sbb:
Kode
Format
Fungsi
%c
Membaca sebuah karakter
%s
Membaca nilai string
%d
Membaca nilai desimal integer
%i
Membaca nilai desimal integer
%x
Membaca nilai heksa desimal integer
%o
Membaca nilai oktal integer
%f
Membaca nilai pecahan
%e
Membaca nilai pecahan
%g
Membaca nilai pecahan
%h
Membaca nilai short integer desimal
[…]
Membaca karakter string yg diakhiri dengan karakter yg tidak ada didalam [...]
[^..]
Membaca karakter string yg diakhiri dengan karakter yg ada didalam [..]

CONTOH
         Fungsi scanf mengembalikan tipe integer, dimana nilai nya menyatakan jumlah field yang sukses di assigned.
            Contoh:
                        int x,y,z,w;
                        x=scanf("%d %d %d",&y,&z,&w);
         maka :
        Jika di input dari keyboard 3 buah nilai interger 6 7 8, maka nilai x = 3;
        Jika di input dari keyboard 4 buah nilai interger 6 7 8 9 maka nilai x = 3 (karena 3 nilai yg sukses di- assigned masing-masing ke variabel y, z dan w)
         Karakter Space, tab, linefeed, carriage-return, formfeed, vertical-tab, dan newline disebut ”white-space characters” .
            Contoh :
                        char ss[40];
                        scanf(”%s”,ss);
         Pada potongan program diatas, jika dimasukkan string ”Selamat Pagi Pak” dari keyboard maka yg dimasukkan ke variabel ss hanya “Selamat” saja.
         Untuk mengambil string yang diakhiri karakter tertentu (misalnya ENTER), dengan scanf, menggunakan format [^\n]. Menjadi :         
char ss[40];
                        scanf(”%[^\n]”,ss);
B.      FUNGSI OUTPUT

         Prototype dari fungsi-fungsi untuk menampilkan hasil terdapat pada file judul stdio.h.
         Bersifat standar yaitu putchar(), puts(), printf(), fprintf() dan conio.h bersifat tidak standar, dalam arti tidak semua kompiler C menyediakan yaitu clrscr(), gotoxy().
         putchar()  untuk menampilkan karakter tidak terformat
         puts() untuk menampilkan string tidak terformat.
         Maksudnya tidak terformat adalah lebar dan bentuk tampilannya tidak dapat diatur.
         Sedangkan untuk hasil terformat digunakan perintah printf  dengan spesifikai format sbb: %[flags][width][.precision] type;
Kode
Format
Fungsi
%c
Menampilkan sebuah karakter
%s
Menampilkan nilai string
%d
Menampilkan nilai desimal integer
%i
Menampilkan nilai desimal integer
%u
Menampilkan nilai desimal integer tidak bertanda
%x
Menampilkan nilai heksa desimal integer
%o
Menampilkan nilai oktal integer
%f
Menampilkan nilai pecahan
%e
Menampilkan nilai pecahan dalam notasi scientific
%g
Sebagai pengganti ‘%f’ atau ‘%e’ tergantung mana yang terpendek
%p
Menampilkan suatu alamat memori untuk pointer

         width : menentukan jumlah kolom yang disediakan
         precision : menentukan jumlah angka dibelakang koma (untuk bilangan pecahan)
         flags dapat diganti sbb:
                        none    : right justify (rata kanan)
                        -           : left justify (rata kiri)
                        +          : untuk bilangan dimulai dgn tanda – jika negatip atau +  jika positip
         CONTOH 1:
            printf(“%6d”, 34);                                           ….34
            printf(”%-6d”, 34);                                          34….
            printf(“%10s”, “GUNDAR”);                            …GUNDAR
            printf(“%-10s”, “GUNDAR”);                           GUNDAR . . .
            printf(“%8.2f”, 3.14159 );                               ....3.14
            printf(“%-8.3f”, 3.14159 );                              3.141...
            printf("%c\n",65);                               //akan ditampilkan A
            printf("%x\n",'A');                               // akan ditampilkan 41
            printf("%o\n",65);                               // akan ditampilkan 101
            printf("%+d\n",34);                             // akan ditampilkan +34
            printf("%+d\n",-45);                           // akan ditampilkan -45
            printf("%e\n",3.14);                           //ditampilkan 3.140000e+000
         CONTOH 2:
            #include <stdio.h>
            int main(){
                char ss[]="Selamat Datang";
                printf("123456789012345678901234567890\n");
                printf("%.10s di Gundar\n",ss);
                printf("%10s di Gundar\n",ss);
                printf("%-10s di Gundar\n",ss);
                printf("%.20s di Gundar\n",ss);
                printf("%20s di Gundar\n",ss);
                printf("%-20s di Gundar\n",ss);
                printf("%20.10s di Gundar\n",ss);
                printf("%-20.10s di Gundar\n",ss);
                return 0;
            }
         Output Program diatas sbb:
                        123456789012345678901234567890
                        Selamat Da di Gundar
                        Selamat Datang di Gundar
                        Selamat Datang di Gundar
                        Selamat Datang di Gundar
                              Selamat Datang di Gundar
                        Selamat Datang       di Gundar
                                  Selamat Da di Gundar
                        Selamat Da           di Gundar
Kesimpulan
         Fungsi input dan output yang ada dalam bahasa C bisa terformat maupun tidak terformat
         Fungsi input dan output terformat berarti ukuran dan bentuk data yang diinput atau ditampilkan dapat diatur oleh pemrogram
         Fungsi input dan output tidak terformat berarti ukuran dan bentuk data akan diterima dan ditampilkan sesuai tipe data aslinya

REFERENSI
Abdul Kadir, Pemrograman Dasar Turbo C untuk IBM PC Jilid 1 dan 2, Andi Offset, Jakarta
Jogiyanto H.M, Konsep Dasar Pemrograman Bahasa C, Andi Offset, Yogyakarta




1 komentar: