Membuat program untuk menampilkan data secara berurutan, jika terdapat kasus seperti berikut :
Input :
No.
|
Nama
|
Jam
|
Menit
|
Detik
|
1.
|
Intan
|
2
|
32
|
1
|
2.
|
Fitri
|
2
|
30
|
26
|
3.
|
Ani
|
2
|
19
|
56
|
Output yang dihasilkan :
No.
|
Nama
|
Jam
|
Menit
|
Detik
|
Total
|
1.
|
Ani
|
2
|
19
|
56
|
8396
|
2.
|
Fitri
|
2
|
30
|
26
|
9026
|
3.
|
Intan
|
2
|
32
|
1
|
9121
|
Catatan : Output yang dihasilkan berurutan dari inputan paling lambat dan paling cepat.
Maka dapat dibuat Source Code seperti berikut :
#include <stdio.h>
#include <stdlib.h>
struct input
{
int no;
char nama[20];
int jam;
int menit;
int detik;
int total;
}data[20], cepat, lambat;
int main()
{
int a, i, j, k;
printf("masukkan jumlah pelari: ");
scanf("%d", &a);
for(i=0; i<a; i++)
{
printf("pelari nomor : ");
scanf("%d", &data[i].no);
printf("masukkan nama : ");
scanf("%s", &data[i].nama);
printf("masukkan jam : ");
scanf("%d", &data[i].jam);
printf("masukkan menit : ");
scanf("%d", &data[i].menit);
printf("masukkan detik : ");
scanf("%d", &data[i].detik);
}
printf("\nwaktu yang ditempuh pelari : \n");
for(i=0; i<a; i++)
{
data[i].total = (data[i].jam*3600)+(data[i].menit*60)+(data[i].detik);
}
for(i=0; i<a; i++)
{
printf("No : %d\n", data[i].no);
printf("Nama : %s\n", data[i].nama);
printf("Jam : %d\n", data[i].jam);
printf("Menit : %d\n", data[i].menit);
printf("Detik : %d\n", data[i].detik);
printf("Total : %d\n", data[i].total);
}
for(j=0; j<a-1; j++)
{
for(k=0; k<a-1; k++)
{
if(data[k].total>data[k+1].total)
{
cepat=data[k];
data[k]=data[k+1];
data[k+1]=cepat;
}
}
}
printf("waktu yang ditempuh pelari paling cepat : \n");
for(i=0; i<a; i++)
{
printf("No : %d\n", data[i].no);
printf("Nama : %s\n", data[i].nama);
printf("Jam : %d\n", data[i].jam);
printf("Menit : %d\n", data[i].menit);
printf("Detik : %d\n", data[i].detik);
printf("totl : %d\n", data[i].total);
printf("\n");
}
for(j=0; j<a-1; j++)
{
for(k=0; k<a-1; k++)
{
if (data[k].total<data[k+1].total)
{
lambat=data[k];
data[k]=data[k+1];
data[k+1]=lambat;
}
}
}
printf("waktu yang ditempuh pelari paling lambat : \n");
for(i=0; i<a; i++)
{
printf("No : %d\n", data[i].no);
printf("Nama : %s\n", data[i].nama);
printf("Jam : %d\n", data[i].jam);
printf("Menit : %d\n", data[i].menit);
printf("Detik : %d\n", data[i].detik);
printf("\n");
}
getch();
return 0;
}
Program tersebut setelah di Running maka akan menampilkan seperti berikut :
Semoga bermanfaat :)
Tidak ada komentar:
Posting Komentar