You are on page 1of 12

int jumlahStart =

(3600*pesertaLomba[i].start.jam) +
(60*pesertaLomba[i].start.menit) +
pesertaLomba[i].start.detik;
int jumlahFinish =
(3600*pesertaLomba[i].finish.jam) +
(60*pesertaLomba[i].finish.menit) +
pesertaLomba[i].finish.detik;
jumlahFinish -= jumlahStart;
pesertaLomba[i].catatanWaktu.jam
= jumlahFinish/3600;
pesertaLomba[i].catatanWaktu.menit
=
jumlahFinish%3600/60;
pesertaLomba[i].catatanWaktu.detik
=
jumlahFinish%3600%60;
}
printf("\
n==========================
=========================");
printf("\nHasil Perlombaan
Marathon");
printf("\
n==========================
=========================");
for(j = 0; j < n; j++){
char *nama =
pesertaLomba[j].peserta.nama;
char *nomor =
pesertaLomba[j].peserta.nomorPeserta
;
int jamStart =
pesertaLomba[j].start.jam;
int menitStart =
pesertaLomba[j].start.menit;
int detikStart =
pesertaLomba[j].start.detik;
int jamFinish =
pesertaLomba[j].finish.jam;
int menitFinish =
pesertaLomba[j].finish.menit;
int detikFinish =
pesertaLomba[j].finish.detik;
int jam =
pesertaLomba[j].catatanWaktu.jam;
int menit =
pesertaLomba[j].catatanWaktu.menit;
int detik =
pesertaLomba[j].catatanWaktu.detik;
printf("\nPeserta ke-%d", j+1);
printf("\nNama Peserta => %s ",
nama);
printf("\nNomor Peserta => %s ",
nomor);
printf("\nWaktu Start => %d:%d:
%d", jamStart, menitStart,
detikStart);
printf("\nWaktu Finish => %d:%d:
%d", jamFinish, menitFinish,
detikFinish);
printf("\nCatatan Waktu => Peserta
menyelesaikan
marathon dalam waktu %d Jam,
%d Menit, %d Detik ", jam, menit,
detik);printf("\n");
}
return 0; }
int jumlahStart =
(3600*pesertaLomba[i].start.jam) +
(60*pesertaLomba[i].start.menit) +
pesertaLomba[i].start.detik;
int jumlahFinish =
(3600*pesertaLomba[i].finish.jam) +
(60*pesertaLomba[i].finish.menit) +
pesertaLomba[i].finish.detik;
jumlahFinish -= jumlahStart;
pesertaLomba[i].catatanWaktu.jam
= jumlahFinish/3600;
pesertaLomba[i].catatanWaktu.menit
=
jumlahFinish%3600/60;
pesertaLomba[i].catatanWaktu.detik
=
jumlahFinish%3600%60;
}
printf("\
n==========================
=========================");
printf("\nHasil Perlombaan
Marathon");
printf("\
n==========================
=========================");
for(j = 0; j < n; j++){
char *nama =
pesertaLomba[j].peserta.nama;
char *nomor =
pesertaLomba[j].peserta.nomorPeserta
;
int jamStart =
pesertaLomba[j].start.jam;
int menitStart =
pesertaLomba[j].start.menit;
int detikStart =
pesertaLomba[j].start.detik;
int jamFinish =
pesertaLomba[j].finish.jam;
int menitFinish =
pesertaLomba[j].finish.menit;
int detikFinish =
pesertaLomba[j].finish.detik;
int jam =
pesertaLomba[j].catatanWaktu.jam;
int menit =
pesertaLomba[j].catatanWaktu.menit;
int detik =
pesertaLomba[j].catatanWaktu.detik;
printf("\nPeserta ke-%d", j+1);
printf("\nNama Peserta => %s ",
nama);
printf("\nNomor Peserta => %s ",
nomor);
printf("\nWaktu Start => %d:%d:
%d", jamStart, menitStart,
detikStart);
printf("\nWaktu Finish => %d:%d:
%d", jamFinish, menitFinish,
detikFinish);
printf("\nCatatan Waktu => Peserta
menyelesaikan
marathon dalam waktu %d Jam,
%d Menit, %d Detik ", jam, menit,
detik);printf("\n");
}
return 0; }
TUGAS 8 ALGORITMA PEMOGRAMAN
NAMA : Raden Galuh Garhadi Cakranata
PRODI : Informatika
NIM : 22343067
DOSEN : Drs. Denny Kurniadi, M.T

1. Mengelola Hasil Pertandingan Maratahon


 Analisis Kebutuhan
- Tampilan Output
=========================
Hasil Perlombaan Marathon
=========================
Peserta ke – N
Nama Peserta => ???
Nomor Peserta => ???
Waktu Start => ??:??:??
- Tampilan Input
Masukkan Nama Peserta Ke – N : ???
Masukkan Nomor Peserta Ke – N : ???
Masukkan Waktu Start Peserta Ke – N : ?? : ?? : ??
 Kebutuhan Variable
Struct : PESERTA, WAKTU, LOMBA
Char : nama, noPeserta
Var : I, j, n
 Algoritma Mengelola Perlombaan Marathon
Deskripsi
Write (‘ Masukkan Jumlah Peserta ‘ )
Read (‘ jumlah peserta ‘ )
Write ( ‘ Masukkan Nama Peserta ‘ )
Read ( ‘ nama ‘ )
Write ( ‘ Masukkan Nomor Peserta ‘ )
Read ( ‘ noPeserta ‘ )
Write ( ‘ Masukkan Jam,Menit,Detik Start ‘ )
Read ( ‘ jam,menit,detik ‘ )
Read ( ‘ Catatan Waktu Menyelesaikan Marathon Dalam Jam Menit Detik ‘ )

 Source Codenya
1. #include<stdio.h>
2. #include<string.h>
3.
4. typedef struct peserta{
5. char nama[50];
6. char noPeserta[3];
7. }PESERTA;
8. typedef struct waktu{
9. int jam;
10. int menit;
11. int detik;
12. }WAKTU;
13. typedef struct lomba{
14. PESERTA peserta;
15. WAKTU start;
16. WAKTU finish;
17. WAKTU catatanWaktu;
18. }LOMBA;
19.
20. main(void)
21. {
22. int n, i, j;
23. printf("Nama : Raden Galuh Garhadi Cakranata\n");
24. printf("Nim : 22343067\n\n");
25.
26. printf("Masukkan Jumlah Peserta Lomba Marathon : ");
27. scanf("%d",&n);
28. LOMBA pesertaLomba[n];
29.
30. for (i=0; i<n; i++){
31. printf("\n Masukkan Nama Peserta Lomba Ke - %d : ", i+1);
fflush (stdin);
32. gets(pesertaLomba[i].peserta.nama);
33. printf("Masukkan Nomor Peserta Lomba Ke - %d :", i+1);
fflush (stdin);
34. gets(pesertaLomba[i].peserta.noPeserta);
35.
36. printf("Masukkan Waktu Start Peserta Lomba Ke - %d
(jj:mm:dd) :", i+1); fflush (stdin);
37. scanf("%d:%d:%d", &pesertaLomba[i].start.jam,
&pesertaLomba[i].start.menit, &pesertaLomba[i].start.detik);
38. printf("Masukkan Waktu Finish Peserta Lomba Ke - %d
(jj:mm:dd) :", i+1); fflush (stdin);
39. scanf("%d:%d:%d", &pesertaLomba[i].finish.jam,
&pesertaLomba[i].finish.menit, &pesertaLomba[i].finish.detik);
40.
41. int jumlahStart = (3600*pesertaLomba[i].start.jam) +
(60*pesertaLomba[i].start.menit) + pesertaLomba[i].start.detik;
42. int jumlahFinish = (3600*pesertaLomba[i].finish.jam) +
(60*pesertaLomba[i].finish.menit) + pesertaLomba[i].finish.detik;
43.
44. jumlahFinish -= jumlahStart;
45. pesertaLomba[i].catatanWaktu.jam = jumlahFinish/3600;
46. pesertaLomba[i].catatanWaktu.menit = jumlahFinish%3600/60;
47. pesertaLomba[i].catatanWaktu.detik = jumlahFinish%3600%60;
48. }
49. printf("\
n===================================================");
50. printf("\nHasil Perlombaan Marathon");
51. printf("\
n===================================================");
52. for (j=0;j<n;j++){
53. char *nama = pesertaLomba[j].peserta.nama;
54. char *nomor = pesertaLomba[j].peserta.noPeserta;
55. int jamStart = pesertaLomba[j].start.jam;
56. int menitStart = pesertaLomba [j].start.menit;
57. int detikSTart = pesertaLomba[j].start.detik;
58. int jamFinish = pesertaLomba[j].finish.jam;
59. int menitFinish = pesertaLomba[j].finish.menit;
60. int detikFinish = pesertaLomba[j].finish.detik;
61. int jam = pesertaLomba[j].catatanWaktu.jam;
62. int menit = pesertaLomba[j].catatanWaktu.menit;
63. int detik = pesertaLomba[j].catatanWaktu.detik;
64.
65. printf("\nPeserta Lomba Ke - %d", j+1);
66. printf("\nNama Peserta => %s", nama);
67. printf("\nNomor Peserta => %s", nomor);
68.
69. printf("\nWaktu Start => %d:%d:%d");
70. printf("\nWaktu Finish => %d:%d:%d");
71.
72. printf("\nCatatan Waktu => Peserta Menyelesaikan Marathon
Dalam Waktu %d Jam, %d Menit, %d Detik", jam, menit, detik);
73. printf("\n");
74. }
75. return 0;}

 Bukti Program Berjala

You might also like