Minggu ke-3 Tipe Data Dalam C

dokumen-dokumen yang mirip
Tipe Data. Pendahuluan. Objektif. Bahan Bacaan

Operator Precedence dan Associativity DASAR PEMROGRAMAN. JULIO ADISANTOSO Departemen Ilmu Komputer IPB. Pertemuan 2

Operator dan Assignment

Pemrograman Berbasis Objek Operator dan Assignment

OPERATOR BAHASA C. Obyektif : 4. Mengetahui macam-macam operator dalam Bahasa C. 5. Mengetahui dan dapat menggunakan format pada tiap tipe data..

Pemrograman Berorientasi Obyek. Operator & Assignment

OBJECT ORIENTED PROGRAMMING. Day 3 : Operator dan Assignment

Operator Precedence dan Associativity DASAR PEMROGRAMAN. JULIO ADISANTOSO Departemen Ilmu Komputer IPB. Pertemuan 2

Operator dan Assignment. Pertemuan 3 Pemrograman Berbasis Obyek

T I P E D A T A P R I M I T I F V A R I A B E L D A N S T A T E M E N P E N U G A S A N E K S P R E S I D A N O P E R A T O R A R I T M A T I K A

BAB 3. OPERATOR DALAM BHS C

BAB 3 TYPE DATA, VARIABLE DAN OPERATOR

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

DASAR PEMOGRAMAN JAVA

OPERATOR DAN UNGKAPAN

Dasar Pemrograman Java

Minggu ke-10 Pointer. Pendahuluan. Objektif. Bahan Bacaan

INPUT OUTPUT. cout. Digunakan untuk mencetak suatu informasi ke layar Contoh : cout << Halo Teknik Informatika

Tipe Data dan Operator

Minggu ke-11 Fungsi (Function)

MODUL PRAKTIKUM PEMROGRAMAN BERORIENTASI OBJEK (JAVA) PERTEMUAN 3 OPERATOR JAVA

Java Basic. Variabel dan Tipe Data. Lokasi di dalam memori komputer yang digunakan untuk menyimpan suatu informasi (nilai)

disebut ternary operator. Di dalam suatu operasi dapat terdapat banyak operator. Urutan eksekusi dari operatoroperator

Minggu ke-14 Typedef, Struct & Command Line Argument

Identifier, Keywords, Variabel, Tipe Data Primitif dan Operator PBO. Ramos Somya

Ekspresi, Pernyataan & Operasi Aritmetika/Logika

PEMROGRAMAN BERORIENTASI OBJEK. Operator. Budhi Irawan, S.Si, M.T

elemen Dasar Bahasa Pemrograman C

Achmad Solichin.

Pernyataan (Statement)

TUGAS MATA KULIAH ALGORITMA PEMROGRAMAN 3

OPERATOR-OPERATOR DALAM JAVA

Dasar Pemrograman Java

Variable. Variable (cont) Variable (cont) Tipe Data

Pertemuan 04. Pemrograman Dasar 2012

TIPE, NAMA, DAN NILAI

Ekspresi, Pernyataan & Operasi Aritmetika/Logika

Universitas Komputer Indonesia. Pemrograman dengan C++ Builder 2004 Taryana S.

VARIABEL, TIPE DATA DAN EKSPRESI Bab 2

Pointer. Objektif. Bahan Bacaan

Turbo C adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C

PRAKTIKUM 3 DASAR PEMROGRAMAN C

LOGIKA ALGORITMA. Pertemuan 4. By: Augury

PRAKTIKUM 3 DASAR PEMROGRAMAN C

Data bisa dinyatakan dalam bentuk konstanta atau variabel.

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

Algoritma & Pemrograman #3

Reserved words Reserved words atau keywords merupakan kata-kata spesifik digunakan oleh compiler untuk keperluan pemrograman. Contoh reserved words

Bab 2. Dasar-Dasar Pemrograman C

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

SUMBER BELAJAR PENUNJANG PLPG

Merupakan tipe data bilangan pecahan seperti 1.5, 2.1, dsb Tipe data ini memiliki ukuran 32 bit dengan panjang range 3.4 x 1038.

Dasar-dasar Pemrograman C DASAR PEMROGRAMAN & ALGORITMA

P 4 Bab 3 : Dasar Pemrograman C

BAB III OPERATOR compiler operasi operand A. Operator Aritmatika Operator Penggunaan Deskripsi Latihan 4. Aritmatika.java

Ekspresi dan Operator. Algoritme dan Pemrograman. Jenis Operator C. Operator Aritmetika. Operasi Logika 09/22/2013 ILKOM IPB 1.

Tipe data dasar merupakan tipe data yang disediakan oleh kompailer, sehingga dapat langsung dipakai Dalam algoritma dan pemrograman yang termasuk dala

Tipe Data, Identifier, Operator dan Control Statement

Mana di antara penamaan variabel berikut yang benar? Mengapa yang lain salah? a. 3n+1 b. n+1 c. 3n1 d. 3n_1 e. n_31

Java Operators. Nurochman

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

Identifier dan Tipe Data

Pemrograman. Pertemuan-3 Fery Updi,M.Kom

Pre Lab P 03 Tipe Data, Operator dan Expresi

POINTER. Tim Alpro Teknik Informatika

TIPE DATA, VARIABEL DATA DAN OPERATOR

MODUL DUA VARIABEL DAN TIPE VARIABEL

Struktur Data adalah : suatu koleksi atau kelompok data yang dapat dikarakteristikan oleh organisasi serta operasi yang didefinisikan terhadapnya.

MATERI 2 JENIS-JENIS DATA SEDERHANA & INPUT/OUTPUT DATA

Module 4. Ekpresi, Operator, dan Konstanta

Teori Algoritma TIPE DATA

Tipe Data Dasar. Data bisa dinyatakan dalam bentuk konstanta atau variabel.

Pemrograman Berorientasi Objek. Beni Suranto, S.T.

.::BAB II.::MENGENAL PASCAL

KONSEP DASAR BAHASA C

A. TUJUAN PEMBELAJARAN 1. Mengenal berbagai macam bentuk operator 2. Memahami penggunaan berbagai macam jenis operator yang ada di Java

LAPORAN PRAKTIKUM STRUKTUR DATA

TIPE DATA PADA JAVA. Pertemuan (K-04/L-04)

PENGERTIAN VARIABEL, KONSTANTA DAN TIPE DATA

PRAKTIKUM 2. perubah (variabel), konstanta, fungsi, atau obyek lain yang didefinisikan oleh

Modul PVB-POLINEMA V1.0

Pertemuan 4 OPERATOR DAN STATEMEN I/O

2 TIPE DATA DAN VARIABEL

Operator untuk operasi aritmatika yang tergolong sebagai operator binary adalah: Perkalian Pembagian Sisa Pembagian (mod) Penjumlahan 6 2

LAPORAN STRUKTUR DATA OPERATOR BAHASA JAVA. Disusun oleh :

Dasar Pemrograman Java

Tipe Data dan Variabel. Dosen Pengampu Muhammad Zidny Naf an, M.Kom

3. Elemen Dasar C++ S. Indriani S. L., M.T L.,

Typedef dan Struct. Pendahuluan. Objektif. Bahan Bacaan

Dasar Komputer dan Pemrograman. Konsep Tipe Data dan Operator Nama dan Nilai Data

Tujuan Instruksional. Mahasiswa mampu :

MODUL PRAKTIKUM ALGORITMA DAN STRUKTUR DATA PERTEMUAN 1

Tipe Data dan Operator. Ekohariadi FT Unesa

Tipe bentukan dan pointer selanjutnya akan kita pelajari pada modul pemrograman 1 (akhir semester).

Pemrograman Berorientasi Obyek. Dasar Pemrograman Java

Review #1. Review #2

Fungsi. Fungsi. Dasar Komputer & Pemrograman 1. dipecah Sub Program. Program. Dasar Komputer & Pemrograman TC22052 Kartika Firdausy - UAD

BAB II VARIABEL DAN TIPE DATA

Pengenalan PHP Contoh penulisan file PHP :

MATERI/BAHAN PRAKTIKUM PENDAHULUAN DAN PENGENALAN (IDENTIFIER)

Transkripsi:

Minggu ke-3 Tipe Data Dalam C Pendahuluan Setiap bahasa pemograman menyediakan tipe data. C memiliki beberapa tipe data primitif (intrinsic data type) yang merupakan bagian dari bahasa C itu sendiri. C juga memiliki tipe data lain yang biasa dikenal dengan istilah aggregate data type seperti array. Komplek data tipe dapat dibuat dengan kombinasi antara kedua tipe data tersebut. Minggu ini kita akan membahas bagaimana deklarasi, ekspresi serta cara memanipulasi tipe data dalam C. Objektif Memperkenalkan tipe data dan operator dalam C Menjelaskan beberapa contoh yang dapat menjebak programmer berkaitan dengan tipe data sehingga menimbulkan error Menjelaskan cara mengkonversi satu tipe data ke tipe data yang lain Bahan Bacaan Buku pegangan atau buku-buku lain yang menjelaskan tentang topik ini. Copyright 2010, Dr. Taufik Fuadi Abidin, S.Si M.Tech, Program Studi Teknik Informatika FMIPA Universitas Syiah Kuala 1

Tipe Data Primitif char signed char unsigned char signed short int signed int signed long int unsigned short int unsigned int unsigned long int float double long double Pada dasarnya keyword signed sangat jarang digunakan karena signed int sama artinya dengan int. Compiler mengerti bila suatu variable dideklarasikan bertipe int maka variable tersebut adalah signed int atau bilangan integer positif maupun negatif. Unsigned int berarti bilangan yang dimaksud adalah bilangan integer positif saja. Besar Memori Untuk tipe komputer 16 bits, tipe data short dan int membutuhkan memori sebesar 2 byte dan long 4 byte. Sedangkan untuk komputer 32 bits, tipe data short membutuhkan memori sebesar 2 byte dan int dan long sebesar 4 byte. Copyright 2010, Dr. Taufik Fuadi Abidin, S.Si M.Tech, Program Studi Teknik Informatika FMIPA Universitas Syiah Kuala 2

Signed int Komputer 16 bits 15 15 2 int + 2 1 = 32768 int + 32767 Komputer 32 bits 31 31 2 int + 2 1 = 2147483648 int + 2147483647 Unsigned int Komputer 16 bits 16 0 int + 2 1 = 0 int + 65535 Komputer 32 bits 32 0 int + 2 1 = 0 int + 4294967295 Gunakan sizeof untuk mengetahui besar memori yang dibutuhkan suatu variabel: printf("size of int = %d, size of double = %d\n", sizeof(int), sizeof(double)); Copyright 2010, Dr. Taufik Fuadi Abidin, S.Si M.Tech, Program Studi Teknik Informatika FMIPA Universitas Syiah Kuala 3

Operator Dalam C (Precedence & Associativity) Operator Associativity () []. -> ++(postfix) --(postfix) Kiri ke kanan ++(prefix) --(prefix)! ~ sizeof (type casting) + (unary) - (unary) &(address) * (dereference) Kanan ke kiri * / % Kiri ke kanan + - Kiri ke kanan << >> Kiri ke kanan < <= > >= Kiri ke kanan ==!= Kiri ke kanan & Kiri ke kanan ^ Kiri ke kanan Kiri ke kanan && Kiri ke kanan Kiri ke kanan?: Kanan ke kiri = += -= *= /= %= >>= <<= &= ^= = Kanan ke kiri, (comma operator) Kiri ke kanan Precedence High Low Copyright 2010, Dr. Taufik Fuadi Abidin, S.Si M.Tech, Program Studi Teknik Informatika FMIPA Universitas Syiah Kuala 4

Arithmetic Operator * Perkalian y * 10 / Pembagian a / b Apabila variabel a dan b bilangan bulat (integer) maka hasil pembagian akan dibulatkan (integer division) + Penjumlahan a + b - Pengurangan a - b % Modulus x % y Hanya bisa digunakan untuk tipe data integer termasuk char. Tidak dapat digunakan untuk bilangan pecahan seperti float dan double. 'c' % 10 Legal 5.5 % 2 Illegal x % y equivalen dengan x - y * ( x / y) - + Unary plus & minus Relational Operator > >= < <= a > b!= == a!= b a tidak sama dengan b a == b a sama dengan b &&! (a && b) (c &&!d)!x = 0 jika x adalah bilang bukan nol!x = 1 jika x adalah 0 Copyright 2010, Dr. Taufik Fuadi Abidin, S.Si M.Tech, Program Studi Teknik Informatika FMIPA Universitas Syiah Kuala 5

Increment/Decrement Operator Contoh ++ Increment x++ (postfic increment) ++x (prefix increment) -- Decrement x-- (postfix decrement) --x (prefix decrement) Tipe Data Dalam C x = 5; y = x++; Result: y = 5 dan x = 6 x = 5; y = ++x; Result: y = 6 dan x = 6 x = 5; y = x + x++; Berapakah nilai y? Nilai y tergantung dari evaluation order / system-dependant Bila evaluation order dari kiri ke kanan maka y = 10 Bila evaluation order dari kanan ke kiri maka y = 11 Copyright 2010, Dr. Taufik Fuadi Abidin, S.Si M.Tech, Program Studi Teknik Informatika FMIPA Universitas Syiah Kuala 6

Assignment Operator Penggunaan assignment operator = sering menjebak programmer. Operator = sangat jauh berbeda artinya dengan operator == Contoh if (x = y - 10)... Boolean expression of if statement Statement ini adalah legal dalam C. Ingat bahwa C tidak memiliki tipe data boolean. Non-zero selalu berarti TRUE dan zero berarti FALSE Assigment operator Statement di atas tidak sama dengan statement berikut ini: if (x == y - 10)... Logical operator Copyright 2010, Dr. Taufik Fuadi Abidin, S.Si M.Tech, Program Studi Teknik Informatika FMIPA Universitas Syiah Kuala 7

Assignment Operator Penggunaan assignment variable (operator) = expression sama artinya dengan variable = variable (operator) expression Contoh y += x; y = y + x; y /= (x + 2); y = y / (x + 2); y += (x %= 3) - (t *= 5); y = y + (x = x % 3) - (t = t * 5); y += (x == 2) Berapakah nilai y bila nilai awal y = 10 dan x = 0? Copyright 2010, Dr. Taufik Fuadi Abidin, S.Si M.Tech, Program Studi Teknik Informatika FMIPA Universitas Syiah Kuala 8

Konversi Tipe Data Konversi secara otomatis (automatic conversion/promotion) Konversi secara eksplisit (casting) Konversi Secara Otomatis Apabila dalam suatu statement terdapat dua variabel dengan tipe yang berbeda, maka salah satu dari variabel tersebut akan dikonversikan berdasarkan urutan berikut: int < unsigned < long < unsigned long < float < double < long double Contoh char c; short s; int i; long l; unsigned u; float f; double d; long double ld; c - s / i dikonversi menjadi int u * 3.1 - i dikonversi menjadi double c + 3 dikonversi menjadi int u - ld dikonversi menjadi long double Copyright 2010, Dr. Taufik Fuadi Abidin, S.Si M.Tech, Program Studi Teknik Informatika FMIPA Universitas Syiah Kuala 9

Konversi Secara Eksplisit (casting) Jika i adalah variabel bertipe int, maka (double) i Mengakibat i secara eksplisit terkonversi menjadi tipe double Contoh (float) i + 3 Equivalen dengan ((float) i) + 3 Berhubung operator casting lebih tinggi precedence-nya dari pada operator + maka tanda kurung tidak perlu digunakan x = (float) ((int) y + 1); (double) (x = 77) Tidak sama artinya dengan (double) x = 77 Mengapa? int x = 7, y = 3; float f; f = x / y; Nilai f = 2 f = (float) x / float (y); Nilai f = 2.3 Copyright 2010, Dr. Taufik Fuadi Abidin, S.Si M.Tech, Program Studi Teknik Informatika FMIPA Universitas Syiah Kuala 10