Senin, 16 April 2018

Membuat BIodata dengan Struct dan Typedef


Disini saya akan membuat program struct seperti perintah dibawah :

Buat Type Data Baru dari struct dengan 

nama MAHASISWA & anggota :
1. BIODATA : Manusia
2. NPM : string
3. AYAH : Manusia
Tipe Data Manusia :
  1. NAMA : string
  2. TANGGAL_LAHIR : TanggalLahir
  3. USIA : integer
TIPE DATA TanggalLahir :
  1. Tanggal, Bulan, Tahun : integer

#include <stdio.h>

typedef struct {
        int tanggal,bulan,tahun;
}tanggal;

typedef struct {
    char nama[10];
    int usia;
    tanggal tanggal_lahir;
}Manusia;

typedef struct
{
   char npm[10];
   Manusia biodata;
   Manusia ayah;

}mahasiswadananggota;

int main()
{
mahasiswadananggota mda;
printf("Biodata Mahasiswa");
printf("\nmasukan NPM : "); scanf("%s",mda.npm);
printf("nama mahasiswa : "); scanf("%s",mda.biodata.nama);
getchar();
printf("\nMasukan tanggal lahir mahasiswa");
    printf("\ntanggal Lahir : "); scanf("%d",&mda.biodata.tanggal_lahir.tanggal);
    getchar();
    printf("bulan Lahir : "); scanf("%d",&mda.biodata.tanggal_lahir.bulan);
    getchar();
    printf("tahun Lahir : "); scanf("%d",&mda.biodata.tanggal_lahir.tahun);
    getchar();
    printf("usia anda sekarang : "); scanf("%d",&mda.biodata.usia);
    getchar();
    printf("\nNpm Anda : %s\nDengan Nama : %s \nlahir pada : %04d-%02d-%02d \nYang Berusia : %d \n ",
           mda.npm,mda.biodata.nama,mda.biodata.tanggal_lahir,mda.biodata.usia
           );

printf("\nMasukan data ayah");
printf("\nnama ayah : "); scanf("%s",mda.ayah.nama);
printf("\nTanggal lahir ayah");
printf("\ntanggal Lahir : "); scanf("%d",&mda.ayah.tanggal_lahir.tanggal);
getchar();
printf("bulan Lahir : "); scanf("%d",&mda.ayah.tanggal_lahir.bulan);
getchar();
printf("tahun Lahir : "); scanf("%d",&mda.ayah.tanggal_lahir.tahun);
getchar();
printf("usia ayah sekarang = "); scanf("%d",&mda.ayah.usia);
getchar();
    printf("\nNama Ayah : %s \nLahir Pada : %04d-%02d-%02d \nYang Berusia : %d\n",
           mda.ayah.nama,mda.ayah.tanggal_lahir,mda.ayah.usia
           );
    getchar();
    getchar();
    return 0;
}
Output :

Minggu, 15 April 2018

Penggunaan Struct dan Typedef Pada C++


STRUCT

Definisi Struktur (struct) sendiri adalah kumpulan dari variabel yang dinyatakan dengan sebuah nama , dengan sifat setiap variabel dapat memiliki tipe yang berlainan. Dalam pemrograman C++, jika kita membuat suatu program yang memerlukan berbagai tipe data yang akan digunakan.

disini saya membuat contoh struct :

Source code

#include <stdio.h>

struct Mahasiswa{
      char npm[10];
   char nama[32];
      struct tanggallahir {
   int tanggal, bulan, tahun;
   }tanggal_lahir;

};

int main()
{
struct Mahasiswa m;
   printf("NPM ="); scanf("%[^\n]", m.npm);
   getchar();
   printf("Nama  ="); scanf("%[^\n]", m.nama);
   getchar();
   printf("Tanggal Lahir =");
   scanf("%d", &m.tanggal_lahir.tanggal);
   getchar();
   printf("Bulan Lahir ="); scanf("%d", &m.tanggal_lahir.bulan);
   getchar();
   printf("Tahun Lahir ="); scanf("%d", &m.tanggal_lahir.tahun);
   getchar();
   printf("NPM = %s Nama = %s Tanggal Lahir = %04d-%02d-%02d",
      m.npm, m.nama,
      m.tanggal_lahir.tahun, m.tanggal_lahir.bulan, m.tanggal_lahir.tanggal
);
   getchar();
   getchar();
   return 0;

}
Output :
Analisis :
Karena struct kumpulan tipe data berbeda  menjadi data tunggal. Struct mahasiswa dinamakan m, sehingga untuk menampilkan data dituli misalnya m.nama untuk menampilkan nama dan seterusnya.

TYPEDEF

Typedef adalah keyword (kata kunci) yang digunakan untuk membuat nama alias untuk tipe data lain. 
Typedef sering digunakan untuk menyederhanakan sintaks yang menyatakan struktur data yang kompleks yang terdiri dari tipe struct dan union.

Contohnya sebagai berikut :

Source code

#include <stdio.h>

typedef struct{
      int hour;
   int minute;
   int second;
   } JAM;

int main(){
      JAM j;
   printf("Masukan jam ="); scanf("%d", &j.hour );
   printf("Masukan menit ="); scanf("%d", &j.minute);
   printf("Masukan detik ="); scanf("%d", &j.second);
   printf("Sekarang JAM %02d:%02d:%02d\n",
            j.hour, j.minute, j.second
         );
getchar(); getchar();
return 0;
}
Output :
Analisis :
Penggunaan typedef  tidak beda jauh dengan struck hanya yang membedakan struktur penulisannya dan pada typedef setelah int main tidak ditulis strucknya lagi. Untuk lebih jelasnya bisa di lihat seperti contoh diatas.