Anda di halaman 1dari 18

Nilai

PRAKTIKUM DASAR PEMROGRAMAN


Modul 6: Laporan Praktikum UTS
(3 November 2020)

Nama : Naufal Fadillah Dhafa


NIM : 162012233085

KELAS RK-A1
PROGRAM STUDI TEKNIK ROBOTIKA DAN KECERDASAN BUATAN
SEKOLAH TEKNOLOGI MAJU DAN MULTIDISIPLIN
UNIVERSITAS AIRLANGGA
2020
SOAL 1
SOAL

JAWABAN
Flowchart :

2
Program :
#include <stdio.h>
#define PHI 3.14

3
int main()
{
int waktu, sensorA, sensorB, d=3, p=7;
float volume;

volume = 0.25*PHI*d*d*p;

printf("Input Waktu Jam(0-24): ");


scanf("%d", &waktu);

if(waktu>=8 && waktu<=16)


{
puts("Input Kondisi kedua Sensor");

printf("Sensor B(1 = aktif & 0 = non aktif): ");


scanf("%d", &sensorB);

printf("Sensor A(1 = aktif & 0 = non aktif): ");


scanf("%d", &sensorA);

if(sensorB==1 && sensorA==1)


{
puts("\nTangki Penuh");
printf("\nVolume Air : %.2f m^3\n", volume);
puts("Motor Pompa OFF");
}
else if(sensorB==1 && sensorA==0)
{
puts("\nTangki Sedang Diisi");
printf("\nVolume Awal : %.2f m^3\n", volume*0.1);
puts("Volume Sedang Bertambah");
puts("Motor Pompa ON");
}
else
puts("Tangki Kosong");
}
else
{
puts("Motor Pompa sedang Tidak Dapat Digunakan");
}

return 0;
}
Hasil program :

4
ANALISA
Untuk Program nya langkah awalnya yaitu mendeklarasikan konstannta phi sebesar
3.14 dan mendefenisikan variabel waktu, sensorA, sensorB, d=3, p=7 sebagai integer
dan volume sebagai float. Kemudian memberi cetakan input waktu dengan format(0-24)
dan input bilangannya lalu memberi kondisi waktu berada diantara 8 dan 16 maka jika
sesuai akan lanjut ke langkah berikutnya, Jika tidak, maka akan mencetak (Motor
Pompa Sedang tidak dapat digunakan). Langkah berikutnya yaitu cetakan perintah
untuk menginput kondisi kedua sensor pada tangki, hal ini Saya lakukan karena saya
mengasumsikan pompa air sudah berjalan pada waktu yang ditentukan di soal(8-16),
jadi yang diperlukan adalah kondisi kedua sensor tersebut untuk menentukan apakah
Motor pompa hidup atau tidak hidup. Selanjutnya saya memberi kondisi apakah sensor
B(sensor bawah) hidup dan sensor A(sensor atas) hidup. Jika ya, maka akan mencetak
tangki penuh, volume airnya saat penuh dan motor pompa mati. Lalu memeberi kondisi
apakah sensor B(sensor bawah) hidup dan sensor A(sensor atas) mati. Jika ya, maka
akan mencetak tangki sedang diisi, besar awal volume air saat motor pompa hidup,
volume sedang bertambah, dan motor pompa hidup. Jika kedua kondisi tidak terpenuhi
maka akan mencetak tangki kosong. Logika saya disitu adalah sensor B sebagai
sensor pendeteksi air pada bagian bawah tangki dimana jika sensor ini hidup berarti air
terdeteksi oleh sensor B dan pompa air akan hidup untuk mengisi tangki air, untuk
sensor A adalah sensor pendeteksi air pada bagian atas tangki dimana jika air telah
mencapai bagian dalam atas tangki maka air akan terdeteksi oleh sensor A yang berarti
tangki penuh volumenya juga penuh dan motor pompa nya tidak hidup. Lalu jika kedua
sensor tersebut mati berarti ada kesalahan diluar dari hal-hal tersebut mungkin seperti
air dirumahnya sedang ada gangguan.

5
SOAL 2
SOAL

JAWABAN
Flowchart :

6
Program :
#include <stdio.h>

int main()
{
float m, v, x, biaya;

puts("Program Menentukan Harga Paket");

printf("Input Massa Paket(Kg): ");


scanf("%f", &m);

printf("Input Volume paket(cm^3): ");


scanf("%f", &v);

7
printf("Input Jarak Tempat Tinggal Dari Kampus C UNAIR(Km): ");
scanf("%f", &x);

m = (m/1)*10000;
v = (v/50)*10000;
x = (x/20)*5000;

if(m>v)
{
biaya = m + x;
printf("\n Total Biaya(Rp) : %2.f", biaya);
}
else
{
biaya = v + x;
printf("\n Total Biaya(Rp) : %2.f", biaya);
}

return 0;
}
Hasil Program :

ANALISA
Program diawali dengan mendefenisikan m, v, x, dan biaya sebagai integer lalu
memberi cetakan input massa paket, volume paket, dan jarak, lalu juga memeberi
inputannya(scanf). Lalu diberikan rumus untuk menentukan harga masing masing

komponen (m, v, x) dengan lalu memeberi kondisi apabila jika m


lebih besar dari v maka biaya total adalah jarak dijumlahkan dengan m, jika tidak maka,
biaya total adalah jarak dijumlahkan dengan volume. Hal ini merupakan kondisi dari
soal dimana biaya total adalah harga terbesar antara volume dengan massa
dijumlahkan dengan jarak.

8
SOAL 3
SOAL

JAWABAN
Flowchart :

9
Program :
#include <stdio.h>

int main()
{
int izin, test, kota;
float suhu;

printf("Suhu Badan : ");


scanf("%f", &suhu);

printf("Izin(sudah=1 & belum=0): ");


scanf("%d", &izin);

10
printf("Asal Kota(dari surabaya=1 & luar surabaya=0): ");
scanf("%d", &kota);

if(kota==0)
{
printf("Hasil swabtest(negatif=1 & positif=0): ");
scanf("%d", &test);
}

if(suhu<=37 && izin==1 && kota==1)


{
puts("Mengikuti Luring");
}

else if(suhu<=37 && izin==1 && kota==0 && test==1)


{
puts("Mengikuti Luring");

}
else
{
puts("Mengikuti Daring");
}

return 0;
}
Hasil Program :

ANALISA
Program diawali dengan mendefenisikan variabel izin, test, dan kota sebagai integer
lalu suhu sebagai float. Kemudian memeberi cetakan input suhu badan, izin dengan
ketentuan Izin(sudah=1 & belum=0), asal kota dengan ketentuan Asal Kota(dari
surabaya=1 & luar surabaya=0). Lalu memberi kondisi jika berasal dari diluar kota
11
surabaya maka akan mencetak inputan swabtest dengan ketentuan Hasil
swabtest(negatif=1 & positif=0) beserta inputannya. Selanjutnya memberi kondisi
apakah suhu dibawah samadengan 37 derajat, sudah izin, dan asal kota surabaya jika
ya, maka akan memberikan perintah cetakan mengikuti luring. Kemudian memeberikan
kondisi apakah suhu dibawah samadengan 37 derajat, sudah izin, asal kota luar
surabaya, hasil swabtest negatif. Jika ya maka akan memberikan perintah cetakan
mengikuti luring. Jika kondisi-kondisi tersebut tidak terpenuhi maka akan mencetak
mengikuti daring.

SOAL 4
SOAL

JAWABAN
Flowchart :

12
Program :
#include <stdio.h>

int main()
{
int kiri, kanan;

while(1)
{
printf("Yang Terbaca oleh sensor Kiri(hitam=1 & putih=0): ");
scanf("%d", &kiri);

printf("Yang Terbaca oleh sensor Kanan(hitam=1 & putih=0): ");

13
scanf("%d", &kanan);

if(kiri==1 && kanan==1)


{
puts("Robot Bergerak Maju");
}
else if(kiri==1 && kanan==0)
{
puts("Robot Bergerak Kekiri");
}
else if(kiri==0 && kanan==1)
{
puts("Robot Bergerak Kekanan");
}
else if(kiri==0 && kanan==0)
{
puts("Robot Berhenti");
}
}

return 0;
}

Hasil Program:

ANALISA
Program diawali dengan mendefenisikan variabel kiri dan kanan sebagai integer.
Kemudian memberikan cetakan bacaan sensor kiri dan kanan beserta inputannya
dengan ketentuan Yang Terbaca oleh sensor Kiri(hitam=1 & putih=0) dan Yang
Terbaca oleh sensor Kanan(hitam=1 & putih=0). Lalu memeberikan kondisi apakah
keduanya membaca hitam. Jika ya maka akan mencetak Robot Bergerak Maju. Lalu
ada kondisi apakah kiri membaca hitam dan kanan membaca putih, jika ya maka akan
mencetak Robot Bergerak Kekiri, kondisi selanjutnya apakah kiri membaca putih dan

14
kanan membaca hitam, jika ya, maka akan mencetak Robot Bergerak Kekanan dan
yang terakhir kondisi apakah sensor kiri dan kanan membaca putih maka akan
mencetak Robot Berhenti.

SOAL 5
SOAL

JAWABAN
Flowchart :

15
Program :

#include <stdio.h>

int main()
{

16
int penumpang;
float suhu;

printf("Jumlah Penumpang: ");


scanf("%d", &penumpang);

if(penumpang>30)
{
printf("Sensor suhu: ");
scanf("%f", &suhu);

if(suhu>24)
{
puts("SET AC ON");
}
else
{
puts("SET AC OFF");
}
}
else if(penumpang<6)
{
printf("Sensor suhu: ");
scanf("%f", &suhu);

if(suhu<24)
{
puts("SET AC OFF");
}
else
{
puts("SET AC ON");
}
}
else if(penumpang<=30 && penumpang>=6)
{
printf("Sensor suhu: ");
scanf("%f", &suhu);

if(suhu<24)
{
puts("SET AC OFF");
}
else
{
puts("SET AC ON");

17
}

}
return 0;
}

Hasil Program :

ANALISA
Program diawali dengan mendefenisikan variabel penumpang sebagai integer dan suhu
sebagai float. Lalu memeberikan cetakan input jumlah penumpang beserta inputannya.
Lalu memberikan kondisi apakah penumpang lebih dari 30 jika ya maka perintah
didalamnya akan dijalankan yaitu pencetakan inputan sensor suhu beserta inputannya
dan kondisi apakah suhu melebihi 24 derajat jika ya maka SET AC ON jika tidak maka
SET AC OFF. Kondisi selanjutnya yaitu apakah penumpang lebih sedikit dari 6 jika ya
maka perintah didalamnya akan dijalankan yaitu pencetakan inputan sensor suhu
beserta inputannya dan kondisi apakah suhu kurang dari 24 derajat jika ya maka SET
AC OFF, jika tidak SET AC ON. Lalu pada kondisi terakhir yaitu apakah jumlah
penumpang berada diantara 6 dan 30 maka perintah yang sama dengan kondisi
sebelumnya akan dijalankan.

18

Anda mungkin juga menyukai