Algoritme dan Pemrograman

Slides:



Advertisements
Presentasi serupa
ARRAY.
Advertisements

ARRAY ??.
Pointer.
Tipe Data Bentukan Pertemuan ke-5.
Abstract data type (Structure, Union, Enumeration)
TEL 2112 Dasar Komputer & Pemograman Nama dan Nilai Objek Abdillah, S.Si, MIT Website:
Struktur Sugeng Supriyadi, M.Kom.
PERTEMUAN VIII STRUKTUR LANJUT JURUSAN TELEKOMUNIKASI POLITEKNIK ELEKTRONIKA NEGERI SURABAYA Oleh : Muh. Zen S. Hadi, ST.
STRUKTUR DATA.
3 Variabel, Konstanta Tipe Data dan dalam Bahasa C/C++ Java dan Bab
ARRAY OF STRUCT Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
STRUCT 1.
PRAKTIKUM ALGORITMA DAN STRUKTUR DATA
POINTER (VAR.PENUNJUK)
STRUKTUR DATA (1).
Algoritma & Struktur Data Abstract Data Type Evangs Mailoa.
Karakter & String.
Algoritma dan Struktur Data
STRUKTUR DATA Structure.
SEMESTER GANJIL 2009/2010.
STRUCT OF ARRAY Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
STRUKTUR Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing-masing elemen data tersebut dinamakan field atau elemen.
STRUKTUR Struktur merupakan kumpulan elemen data yang digabungkan menjadi satu kesatuan data. Masing-masing elemen data tersebut dinamakan field atau elemen.
Teknik Pemrog. Terstruktur 2
Struct 2nd Part.
Fungsi, Array dan String
Umi Sa’adah Konsep Pemrograman PENS-ITS Bab 14. Struktur 1 Konsep Pemrograman Politeknik Elektronika Negeri Surabaya 2006.
Pertemuan 12 Array (Larik) & struct Erna Sri Hartatik
PEMROGRAMAN DASAR.
Array (bagian 2).
Materi-8 STRUCTURE (RECORD).
STRUKTUR DATA.
Tipe, Nama, dan Nilai Anifuddin azis.
STRUCT (Dalam Bahasa C)
Algoritme dan Pemrograman
Teknik Pemrograman oleh: Yohanes Sugiarto.
Algoritma dan Struktur Data
STRUKTUR DATA (1) Sri Nurhayati, MT.
Algoritme dan Pemrograman
Struktur Manfaat tipe data struct secara umum adalah untuk menyimpan paket (sekumpulan) data ke dalam satu buah nama variabel saja. Kumpulan data di dalam.
TEL 2103 Dasar Komputer & Pemograman Larik (Array)
Algoritme dan Pemrograman
Struktur Data (Data Structure) – IS 2313
ARRAY (LARIK).
PEMROGRAMAN DASAR (BAHASA C)
TEL 2112 Dasar Komputer & Pemograman Larik (Array)
Algoritma dan Pemrograman RECORD (REKAMAN)
Remainder Senin depan mulai UTS Praktikum
Latihan #0 Dengan menggunakan pernyataan looping WHILE dan jumlah instruksi sesedikit mungkin, tuliskan cuplikan program (bukan program lengkap, hanya.
TEL 2112 Dasar Komputer & Pemograman Larik (Array)
Struktur Data Khoiriya Latifa, M.Kom.
Algoritme dan Pemrograman
ARRAY 1d MERISKA DEFRIANI, S.KOMP ALGORITMA DAN PEMROGRAMAN II
ALGORITMA & STRUKTUR DATA I
Algoritma dan Struktur Data
Algoritma dan Struktur Data
Algoritma dan Struktur Data
Algoritme dan Pemrograman
Algoritma dan Struktur Data
Algoritma dan struktur data
Algoritma Struktur Data
KONSEP DASAR STRUKTUR DATA
STRUCTURE Struktur (Structure = struct) merupakan suatu struktur data yang terdiri dari satu atau lebih variabel yang bertipe data.
Algoritme dan Pemrograman
Prepared by Yohana Nugraheni
Tipe Data Bentukan Pertemuan ke-5.
Variable Static & Linked List
Algoritma dan Stuktur Data
STRUKTUR DATA – TEKNIK INFORMATIKA S1
Pengenalan Struktur Data
Transcript presentasi:

Algoritme dan Pemrograman Kuliah #11 Structure ILKOM IPB

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Review Latihan Slide 10 #include <stdio.h> #include <stdlib.h> #define SIZE 100 void substring char *dest, const char *source, int a, int n) { int i=a; for (; i<a+n; i++) dest[i-a]=source[i]; dest[i-a]='\0'; } DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Review Latihan Slide 10 main() { int n, i; char st[50], nama[SIZE][50], t[3]; int usia[SIZE], sum=0; scanf("%d\n", &n); for (i=0; i<n; i++) { gets(st); // baca baris data substring(nama[i], st, 2,50); // ambil nama mulai kolom 2 substring(t, st, 0, 2); // ambil usia mulai kolom 0 usia[i]=atoi(t); // ubah usia menjadi integer sum += usia[i]; } for (i=0; i<n; i++) // cetak nama printf("%s\n", nama[i]); printf("%.2f\n", (float)sum/n); // hitung dan cetak rataan usia return 0; DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Review Latihan Slide 10 Untuk menampung data nama dan usia, dibuat dua variabel array: char nama[SIZE][50]; int usia[SIZE]; Bisakah disimpan dalam satu variabel array biasa?  TIDAK BISA, karena berbeda tipe. Beberapa variabel dapat dikemas dalam satu paket (package) dengan menggunakan struct. DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Pengertian STRUCT STRUCT adalah sekumpulan variabel (masing-masing dapat berbeda tipe) yang dikelompokkan dan dikemas ke dalam satu nama variabel. Untuk mendefinisikan suatu rekord data. Termasuk tipe data yang dibangkitkan (derived data type). DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Membuat struct Contoh: struct dataMhs { char *nama; int usia; }; Tipe struct ini diberi nama dataMhs. Terdiri atas dua variabel: nama dan usia. Pernyataan di atas hanya membuat tipe data struct baru, TIDAK mendeklarasikan variabel apapun. DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Deklarasi struct Contoh deklarasi variabel menggunakan tipe struct: struct dataMhs mhs; struct dataMhs arrMhs[100]; Dapat juga dilakukan langsung (definisi dan deklarasi): struct dataMhs { char *nama; int usia; } mhs, arrMhs[100]; DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Contoh program :: Merekam data nama dan usia mhs. #include <stdio.h> struct dataMhs { char *nama; int usia; } mhs1; main() { struct dataMhs mhs2={"Indah Sekali", 19}; mhs1.nama = "Elok Nian"; mhs1.usia = 20; printf("%s %d\n", mhs1.nama, mhs1.usia); printf("%s %d\n", mhs2.nama, mhs2.usia); return 0; } Elok Nian 20 Indah Sekali 19 DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Operator pointer pada struct #include <stdio.h> struct dataMhs { char *nama; int usia; }; main() { struct dataMhs mhs={"Indah Sekali", 19}; struct dataMhs *p; p = &mhs; printf("%s %d\n", mhs.nama, mhs.usia); printf("%s %d\n", p->nama, p->usia); return 0; } Indah Sekali 19 DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Akses anggota struct Menggunakan salah satu dari dua operator: operator titik (.) operator panah (->) tergantung tipe variabel yang dideklarasikan. Jika variabel biasa (selain pointer) maka digunakan operator titik, sedangkan jika variabel pointer maka digunakan operator panah. DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Typedef Typedef merupakan mekanisme untuk membuat sinonim atau alias dari tipe data yang telah didefinisikan sebelumnya. Contoh: typedef struct dataMhs MHS; berarti mendefinisikan tipe data baru bernama MHS sebagai sinonim untuk struct dataMhs. Dengan demikian, pernyataan struct dataMhs untuk selanjutnya dapat diganti dengan MHS saja. DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Contoh :: Menggunakan typedef #include <stdio.h> struct dataMhs { char *nama; int usia; }; typedef struct dataMhs MHS; main() { MHS mhs={"Indah Sekali", 19}; MHS *p; p = &mhs; printf("%s %d\n", mhs.nama, mhs.usia); printf("%s %d\n", p->nama, p->usia); return 0; } Indah Sekali 19 DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Array of struct #include <stdio.h> #define SIZE 100 struct nilaiMhs { char nim[9]; int uts, uas; float rataan; }; typedef struct nilaiMhs NILAI; void substring (char *dest, const char *source, int a, int n) { int i=a; for (; i<a+n; i++) dest[i-a]=source[i]; dest[i-a]='\0'; } DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR Array of struct main() { int n, i; NILAI list[SIZE]; char brs[256], st[4]; scanf("%d\n", &n); for (i=0; i<n; i++) { gets(brs); // baca per baris data substring(list[i].nim, brs, 0, 9); substring(st, brs, 10, 2); list[i].uts=atoi(st); substring(st, brs, 13, 2); list[i].uas=atoi(st); } for (i=0; i<n; i++) // hitung rataan tiap mhs list[i].rataan=(float) (list[i].uts+list[i].uas)/2.0; printf("%s %.2f\n", list[i].nim, list[i].rataan); return 0; 3 G64010234 60 80 G64010235 50 45 G64010236 90 76 DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Latihan #1 :: Bilangan Kompleks Bilangan kompleks (complex numbers) dalam matematika terdiri dari dua nilai yang direpresentasikan sebagai: a+b-1 dimana a dan b adalah bilangan riil Buat program untuk membaca dua bilangan kompleks dan menampilkan hasil kali keduanya. Gunakan tipe data struct Contoh data masukan: 12.5 2.3 10.6 1.9 DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR

Latihan 2 :: Data waktu (time) Buat fungsi untuk menentukan selisih (dalam satuan menit) antara dua waktu time1 dan time2. Masing-masing waktu terdiri atas tiga komponen nilai, yaitu hour (jam), minute (menit), dan second (detik). Contoh penggunaan fungsi: main() { TIME time1={10,30,0.0}; TIME time2={11,31,30.0}; float beda; beda=selisih(time1, time2); printf(".2f\n", beda); // output: 61.50 return 0; } DEPARTEMEN ILMU KOMPUTER INSTITUT PERTANIAN BOGOR