13
Nisa’ul Hafidhoh [email protected] Tipe Bentukan

Tipe Data & Variabel - dinus.ac.iddinus.ac.id/repository/docs/ajar/SA_Tipe_Bentukan_Tugas.pdfDefinisi Tipe Bentukan •Menggunakan kata kunci type •Keyword type digunakan untuk mendefinisikan

  • Upload
    phamthu

  • View
    231

  • Download
    0

Embed Size (px)

Citation preview

Nisa’ul Hafidhoh

[email protected]

Tipe Bentukan

Tipe Bentukan

• Tipe data yang didefinisikan sendiri sesuaikebutuhan program

• Disusun oleh satu atau lebih tipe data dasar

• Disebut juga User Defined Type atau Abstract Data Type atau struktur

Cara Menggunakan

1. Definisi

2. Deklarasi/Inisialisasi instan

3. Mengakses Anggota dari instan

Definisi Tipe Bentukan

• Menggunakan kata kunci type

• Keyword type digunakan untuk mendefinisikankoleksi variable dari bermacam type

• Dalam penulisan program, diikuti oleh “<>” denganvariable individual didalamnya (member)

• Program

type titik<

x: int,

y: int

>

struct titik{

int x,y;

};

Deklarasi

• Deklarasi sebuah variabel dengan tipebentukan

• Contoh

• Point adalah sebuah variabel bertipe titik

• Memory belum dialokasikan untuk tipebentukan, sampai deklarasi variable

• Program

Point: titik

struct titik Point;

Pengaksesan

• Akses pada member menggunakan nama variabel diikutioleh operator dot ( . ) dan nama member

Contoh : Program:

Type titik <

x:int,

y:int

>;

Point: titik;

Point.x=10;

Point.y=20;

Input Point.x;

Output Point.y;

struct titik <

x:int,

y:int

>;

struct titik Point;

Point.x=10;

Point.y=20;

scanf(“%d”,&Point.x);

printf(“%d”,Point.y);

Latihan Definisi

• Buatlah tipe bentukan untuk jam (J,M,D)

Type jam <

J:int,

M:int,

D:int

>;

Waktu: jam;

input waktu.J;

input waktu.M;

input waktu.D;

output waktu.J;

output waktu.M;

output waktu.D;

waktu.J=10;

waktu.M=20;

waktu.D=45;

Typedef

• Typedef adalah suatu keyword yang digunakan

untuk mendeklarasikan tipe data dengan nama lain atau nama alias.

• Typedef menjadi alternative dalam deklarasivariable tanpa harus menyertakan struct tiapdeklarasi, atau mempermudah mengingat.

struct titik{

x,y : int

};

struct titik Point;

struct titik ttk;

struct titik{

x,y : int

};

typedef struct titik tik;

tik Point;

tik ttk;

Typedef char kata;

Tugas

Buatlah algoritma untuk program permainan tebak angkaajaib. Angka ajaib bisa menggunakan random ataudimasukkan saat awal permainan sebelum mulai tebakan. Permainan ini akan menanyakan pemain untuk memasukansuatu bilangan integer positif antara 1 hingga 50. Pemainhanya diberi kesempatan menebak 5 kali, dan jika gagalmaka program akan menanyakan pemain untuk melanjutkan permainan atau berhenti. Jika berhentimaka program selesai, jika tidak maka permainan di ulang dari awal, artinya akan di buat angka ajaibbaru lagi. Setiap kali pemain menebak, maka program akan memberi petunjuk kepada pemain mengenai nilaiyang di tebaknya.

Petunjuk Tebakan

a) Jika angka yang di tebak lebih besar dari angka ajaib maka tampil pesan“Angka Anda Lebih Besar”, dan pemain di minta memasukan angka tebakan lagi

b) Jika angka yang di tebak lebih kecil dari angka ajaib maka tampil pesan “AngkaAnda Lebih Kecil” dan pemain di minta memasukan angka tebakan lagi

c) Jika pemain berhasil menebak dengan tepat, maka akan muncul pesan “Huebatangka 34 berhasil anda tebak dalam x kali saja”, dimana x adalah jumlahtebakan yang di lakukan oleh pemain, dan program bertanya “Apakah andaakan bermain lagi[y/t]?”, jika pemain menjawab 'y' maka permainan akan diulang, dan program membuat angka ajaib baru, lalu proses kembali ke point a).Jika jawabannya 't', maka prorgam berhenti dan menampilkan pesan “Selamattinggal !!!!”.

d) Jika Pemain mengulangan tebakan sebanyak 5 kali maka programakan menampilkan pesan “Anda tidak berhasil menebak, angka ajaib=34” dan program bertanya “Apakah anda akan bermain lagi[y/t]?”,jika pemain menjawab 'y' maka permainan akan di ulang, danprogram membuat angka ajaib baru, lalu proses kembali ke-a. Jikajawabannya 't', maka prorgam berhenti dan menampilkan pesan“Selamat tinggal”.

Contoh

Permainan Tebak Angka antara 1 -50Tebakan ke-1,Masukan Angka Tebakan Anda [1 - 50] ? 35Angka Anda Lebih BesarTebakan ke-2,Masukan Angka Tebakan Anda [1 - 50] ? 30Angka Anda Lebih KecilTebakan ke-3,Masukan Angka Tebakan Anda [1 - 50] ? 33Angka Anda Lebih KecilTebakan ke-4,Masukan Angka Tebakan Anda [1 - 50] ? 34Huebat angka 34 berhasil anda tebak dalam 4 kali tebakanApakah Anda akan bermain lagi[y/t]: tSelamat Tinggal

Deliverable

• Tugas dikumpulkan dalam bentuk laporanberisi:

– Kode program tugas

– Screenshot tampilan program minimal:

• Tampilan awal

• Tebakan salah

• Tebakan benar

• Mengulang permainan dari awal

• Permainan berakhir

• Paling lambat Jumat, 31 Agustus 2018

TERIMA KASIH