Selasa, 08 September 2015

PBO ( Pemrograman Berorientasi Objek )
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