--> October 2017 | INFO TEKNOLOGI

tips and trick


About

JANGAN LUPA FOLLOW BLOG INI

Monday, October 16, 2017

no image

Input output dalam bahasa C

Dalam bahasa C proses memasukkan suatu data bisa menggunakan beberapa fungsi pustaka yang telah tersedia. Beberapa fungsi input dalam bahasa C yang bisa digunakan untuk  memasukkan data adalah : scanf(), getchar(), getch() dan getche().

Menerima Input

scanf()

Fungsi pustaka scanf() digunakan untuk menginput data berupa data numerik, karakter dan string secara terformat. Hal-hal yang perlu diperhatikan dalam pemakaian fungsi scanf() :

Fungsi scanf() memakai penentu format
Fungsi scanf() memberi pergantian baris secara otomatis
Fungsi scanf() tidak memerlukan penentu lebar field
Variabelnya harus menggunakan operator alamat &
Kode penentu format :

%c : Membaca sebuah karakter
%i, %d : Membaca sebuah bilangan bulat (integer)
%f, %1d : Membaca sebuah bilangan pecahan (real)
%o : membaca sebuah bilangan octal
%x : Membaca sebuah bilangan heksadesimal
Contoh Program

Input integer:

#include "stdio.h"
main() {
    int ujian1,ujian2;

    printf("Masukan Nilai ujian 1 = ");
    scanf("%d",&ujian1);
    printf("Masukan Nilai ujian 2 = ");
    scanf("%d",&ujian2);

    printf("Nilai ujian 1 = %i dan ujian 2 = %i",ujian1,ujian2);

}
Input float

#include "stdio.h"
main(){
    float ratarataUjian;
    printf("Masukan Rata-rata Ujian = ");
    scanf("%f",&ratarataUjian);
    printf("Rata-rata Ujian = %.3f",ratarataUjian);
}
Input char

#include "stdio.h"
main(){
    char karakter;
    printf("Masukkan Karakter: ");
    scanf("%c",&karakter);
    printf("Karakter yang dimasukkan =  %c",karakter);
}
Input char dan menampilkan bilangan ASCII

#include "stdio.h"
main(){
    char karakter;
    printf("Masukkan Karakter: ");
    scanf("%c",&karakter);
    printf("Karakter yang dimasukkan =  %cn",karakter);
    printf("Nilai ASCII = %x",karakter);
    printf("nNilai ASCII = %d",karakter);
}


getchar()

Fungsi getchar() digunakan untuk membaca data karakter dengan ketentuan :

Fungsi getchar() digunakan untuk membaca data yang bertipe karakter
Harus diakhiri dengan penekanan tombol enter
Karakter yang dimasukkan terlihat pada layar
Pergantian baris secara otomatis
getch() dan getche()

Fungsi getch() dan getche() digunakan untuk membaca data karakter dengan ketentuan :

Karakter yang dimasukkan tidak perlu diakhiri dengan penekanan tombol enter.
Tidak memberikan efek pergantian baris secara otomatis.
Jika menggunakan fungsi getch() karakter yang dimasukkan tidak akan ditampilkan pada layar.
Sedangkan pada getche() karakter yang dimasukkan akan ditampilkan pada layar.
Contoh Program :

#include "stdio.h"
#include "conio.h"
main(){
    char karakter;
    printf("Masukkan Karakter: ");
    karakter = getchar();
    printf("Karakter yang dimasukkan =  %cn",karakter);
    printf("Masukkan Karakter: ");
    karakter = getch();
    printf("nKarakter yang dimasukkan =  %cn",karakter);
    printf("Masukkan Karakter: ");
    karakter = getche();
    printf("nKarakter yang dimasukkan =  %c",karakter);
}


Mengatur Tampilan Keluaran

Kita dapat mengatur tampilan keluaran yang kita dengan bentuk umum : printf(“%m.nf”, argument).

m : menyatakan panjang range
n : menyatakan jumlah digit di belakang koma.
argument : nilai atau variable yang akan ditampilkan.
Contoh : printf(“%5.2f”, nilai); artinya variable nilai akan ditampilkan sebanyak 5 digit dengan 2 digit di belakang koma.

Contoh Program

#include "stdio.h"
main(){
    printf("Contoh 1:%6dn",9876);
    printf("Contoh 2:%6dn",987689);
    printf("Contoh 3:%10.2fn",11987.6543);
    printf("Contoh 4:%.2fn",987.6543);
    printf("Contoh 5:%en",987.6543);

    printf("Contoh 1:%8dn",129876);
    printf("Contoh 2:%8dn",9876);
}
no image

Dasar dalam bahasa c

Dasar C (standar ANSI-C)
Pendahuluan

Preprocessor Directive

Variable dan konstanta

Struktur Program

Control Statemen

Fungsi

Array

Pointer

Character dan  String

Format Input/Output

Struktur, Union, Bit Manipulation dan  Enum

File Processing

=============================================================================

Pendahuluan

Sejarah

C dibuat dan diimplementasikan pertama  kali tahun 1970-an oleh Dennis Ritchie pada komputer DEC PDP-11 menggunakan sistem operasi Unix.  Karena bahasa C  terdiri dari banyak versi (misal C arduino , C codevision dll)  maka dibuat  standar  yaitu ANSI-C.
Evolved over the years:
• 1972 – C invented
• 1978 – The C Programming Language published; first specification of language
• 1989 – C89 standard (known as ANSI C or Standard C)
• 1990 – ANSI C adopted by ISO, known as C90
• 1999 – C99 standard • mostly backward-compatible • not completely implemented in many compilers
• 2007 – work on new C standard C1X announced In this course: ANSI/ISO C (C89/C90)
Contoh penggunaan bahasa C
• Operating system, spt Linux
• microcontroller: automobile & pesawat
• embedded processor: HP, portable electronic,dll.
• DSP processors: digital audio & TV systems
Kelebihan Bahasa C

Bahasa C’ tersedia hampir tersedia untuk berbagai prosessor, baik mikrocontoller dan microprosssor .
Kode bahasa C’ bersifat portabel. Suatu aplikasi yang ditulis dengan bahasa C untuk suatu prosessor tertentu dapat digunakan di prosessor lain hanya dengan sedikit modifikasi.
Struktur bahasa yang baik
Mudah dipelajari
Memudahkan pembuatan program
Memudahkan pelacakan program (debugging)
Dibandingkan dengan bahasa mesin atau assembly, C jauh lebih mudah dipahami. C berorientasi pada permasalahan, bukan pada mesin.
Dapat memanipulasi data dalam bentuk bit atau byte.
Memungkinkan untuk memanipulasi alamat dari suatu data atau pointer.
C  Compiler
C Compiler akan membaca seluruh source code dan mengkonversi kedalam object code (hasil translasi source code suatu program ke dalam bentuk yang dapat dieksekusi secara langsung oleh komputer).
Source code sudah tidak digunakan setelah dilakukan kompilasi oleh compiler.
object code juga sering disebut dengan binary code atau machine code.
 C Compiler antara lain :
 untuk prosesor x86 :  Gnu C (GCC), Turbo C dll.
 untuk microcontroller AVR :  AVR-GCC ,  codevisionAVR,  C Arduino
dll
Instalasi compiler C  di OS windows XP atau win7  dan  Membuat Program C  pertama  kali  bisa baca disini : https://pccontrol.wordpress.com/2011/06/11/pengetahuan-dasar-bahasa-pemrograman-c/

Semua bahasa perograman  terdiri dari

Ekspresi,
Statemen,
Blok statement
Blok fungsi
Ekspresi  adalah kombinasi operand dan operator yg menghasilkan nilai tunggal berupa true,false atau numerik.

contoh    2+3 ,  X > Y   dsb…

2, 3,  X dan Y adalah operand  sedangkan  + dan > adalah operator .

Statement adalah  instruksi lengkap dalam bahasa C diakhiri dgn tanda  ;  (titik koma)   contoh     A= 2+3;

Blok statement adalah sekumpulan statement dalam 1 blok

{
statement
statement

}

contohnya adalah blok statemen dibawah  if  berikut ini :

if( b  >  3  )
{
b= b+3;
c= c-b;
}

Pengenalan program C

Program C adalah berisi sekumpulan fungsi-fungsi. Eksekusi program akan diawali dengan mengeksekusi fungsi main().  Program bahasa C  di compile menggunakan C Compiler  .
Struktur minimal  program bahasa C :

==========================================

Header file

Main()          //fungsi utama
{

statement

}
===========================================================

contoh

1
2
3
4
5
6
7
8
9
10
#include <stdio .h="">       //file ber ext *.h adalah header file

main()

{

/* cetak ke layar */

printf("  Hello world, ini test saja ");
}
Program C adalah berisi sekumpulan fungsi-fungsi.
Minimal mengandung 1 fungsi utama yang bernama main(). Eksekusi program akan diawali dengan mengeksekusi fungsi main().
Setiap fungsi terdiri atas satu atau beberapa pernyataan, untuk menyelesaiakan tugas khusus.
Bagian pernyataan fungsi atau tubuh fungsi diawali dengan tanda kurung kurawal buka ({) dan diakhiri tanda kurung kurawal tutup (}).
include <stdio .h=""> adalah header file yg berisi fungsi fungsi standart input output yg diikut sertakan  ke dlm program.
semua charakter di dlm /*  …   */    atau setelah // akan di abaikan oleh compiler,  ini digunakan untuk memberi keterangan saja .
PREPROCESSOR DIRECTIVE
PreProsessor Directive melakukan arahan sebelum proses(compile), maksudnya adalah sebelum code program bahasa C dicompile maka ada proses yg harus dilakukan oleh preprosesor directive (#define, #include, #pragma dll) antara lain

Menggabungkan file header , misal :
#include <sddio .h="">
#include “file_header_saya.h”

Mengganti text atau mendefinisikan macro, misal
#define BAUD_RATE 9600,
#define JUMLAH(a,b) a+b

set up pengkondisian kompilasi , misal
#if BUFFER_SIZE &lt; 256
char index ;
#else
int index ;
#endif

Karena preprosessor directive bukan bagian dari bahasa C maka tidak diakhiri tanda ; (titik koma).

VARIABLE DAN KONSTANTA
Variabel adalah memori penyimpanan data yang nilainya dapat diubah-ubah. variable disimpan di RAM
Konstanta adalah memori penyimpanan data yang nilainya tidak dapat diubah setelah program di compile. Konstanta disimpan di memory program.

Keyword berikut ini tidak boleh dijadikan nama variable atau konstanta :

-auto -double- int -long-break -else -switch-case -enum -register -typedef-char -extern -return -union-const -float -short -unsigned-continue -for -signed -void-default -goto -sizeof -volatile-do -if -static -while

VARIABLE SCOPE
Global variable dan constant dapat diakses di seluruh bagian program.
Local variable dan constant hanya dapat diakses didalam fungsi tempat dideklarasikannya.
Type Variable
Karena memori microcontroller relatif terbatas maka kita harus menggunakan type memory yg sesuai kebutuhan.

typedata

.

CONTROL STATEMENT

While Loop
while (expression) //selama expresi bernilai true laksanakan perulangan blok statemen dibawahnya.
{
statement1;
statement2;
…..
}

atau jika satement hanya 1 baris statement tdk perlu di berikurung { }

while(expression)
statement;

Do/While Loop
do //jalankan statement dibawah ( minimal 1 kali perulangan dilaksanakan) ,
{
statement1;
statement2;

}
while (expression); // jika ekspresi true , jalankan kembali perulangan.

atau jika satement hanya 1 baris

do
statement;
while (expression);

For Loop
for (expr1; expr2; expr3) //laksanakan perulangan sebanyak expr2 dimulai dari expr1.
{
statement1;
statement2;

}

atau jika satement hanya 1 baris

for(expr1; expr2; expr3)
statement;

If/Else
if (expression) //jika ekspresi bernilai true laksanakan blok statemen dibawahnya
{
statement1;
statement2;

}

atau jika satement hanya 1 baris

if(expression)
statement;

SWITCH/CASE
switch (expression)
{
case const1:     // jika expression = const1 eksekusi staement2 dibawahnya
statement1;
statement2;

case const2: // jika expression = const2 eksekusi statemenibawahnya
statement3;
statement4;
case constX: // jika espression=constX eksekusi statemen dibawahnya
statement5;
statement6;

default:
statement7;     // jika ekspression tdk  sama dgn const1,cons2, dan constX
statement8;
}

BREAK, CONTINUE,AND GOTO
break, continue, &amp; goto statements digunakan untuk merubah alur eksekusi untuk statement pengulangan for, while, do/while, and switch .

Break
break statement digunakan untuk keluar dari pengulangan for, while, do/while, atau switch . break keluar dari blok pengulangan dimana dia berada saja.

Continue
continue akan menyebabkan program memulai iterasi berikutnya dari statemen pengulangan while,
do/while, atau for loop. continue sama seperti break pengulangan akan berhenti pada point yg dituju (di skip), bedanya continue akan memulai loop lagi, dari atas, sedangkan break memaksa keluar dari loop / pengulangan .contoh

1
2
3
4
5
6
7
8
9
10
11
12
13
#include "stdio.h"

int main(void)
{
int i;
for(i; i&amp;lt;7; i++)
 {
 if(i==3)
 continue;
 printf(%d, i )
 }

}
maka yg di tampilkan 1 2 4 5 6 , angka 3 tidak ditampilkan

.
OPERATOR DAN EXPRESSI

Operator Penugasan ( “=” )
Setelah variabel telah dideklarasikan, operasi dapat dilakukan pada variable menggunakan operator penugasan (=). Sebuah nilai yang diberikan untuk variabel dapat berupa sebuah konstanta, variabel, atau ekspresi. Sebuah ekspresi dalam bahasa C adalah kombinasi dari operan (pengidentifikasi) dan operator. operaor penugasan antara lain sebagai berikut:

Variable = nilai , contoh nilai_max = 10;

Operator Arithmetic :
Perkalian *
Pembagian /
Modulo %
Penjumlahan +
Pengurangan atau Negasi –

Operator Logika
AND &amp;&amp;
OR ||

Operator relasional
sama dengan ==
tdk sama dengan !=
lebih kecil &lt;
lebih kecil atau sama dengan &lt;=
lebih besar &gt;
lebih besar atau sama dengan &gt;=

increment
++variable atau variable++ artinya variable=variable+1 ,

misal ++X atau X++ artinya X = X+1

perbedaaanya adalah untuk ++X , tambahkan dulu nilai X dgn 1 baru di proses baris kode tsb, sedangkan X++ , proses dulu baris code baru tambahkan nilai X dgn 1

deccrement
–variable atau variable– artinya variable=variable-1 ,

misal –Y atau Y– artinya Y = X-1

perbedaaanya adalah untuk –Y , kurangi dulu nilai Y dgn 1 baru di proses baris kode tsb, sedangkan Y– , proses dulu baris code tsb baru kurangi nilai Y dgn 1

Compound
compound digunakan hanya untuk menyingkat baris expresi saja contoh nya sbb

a += 3; artinya a = a + 3
b -= 3; artinya b = b – 3
c *= 3; artinya c = c * 3
d /= a; artinya d = d / a
a |= 3; artinya a = a OR 3
b &amp;= 3; artinya b = b AND 3
c ^= 3; artinya c = c ^ 3
PORTD &amp;= 3; artinya PORTD = PORTD &amp; 3

kondisonal Expressi
if(expression_A)
expression_B;
else
expression_C;

baris kode diatas bisa digantikan oleh kondisional expressi:

expression_A ? expression_B : expression_C;

contoh : (A &gt; 10) ? x = 5 : x =22;
kondisional expresi diatas artinya sama dengan :
IF(A&gt;10)
{
x=5;
}
Else
{
x= 22
}

Operator geser bit
Geser kiri   &lt;&lt;
contoh
unsigned char  B = 2 //  dalam biner 0000 0010
unsigned char C;
C =  B &lt;&lt; 1;          // C = 7  dalam biner = 0000 0100

Geser kanan   &gt;&gt;
contoh
unsigned char  X = 2   // 2  dalam biner =0000 0010
unsigned char Y;
Y =  X &gt;&gt; 1;     //  Y= 1  dalam biner=  0000 0001

FUNGSI

yang dimaksud fungsi adalah sebuah blok statement yg melaksanakan tugas tertentu dan bisa
dipakai lebih dari 1 kali di dlm program.
program bahasa C terdiri dari fungsi fungsi dan sebuah program c minimal terdiri dari 1 fungsi  yaitu fungsi main().
fungsi Main() dijalankan pertama kali saat program dijalankan.
fungsi terdiri dari dua bagian utama yaitu kepala fungsi dan blok fungsi
berikut ini bentuk umum sebuah fungsi adalah :

type nama_fungsi (type paramameter)
{

statement

}

kepala fungsi terdiri dari type return value, nama fungsi , types dan nama parameter(jika ada) .
Statement di blok fungsi menyatakan apa yg fungsi harus lakukan.
jika return value atau parameter tdk ada maka typenya ditulis void seperti dibawah ini
void nama_fungsi (void)
{

statement

}

.
PROTOTYPE FUNGSI

seperti variable fungsi juga mesti diberitahukan ke kompiler sebelum dipangggil di dlm program.
caranya yaitu dengan membuat prototype fungsi dan deklarasi fungsi seperti contoh berikut:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// prototype fungsi
 int fungsiku(int, int);
 int var1, var2, var3; // deklarasi global variable

void main(void) // main
 {

var3 = fungsiku(&amp;var1,&amp; var2);
 }

//deklarasi fungsi
 int fungsiku(int x, int y)
 {
 return
 }
LIBRARY FUNGSI

compiler C menyediakan sebagian fungsi fungsi yang siap kita pakai, prototype fungsi fungsi tsb disimpan di file header (*.h) sedangkan deklarasi fungsinya ada di file lain biasanya di file berextensi *.lib

File header ini hanya berisi prototype-prototype fungsim berikut contoh isi file header stdio.h ,
char getchar(void);
void putchar(char c);
void puts(char *str);
void putsf(char flash *str);
void printf(char flash *fmtstr,…);
dst….

deklarasi fungsi fungsi di atas ada di file stdio.lib

.
POINTER

Pointer adalah variable yg berisi alamat atau lokasi variable , konstanta atau fungsi.
sebuah variable dijadikan pointer dgn menambahkan operator * didepannya.

int *P artinya pointer P menunjuk ke sebuah data bertype integer.
char *X artinya pointer X menunjuk ke sebuah data bertype char.

contoh :

int var1 : var1 adalah variable bertype int
int *p : p adalah pointer ke variable bertype int

supaya pointer p menunjuk ke var1 , kita harus memberikan alamat var1 ke pointer p dgn cara:

p = &amp;var1 ( &amp;var1 artinya alamat var1 )

jadi sekarang pointer p merujuk ke var1 penulisannya:

*p = var1

sekarang kita lihat contoh fungsi dengan parameter pointer

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include
 int var1,var2,var3;
 int jumlah(*var1, *var2,); // prototype fungsi jumlah

main()
 {
 var3 = jumlah(&amp;var1, &amp;var3); // nilai yg dibeikan ke parameter adalah alamat variable var1 dan var2
 }

//definisi fungsi jumlah dengan parameter berupa pointer *var1 dan *var2
 int jumlah(*var1, *var2,);
 {
 return var1 + var2
 }
FUNGSI INPUT STDANARD

int scanf(char* format,arg1,arg2,…);
int sscanf(char* string, char*format, arg1,arg2,…);
int fscanf(FILE* fp,char* format,arg1,arg2,…);

Memasukkan data keyboard dalam C menggunakan fungsi scanf.
Menggunakan scanf dapat menentukan variables dan penentu format, seperti %d untuk integer.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include

main()

{

int i,j,k;

printf("masukan 2 angka :");
scanf("%d%d",&amp;i,&amp;j);

k = i + j;

printf("jumlah kedua angka tsb adalah %d \n",k);

}
masukan 2 angka  : 3  4

jumlah kedua angka tsb adalah 7
•Scanf digunakan untuk mengambil input data
•Dalam scanf harus ditentukan alamat variables (&amp;i, &amp;j) yang akan menerima input data
•Sebelum menentukan variables harus ditentukan penentu formatnya
•Misal integer menggunakan %d sejumlah variables

Perlu diingat dalam menggunakan scanf
Ditentukan alamat variable, seperti &amp;i, &amp;j
Ditentukan penentu format sejumlah variable yang digunakan dalam scanf

FUNGSI OUTPUT STDANARD

int printf(char* format, arg1, arg2,…);
int sprintf(char* string, char* format, arg1,arg2,…);
int fprintf(FILE* fp, char* format, arg1, arg2,…);

dengan format specifiers :

%d – int (sama dgn %i)
%ld – long int (sama dgn %li)
%f – float
%lf – double
%c – char
%s – string
%x – hexadecimal
contoh

1
2
3
4
5
6
7
8
9
10
11
12
#include "stdio.h"

int main(void)
{
int a;

printf("masukan angka: ");
scanf("%d", &amp;a);
printf("angka yg diinput= %d\n", a);

return 0;
}
MENGAKSES FILE

Langkah langkah  pengaksesan  file  :

1. Buat pointer ke struct File ,

misal :  File *pointer_file

2. file dibuka  dgn fungsi fopen(namafile,mode)

misal :   fopen(“namafile.txt”,”r”)

mode akses file antar lain:

“r” artinya file hanya untuk dibaca .

“w” artinya buat  file baru  untuk ditulis

“a” artinya isi file bisa ditambah

“r+”  artinya file bisa ditulis dan dibaca

“w+”  artinya file bisa dibaca dan ditulis. jika ada file yg sama akan di replace.

“a+” artinya file akan dibaca atau ditulis. jika file tdk ada file baru akan dibuat.

3.  file dibaca / ditulis /edit   dgn fungsi fungsi : fputc,fgetc,fputs,fgets,fscanf, fprintf, fseek, putc, getc, putw .

misal  :  fgetc(pointer_file)  , atau

fgets(string_bufer, ukuran buffer, pointer_file)

4. setelah selesai dibaca/ditulis  kemudian file di tutup.

misal fclosed(pointer_file)

mudah bukan,  nanti kita lihat contohnya dibawah

membaca data string  dari file dgn fget

deklarasi: char *fgets(char *str, int n, FILE *stream)
contoh program:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
/*
 buatlah file filetest.txt misal isinya spt ini:
 0 1 0
 1 2 0
 2 0 3

*/
#include
#include
#include
#include
#include

main()
{
FILE *fp;
char baris[20], string1[5], string2[5], string3[5];
int i;

fp=fopen(“filetest.txt”,”r”);
if (fp==NULL) {
printf(“file tdk bisa dibuka\n”);
exit(1);
}
printf(“\n”);
printf(“==========================\n”);
printf(“isi file : \n”);
printf(“==========================\n”);

 // baca tiap baris sampai fp ga ada char/null

i= 0;
while (fgets(baris,sizeof baris,fp)!=NULL)  {

printf(“%s”,baris);   // mencetak string baris ke layar

i++;
}

printf(“\n”);
printf(“==========================\n”)
return(0);
}
</sddio></stdio></stdio>
no image

Tutorial Belajar C Part 1: Pengertian Bahasa Pemrograman C

Apa itu bahasa pemrograman C? Apa gunanya? dan kenapa harus dipelajari? Dalam tutorial pertama dari seri belajar bahasa pemrograman C di duniailkom kali ini kita akan membahas semuanya, yang diawali dengan pengertian bahasa pemrograman C. Pengertian Bahasa Pemrograman C Bahasa Pemrograman C adalah sebuah bahasa pemrograman komputer yang bisa digunakan untuk membuat berbagai aplikasi (general-purpose programming language), mulai dari sistem operasi (seperti Windows atau Linux), antivirus, software pengolah gambar (image processing), hingga compiler untuk bahasa pemrograman, dimana C banyak digunakan untuk membuat bahasa pemrograman lain yang salah satunya adalah PHP. Meskipun termasuk general-purpose programming language, yakni bahasa pemrograman yang bisa membuat berbagai aplikasi, bahasa pemrograman C paling cocok merancang aplikasi yang berhubungan langsung dengan Sistem Operasi dan hardware. Ini tidak terlepas dari tujuan awal bahasa C dikembangkan. Bahasa pemrograman C dibuat pertama kali oleh Dennis M. Ritchie pada tahun 1972. Saat itu Ritchie bekerja di Bell Labs, sebuah pusat penelitian yang berlokasi di Murray Hill, New Jersey, Amerika Serikat. Ritchie membuat bahasa pemrograman C untuk mengembangkan sistem operasi UNIX. Sebelumnya, sistem operasi UNIX dibuat menggunakan bahasa assembly (assembly language). Akan tetapi bahasa assembly sendiri sangat rumit dan susah untuk dikembangkan. Dengan tujuan mengganti bahasa assembly, peneliti di Bell Labs membuat bahasa pemrograman B. Namun bahasa pemrograman B juga memiliki beberapa kekurangan, yang akhirnya di lengkapi oleh bahasa pemrograman C. Dengan bahasa C inilah sistem operasi UNIX ditulis ulang. Pada gilirannya, UNIX menjadi dasar dari banyak sistem operasi modern saat ini, termasuk Linux, Mac OS (iOS), hingga sistem operasi Android. Tutorial Belajar Bahasa Pemrograman C Bagi Pemula Fitur dan Keunggulan Bahasa Pemrograman C Berikut beberapa fitur serta keunggulan bahasa pemrograman C jika dibandingkan dengan bahasa pemrograman lain: C sebagai bahasa pemrograman prosedural Konsep pemrograman prosedural adalah sebuah metode pemrograman yang setiap baris perintah diproses secara berurutan dari baris paling atas hingga baris paling bawah. Selain itu bisa terdapat fungsi tambahan (function) yang digunakan untuk menyelesaikan berbagai tugas. Bahasa pemrograman C termasuk ke dalam kelompok ini. Selain konsep prosedural, terdapat juga konsep pemrograman object (object-oriented programming). Di dalam bahasa pemrograman object, setiap tugas akan dijalankan menggunakan class dan object. Contoh bahasa pemrogaman object adalah JAVA. Bagi pemula, sangat disarankan untuk mempelajari bahasa pemrograman prosedural terlebih dahulu, baru kemudian masuk ke dalam bahasa pemrograman object. Ini juga menjadi alasan untuk belajar bahasa C terlebih dulu baru kemudian masuk ke bahasa pemrogaman object seperti JAVA. Beberapa bahasa pemrograman juga mendukung konsep prosedural dan object sekaligus, contohnya bahasa pemrograman C++ dan PHP. Bahasa C sangat cepat dan efisien Aplikasi yang dibuat menggunakan bahasa C bisa dieksekusi dengan sangat cepat serta berukuran kecil. Ini karena C bisa langsung berkomunikasi dengan hardware, sebuah fitur yang jarang tersedia di bahasa pemrograman modern seperti JAVA, PHP, maupun Phyton. Akan tetapi, hal ini juga memiliki kelemahan. Bahasa C relatif sederhana dan tidak memiliki fitur-fitur modern seperti garbage collection dan dynamic typing. C adalah portable language Maksudnya, bahasa pemrograman C bisa di-compile ulang supaya berjalan di berbagai sistem operasi tanpa perlu mengubah kode-kode yang ada. Aplikasi yang dibuat di Windows dengan bahasa C, bisa dipindahkan ke Linux dengan sedikit atau tanpa modifikasi. C merupakan “induk” dari bahasa pemrograman modern Bahasa pemrograman C banyak menginspirasi bahasa pemrograman lain, seperti C++, C#, Objective C, PHP, JAVA, JavaScript dan masih banyak lagi. Dengan mempelajari bahasa C, anda akan familiar dan lebih mudah saat berpindah ke bahasa pemrograman lain yang merupakan turunan dari C. Haruskah Saya Mempelajari Bahasa C? Jawaban singkatnya: Anda tidak harus belajar bahasa C. Sama seperti bahasa Pascal, bahasa C saat ini kebanyakan dipakai sebagai bahasa pengantar untuk mempelajari algoritma. Dimana algoritma itu sendiri merupakan kumpulan instruksi untuk memecahkan masalah. Sepanjang tutorial bahasa C di duniailkom, kita juga hanya menampilkan hasil program ke dalam bentuk teks yang mirip aplikasi DOS. Belum sampai ke membuat aplikasi “sebenarnya” yang menggunakan tampilan grafis, gambar, mouse, dan efek-efek menarik lainnya. Namun ini bukan berarti C tidak bermanfaat. Seperti yang saya singgung di keunggulan bahasa C, C merupakan “induk” dari berbagai bahasa pemrograman modern. Dengan mempelajari C, anda juga mempelajari dasar dari pemrograman. Ibarat sedang membangun rumah, apa yang akan dipelajari disini barulah cara mengaduk semen, cara menyusun bata, atau cara membuat pondasi. “Rumahnya” nanti akan lebih cepat dibuat menggunakan bahasa pemrograman yang lebih modern. Jika anda ingin membuat aplikasi yang siap pakai dan memiliki tampilan modern, bisa langsung ke bahasa “visual” seperti Visual Basic, Visual C++, HTML, PHP, dll. Alasan lain untuk belajar bahasa C adalah jika saat ini anda sedang berkuliah di jurusan komputer, atau ingin masuk ke jurusan komputer. Karena hampir selalu akan ketemu bahasa pemrograman C di awal-awal perkuliahan, dimana bahasa C, Pascal, dan C++ banyak dipakai sebagai bahasa pemrograman untuk belajar dasar algoritma. Setelah membahas pengertian bahasa C, keunggulannya dan alasan untuk mempelajari bahasa C, berikutnya kita akan lihat bagaimana sejarah dan perkembangan dari bahasa C yang sudah berumur 45 tahun.