Tugas Pendahuluan X Mirza Aryanshah 4062110012 Teknikinformatika
Tugas Pendahuluan X Mirza Aryanshah 4062110012 Teknikinformatika
5. Diketahui sebuah tiket untuk alat transportasi yang dipakai untuk mudik dengan harga
tetap kemanapun sebagai berikut :
Kode Jenis_transportasi Harga
1 Bus 50.000
2 Kereta Api 100.000
3 Ferry 75.000
4 Pesawat 200.000
Jika calon penumpang membeli tiket lebih dari 3, maka berhak mendapat diskon
sebesar 10% dari total pembelian. Buatlah program dengan bahasa C untuk
memasukkan data rekap penjualan tiket dengan struktur: nama_pemesan,
jenis_transportasi, total penjualan menggunakan array berdasarkan inputan :
nama_pemesan, kode_transportasi, dan jumlah_tiket. Kemudian tampilkan
keseluruhan hasil struktur rekap penjualan !
keseluruhan hasil struktur rekap penjualan !
Total : 640000
Bahasa Algoritmik Bahasa C
Judul : RekapPenjualaTiket #include <stdio.h>
Kamus Data : #include <stdlib.h>
type DataRekap : record < #include <iostream>
nama_pemesan: Character #include <string>
Jumlahtiket : Integer using namespace std;
jenis_transportasi : Character typedef struct{
Harga : Integer char nama_pemesan[100];
total_penjualan : Integer > int jumlahtiket;
DR : array[0..10] of DataRekap int kode;
i, j, diskon, total: integer string jenis_transportasi;
tambah : Character int Harga;
Algoritma : int total_penjualan;
FOR i = 0 TO 10 DO }DataRekap;
OUTPUT('Nama Pemesan : ') DataRekap DR[10];
INPUT(DR[i].nama_pemesan) int i, j, diskon, total;
OUTPUT('Kode Transportasi : ') char tambah;
INPUT(DR[i].kode) main()
CASE (DR[i].kode) {
1 : for(i=0;i<=10;i++)
DR[i].jenis_transportasi ← 'Bus' {
DR[i].Harga ← 50000 printf("Nama Pemesan : ");
2 : scanf("%s", &DR[i].nama_pemesan);
DR[i].jenis_transportasi ← 'Kereta printf("Kode Transportasi : ");
Api' scanf("%d", &DR[i].kode);
DR[i].Harga ← 100000 switch(DR[i].kode)
3 : {
DR[i].jenis_transportasi ← 'Ferry' case 1 : {
DR[i].Harga ← 75000 DR[i].jenis_transportasi= "Bus";
4 : DR[i].Harga = 50000;
DR[i].jenis_transportasi ← break;
'Pesawat' }
DR[i].Harga ← 200000 case 2 : {
ENDCASE DR[i].jenis_transportasi= "Kereta
OUTPUT('Jumlah Tiket : ') Api";
INPUT(DR[i].jumlahtiket) DR[i].Harga = 100000;
IF(DR[i].jumlahtiket ≥ 3)THEN break;
diskon ← DR[i].Harga* }
DR[i].jumlahtiket*10/100 case 3 : {
DR[i].total_penjualan ← DR[i].jenis_transportasi= "Ferry";
DR[i].Harga*DR[i].jumlahtiket- DR[i].Harga = 75000;
diskon break; }
ELSE case 4 : {
DR[i].total_penjualan = DR[i].jenis_transportasi="Pesawat"
DR[i].Harga*DR[i].jumlahtiket ; DR[i].Harga = 200000;
ENDIF break;
OUTPUT('Data Berhasil Input ! }
Tambah lagi ?') }
INPUT(tambah) printf("Jumlah Tiket : ");
IF(tambah = 'N')THEN scanf("%d",
j ← i &DR[i].jumlahtiket);
i ← 10 if(DR[i].jumlahtiket >= 3)
ENDIF {
ENDFOR diskon = DR[i].Harga *
i ← 0 DR[i].jumlahtiket * 10/100;
OUTPUT('Rekap Penjualan Tiket :') DR[i].total_penjualan =
WHILE(i ≤ j) DR[i].Harga*DR[i].jumlahtiket -
OUTPUT(DR[i].kode) diskon;
OUTPUT('Nama Pemesan : ', }else{
DR[i].nama_pemesan) DR[i].total_penjualan =
OUTPUT('Jenis Transportasi : DR[i].Harga*DR[i].jumlahtiket;
',DR[i].jenis_transportasi) }
OUTPUT('Total Penjualan : ', fflush(stdin);
DR[i].total_penjualan) printf("Data Berhasil Input !
total = Tambah lagi ?");
total+DR[i].total_penjualan scanf("%c", &tambah);
i ← i + 1 if(tambah == 'N')
ENDWHILE {
OUTPUT(total) j = i; i = 10;
}
}
i = 0;
system("CLS");
printf("Rekap Penjualan Tiket
:\n");
while(i <= j)
{
printf("%d.\n", DR[i].kode);
printf("Nama Pemesan : %s\n",
DR[i].nama_pemesan);
cout << "Jenis Transportasi :
"+DR[i].jenis_transportasi <<
endl; printf("Total Penjualan :
%d\n", DR[i].total_penjualan);
total =
total+DR[i].total_penjualan;
i++;
}
printf("----------------------------------\n");
printf("Total : %d\n", total);
}
6. Buatlah algoritma untuk mengecek apakah sebuah kata yang diinputkan user
termasuk polindrom atau tidak. Polindrom adalah kata yang jika dibalik urutan
hurufnya, hasil bacanya tetap sama, contoh : katak, kasur rusak, dsb.
Contoh :
INPUT : Masukkan kata : katak
OUTPUT : Polindrom
INPUT: Masukkan kata : bisa
OUTPUT : Bukan Polindrom
Judul : PolindromKata #include <iostream>
Kamus Data : #include <mem.h>
kata : array[0..20] of char using namespace std;
i , pjg : Integer char kata[20];
kondisi : Boolean int i, pjg;
bool kondisi;
main(){
kondisi = false;
cout << "Masukkan kata : ";
Algoritma : cin >> kata;
kondisi ← false pjg = strlen(kata);
INPUT(kata) for(i=0;i < pjg;i++){
pjg ← strlen(kata) if(kata[i] != kata[pjg-i-1]){
FOR i = 0 TO pjg DO kondisi = true;
IF (kata[i] ≠ kata[pjg -i-1]) THEN i = pjg;
kondisi ← true }
i ← pjg }
ENDIF
if(kondisi){
ENDFOR
IF(kondisi)THEN cout << "Bukan Polindrom" << endl;
OUTPUT('Bukan Polindrom') } else {
ELSE cout << "Polindrom" << endl;
OUTPUT('Polindrom') }
ENDIF }