download

Matakuliah
Tahun
Versi
: H0112 – Pemrograman Bahasa Tingkat Tinggi
: 2005/2006
: xxx/2
Pertemuan 1
Pengenalan Pemrograman
Terstruktur C
1
Learning Outcomes
Pada akhir pertemuan ini, diharapkan mahasiswa
akan mampu :
• Menjelaskan dasar-dasar pemrograman
bahasa C, antara lain: Struktur Program,
Tipe Variabel, I/O Routine, Naming
Convention, dan Komentar.
2
Outline Materi
•
•
•
•
•
Struktur Program
Tipe Variabel
I/O Rutin
Naming Convention
Komentar
3
Struktur Program
• Struktur Program C Sederhana
int main ( ) {
char a;
float f;
Permulaan dari fungsi
main ( )
Alokasi Memori
a = 10 * 2;
Perintah / Pernyataan
f = 22 / 7;
return 0;
}
Akhir dari fungsi main ( )
4
Struktur Program
• Struktur Program C Sederhana
int main ( ) {
char a;
float f;
Permulaan dari fungsi
main ( )
Alokasi Memori
a = 10 * 2;
Perintah / Pernyataan
f = 22 / 7;
return 0;
}
Akhir dari fungsi main ( )
5
Struktur Program
Fungsi main ( )
• “main” adalah suatu fungsi khusus yang
dijalankan pertama kali pada saat program
dimulai.
• Fungsi “main” berakhir pada saat perintah
“return” dipanggil, kembali kepada sistem
operasi, misalnya windows 2000.
6
Struktur Program
• Struktur Program C Sederhana
int main ( ) {
char a;
float f;
Permulaan dari fungsi
main ( )
Alokasi Memori
a = 10 * 2;
Perintah / Pernyataan
f = 22 / 7;
return 0;
}
Akhir dari fungsi main ( )
7
Struktur Program
Alokasi memory
• Alokasi memori dapat berupa deklarasi variabel
• Variabel adalah tempat penampungan data
sesuai dengan nama variabelnya (misalnya:
int a; )
8
Struktur Program
• Struktur Program C Sederhana
int main ( ) {
char a;
float f;
Permulaan dari fungsi
main ( )
Alokasi Memori
a = 10 * 2;
Perintah / Pernyataan
f = 22 / 7;
return 0;
}
Akhir dari fungsi main ( )
9
Struktur Program
Perintah / Pernyataan
• Perintah merupakan komponen dasar yang
akan membentuk program secara keseluruhan
• Perintah “Assignment” (operator =)
– a = 23; c = a * 3;
– b = 32 * a * cos(c);
• Perintah “Conditional” (operator ==, !=, …)
– if (a == b)
– If (a != b)
10
Tipe Variabel
• “byte” tipe data untuk integer
• 0 … 255
• 00000000 ...11111111
• Arsitektur memory menggunakan satuan
byte sebagai satuan terkecil
11
Tipe Variabel
• “int” tipe data untuk integer
• -32.767 … 32.767
• 1000000000000000..0111111111111111
• Bit 16 = 1, berarti nilai negatif
• Diimplementasi 2 byte pada mesin 80x86
• Diimplementasi 4 byte pada GNU C
compiler
12
Tipe Variabel
• “float” tipe data untuk bilangan pecahan
• 1.17549435x10-38 …3.40282347x1038
• 32 bit :
– 1 bit untuk sign bit
– 23 bit untuk mantissa
– 8 bit untuk exponent
• Diimplementasi 4 byte sebagai satu buah angka
pecahan (floating point number) 32 bit
13
Tipe Variabel
• “char” tipe data untuk karakter
• Diimplementasikan 1 byte sebagai simbol
dari sebuah karakter berdasarkan standar
ASCII (American Standard Code for
Information Interchange)
14
I/O Rutin
• Data Output
– Printf ( ): mencetak data pada layar
• Printf(<format>, <var1>, <var2>, …)
• <format>: dalam tipe data string, “…”
• Setiap %<spec> pada <format> digantikan oleh
setiap <var-i>
• <spec> menjelaskan format data:
– %f: float, %d: integer, %c: character
15
I/O Rutin
• Data Output
– Contoh printf ( ):
int main ( ) {
int a;
Output:
float b;
a=2, b=3.142320, s=k
char s;
a = 2;
b = 3.14232;
s = ‘k’;
printf (“a=%i, b=%f, s=%c”,a, b, s)
return 0;
}
16
I/O Rutin
• Data Input
– scanf ( ): input data via keyboard
• scanf(<format>, &<var1>, &<var2>, …)
• <format>: sama seperti pada perintah printf ( )
• Simbol ‘&’ digunakan karena data akan ditulis ke
variabel, bukan dibaca dari variabel
17
I/O Rutin
• Data Input
– Contoh scanf ( ):
int main ( ) {
Output:
Masukkan satu bilangan: 2.758
float b;
printf (“Masukkan 1 bilangan: “);
b=2.758000
scanf (“%f ”, &b);
printf (“b=%f ”, b);
return 0;
}
Diketik via
keyboard, lalu
tekan Enter
18
Naming Convention
• Aturan Penamaan Umum
– c-style naming: this_is_variable
– camelCase
– CamelCase
– p_ -> pointer prefix
– s_ -> static prefix
– g_ -> global prefix
19
Komentar
• Buatlah kode program yang mudah dibaca
agar mudah diubah
• Tidak berpengaruh terhadap kinerja
program
• Komentar dimulai dengan /* dan diakhiri
dengan */
– Gunakan sebanyak mungkin /* … */ !!!
• Biasakan menggunakan komentar pada
setiap Perintah!
20
Topik Minggu Depan
• Pointer variabel (variabel khusus)
• Tugas:
– Ide dasar: Merekayasa suara via komputer –
buku pustaka no:2 halaman 41
Port Pin
Speaker
atau
Headset
7404
100 ohms
21