-->

Program Memasukan Nama dan Tanggal Lahir - Array Struktur C/C++


Studi Kasus Praktikum 6.2 (Struktur Data - Modul 6)


#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <conio.h>
#define MAKS 20

main()
{
 struct data_tanggal
 {
  int tanggal;
  int bulan;
  int tahun;
 };
 
 struct data_rekan
 {
  char nama[21];
  struct data_tanggal tgl_lahir;
 };
 struct data_rekan info_rekan[MAKS];
 
 char tombol;
 int i, jumlah_rekan = 0;
 
 puts ("Data rekan-rekan : \n");
 
 do
 {
  printf ("Nama     : ");
  gets (info_rekan[jumlah_rekan].nama);
  printf ("Tanggal lahir (xx-xx-xxxx) : ");
  scanf ("%d-%d-%d", &info_rekan[jumlah_rekan].tgl_lahir.tanggal, &info_rekan[jumlah_rekan].tgl_lahir.bulan, &info_rekan[jumlah_rekan].tgl_lahir.tahun);
  fflush(stdin);
  jumlah_rekan++;
  
  printf ("\nMau masukan lagi (Y/T)? : ");
  tombol = toupper (getch());
  while (! (tombol == 'T' || tombol == 'Y'))
   tombol = toupper(getch());
  printf ("%c\n\n", tombol); 
 }
 
 while (tombol == 'Y');
 puts ("\nData rekan : Nama Tanggal Lahir\n");
 for (i = 0; i < jumlah_rekan; i++)
 printf ("%-21s %d-%d-%d\n", info_rekan[i].nama, info_rekan[i].tgl_lahir.tanggal, info_rekan[i].tgl_lahir.bulan, info_rekan[i].tgl_lahir.tahun);
}

Hasil running

Keterangan
Program ini memasukan data nama dan data tanggal lahir menggunakan array struktur dengan maksimal data yang dimasukan 20 data. Program ini menggunakan 2 struktur, yang pertama struktur tanggal untuk menyimpan data tanggal dengan tiga variabel tanggal, bulan dan tahun dengan tipe data integer. Sedangkan struktur yang kedua untuk menyimpan data nama dengan variabel array nama, dan didalamnya terdapat pemanggilan struktur data_tanggal dan tgl_lahir. Terdapat struct data_rekan info_rekan [MAKS] yang tujuannya untuk menyimpan data sampai 20.
Cara kerjanya akan dilakukan perulangan sebanyak nilai yang akan diinginkan sampai 20 dengan mengguakan DO - WHILE. Pertama akan melakukan memasukan data nama dengan pemanggilan 2 struktur yaitu info_rekan[jumlah_rekam].nama, yang dimana akan menyimpan data di info.rekan dan di dalam [jumlah_rekan] akan menghitung berapa banyak data yang dimasukan. Untuk fungsi fflush (stdin) tujuannya untuk menghapus (flush) isi dari input buffer. Biasanya ketika kita menginput sesuatu input buffer akan terisi, jika kita menginput lagi, maka kita tidak bisa karena input buffer sudah penuh dari input sebelumnya.  Salah satu cara menginputnya berupa scanf, gets, getch dan lain-lain. Dan fungsi jumlah_rekan++ untuk mengintruksikan incremen pada DO - WHILE. Untuk melakukan pemasukan data lagi maka dilakukan pemilihan YA atau TIDAK menggunakan logika. Jika YA maka akan melakukan perulangan kembali untuk memasukan data. Jika tidak maka akan menampilkan hasil didalam array menggunakan perulangan for dengan memanggil nama parameter masing-masing.

Berlangganan update artikel terbaru via email:

0 Response to "Program Memasukan Nama dan Tanggal Lahir - Array Struktur C/C++"

Post a Comment

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel