Struct di pergunakan untuk memasukkan isi dari data yang di butuhkan dalam
program seperti nama, nomer, jam, menit, detik dan hasil. Dan untuk
mengurutkan pelarinya kita menggunakan metode sorting yang pergunakan untuk
membandingkan data yang sudah terdapat dalam penyimpanan. Selanjutnya yang pertama kali
dilakukan adalah menentukan inputan seperti nama, nomor pelari, dan waktu
pelari (jam, menit, detik). Dalam menghitung jumlah waktu yang diperoleh oleh
pelari maka kita harus mengkalkulasikan perhitungan tersebut kedalam
detik.
Berikut proses codingnya :
#include
<stdio.h>
#include
<stdlib.h>
//Membuat
struct untuk data pelari dengan nomor, nama, jam, menit, detik, dan hasil
struct
pelari
{
char nama[40]; //nama maksimal menggunakan 40 karakter
int nomor;
int jam;
int menit;
int detik;
int hasil;
}
datapelari[3],swap;
//[3]
untuk menentukan jumlah peserta pelari, swap digunakan untuk melakukan sorting
dan juga bisa diganti dengan variable yang lain
int
main()
{
int i,total;
//i digunakan untuk looping, total digunakan untuk menampilkan
hasil
int p,r;
//p,r untuk menentukan variabel proses sorting
for(i=0;i<3;i++)
{
printf("\nNomor Pelari = ");
scanf("%d",&datapelari[i].nomor);
printf("Nama Pelari = ");
scanf("%s",&datapelari[i].nama);
printf("Jam Lari = ");
scanf("%d",&datapelari[i].jam);
printf("Menit Lari = ");
scanf("%d",&datapelari[i].menit);
printf("Detik Lari = ");
scanf("%d",&datapelari[i].detik);
//Rumus konversi hasil waktu pelari
datapelari[i].hasil=datapelari[i].jam*3600+datapelari[i].menit*60+datapelari[i].detik;
}
//Proses
sorting menggunakan metode bubble sort
for(p=0;p<2;p++)
{
for(r=0;r<2;r++)
{
if
(datapelari[r].hasil>datapelari[r+1].hasil)
{
swap=datapelari[r];
//mengisi swap dengan isi dari
data pelari sekarang
datapelari[r]=datapelari[r+1];
//mengisi pes sekarang dengan
data pelari selanjutnya
datapelari[r+1]=swap;
//mengisi data pelari
selanjutnya dengan swap
}
}
}
//Untuk
Menampilkan Hasil
for(total=0;total<3;total++)
{
printf("Nomor Pelari : %d\nNama : %s\n Jam :%d\n Menit : %d\n Detik : %d\n Hasil:%d\n\n\n", datapelari[total].nomor, datapelari[total].nama, datapelari[total].jam, datapelari[total].menit, datapelari[total].detik,datapelari[total].hasil);
printf("Nomor Pelari : %d\nNama : %s\n Jam :%d\n Menit : %d\n Detik : %d\n Hasil:%d\n\n\n", datapelari[total].nomor, datapelari[total].nama, datapelari[total].jam, datapelari[total].menit, datapelari[total].detik,datapelari[total].hasil);
}
return 0;
}
Contoh data pelari :
Nomor Pelari = 1
Nama Pelari = CUNCUN
Jam Lari = 4
Menit Lari = 18
Detik Lari = 48
Nomor Pelari = 2
Nama Pelari = NARUTO
Jam Lari = 3
Menit Lari = 34
Detik Lari = 22
Nomor Pelari = 3
Nama Pelari = HINATA
Jam Lari = 5
Menit Lari = 24
Detik Lari = 55
Hasil pengurutannya ;
Tidak ada komentar:
Posting Komentar