Project Tugas Besar pertama Pengenalan Komputasi Institut Teknologi Bandung

Overview

Vending_Machine_(Mesin_Penjual_Minuman)

Project Tugas Besar pertama Pengenalan Komputasi Institut Teknologi Bandung

Raw Sketch untuk Essay

Ringkasan

Pada tugas besar ini, kami akan membuat suatu program yang merepresentasikan sebuah Vending Machine atau Mesin Penjual Otomatis. Mesin ini akan menerima uang, menampilkan display minuman, memberikan diskon pada situasi tertentu, mengecek uang, memberi kembalian, serta memberikan output berupa minuman kepada pembeli.

Menampilkan Display

"Sebagai penjual, kami ingin pelanggan dapat melihat barang apa saja yang tersedia pada mesin kami."

Mesin akan menampilkan display ketika ada pelanggan yang ingin membeli minuman. Mesin akan menampilkan minuman-minuman yang tersedia pada mesin termasuk Kode Minuman, Nama Minuman, dan Harga Minuman. Pada proses ini, tampilan sangat berperan penting dalam memikat hati pelanggan. Maka dari itu, kami membuat bagian display ini semenarik mungkin.

Memilih Produk

"Sebagai penjual, kami ingin para pelanggan dapat memilih produk yang ditawarkan oleh mesin."

Kami menyediakan berbagai minuman pada mesin kami. Terdapat aneka teh, kopi, dan soft drink. Minuman jenis teh kami identifikasikan dengan kode 1, minuman jenis kopi kami identifikasikan dengan kode 2, serta jenis soft drink dengan kode 3. Masing-masing jenis terdapat 3 produk berbeda misalnya pada soft drink, terdapat Sprite, Fanta, dan Coca Cola.

Ketika pelanggan sudah menentukan minuman yang ingin mereka beli, mesin akan meminta Kode Minuman kepada pelanggan. Di sini, pelanggan harus memasukkan kode dengan benar supaya Mesin Penjual Minuman dapat berjalan dengan lancar.

Verifikasi Produk

"Sebagai penjual, kami tidak ingin mengecewakan pelanggan. Salah satunya adalah ketika pelanggan tidak sengaja memasukkan kode yang salah."

Dalam hal ini, dibuatlah program untuk memverifikasi suatu produk. Ketika pelanggan sudah memasukkan Kode Minuman, mesin akan memberikan pilihan kepada pelanggan. “Anda akan membeli Fanta. Apakah Anda sudah yakin?”. Jika barang yang ingin dibeli oleh pelanggan sudah benar, pelanggan akan diarahkan untuk menekan tombol “Ya” sebagai bentuk verifikasi kepada mesin. Namun, jika pelanggan keliru memasukkan kode, maka pelanggan harus menekan tombol “Tidak”.

Memberi Diskon

"Sebagai penjual, kamu ingin memberikan diskon khusus bagi mahasiswa ITB dan FMIPA ITB."

Setelah verifikasi produk, mesin akan menanyakan satu hal dari pelanggan sebelum beralih ke pembayaran. Di sini mesin akan menanyakan apakah pelanggan adalah Mahasiswa ITB atau bukan. Jika pelanggan adalah mahasiswa ITB, mesin akan memberikan diskon sebesar 10 %. Jika pelanggan adalah mahasiswa FMIPA ITB, mesin akan memberikan diskon sebesar 40 %.

Supaya mesin dapat mengenali pelanggan, mesin akan meminta NIM dari pelanggan. Jika NIM yang dimasukkan memiliki angka 160xxxxx, maka pelanggan tersebut adalah mahasiswa FMIPA ITB. Jika NIM yang dimasukkan memiliki angka 1xxxxxxx, maka pelanggan adalah mahasiswa ITB.

Menerima Uang

"Sebagai penjual, kami menginginkan mesin yang dapat menghitung dan menerima uang. Supaya kami dapat mengambil keuntungan dari sana."

Setelah penentuan diskon, mesin kami akan menghitung jumlah uang yang harus dimasukkan oleh pelanggan. Jika pelanggan memasukkan uang dengan nominal yang kurang dari harga minuman, maka mesin akan terus meminta jumlah uang yang kurang. Namun, jika pelanggan memasukkan uang dengan nominal yang lebih, mesin akan memberi kembalian kepada pelanggan.

Catatan: Tujuannya adalah untuk membuat program yang dapat menghitung jumlah uang yang harus dibayar serta mengenali nominal uang.

Memberi Minuman

Hal terakhir yang sangat krusial adalah memberi output berupa minuman kepada pelanggan.

Mesin kami akan memberi minuman sesuai dengan kode yang sudah dimasukkan oleh pelanggan. Kami juga memberikan pesan kepada pelanggan berupa “Terima kasih telah mengunjungi Mesin Penjual Minuman Kami.” “Have a Nice Day!”.

You might also like...
THIS IS THE **OLD** PYMC PROJECT. PLEASE USE PYMC3 INSTEAD:

Introduction Version: 2.3.8 Authors: Chris Fonnesbeck Anand Patil David Huard John Salvatier Web site: https://github.com/pymc-devs/pymc Documentation

This project is the official implementation of our accepted ICLR 2021 paper BiPointNet: Binary Neural Network for Point Clouds.
This project is the official implementation of our accepted ICLR 2021 paper BiPointNet: Binary Neural Network for Point Clouds.

BiPointNet: Binary Neural Network for Point Clouds Created by Haotong Qin, Zhongang Cai, Mingyuan Zhang, Yifu Ding, Haiyu Zhao, Shuai Yi, Xianglong Li

project page for VinVL
project page for VinVL

VinVL: Revisiting Visual Representations in Vision-Language Models Updates 02/28/2021: Project page built. Introduction This repository is the project

Trading Gym is an open source project for the development of reinforcement learning algorithms in the context of trading.

Trading Gym Trading Gym is an open-source project for the development of reinforcement learning algorithms in the context of trading. It is currently

This project provides a stock market environment using OpenGym with Deep Q-learning and Policy Gradient.
This project provides a stock market environment using OpenGym with Deep Q-learning and Policy Gradient.

Stock Trading Market OpenAI Gym Environment with Deep Reinforcement Learning using Keras Overview This project provides a general environment for stoc

This project is a loose implementation of paper "Algorithmic Financial Trading with Deep Convolutional Neural Networks: Time Series to Image Conversion Approach"

Stock Market Buy/Sell/Hold prediction Using convolutional Neural Network This repo is an attempt to implement the research paper titled "Algorithmic F

The missing CMake project initializer

cmake-init - The missing CMake project initializer Opinionated CMake project initializer to generate CMake projects that are FetchContent ready, separ

Project to create an open-source 6 DoF input device

6DInputs A Project to create open-source 3D printed 6 DoF input devices Note the plural ('6DInputs' and 'devices') in the headings. We would like seve

This project demonstrates the use of neural networks and computer vision to create a classifier that interprets the Brazilian Sign Language.
This project demonstrates the use of neural networks and computer vision to create a classifier that interprets the Brazilian Sign Language.

LIBRAS-Image-Classifier This project demonstrates the use of neural networks and computer vision to create a classifier that interprets the Brazilian

Owner
QueenLy
Bananas without the B is just pineapples
QueenLy
This project uses reinforcement learning on stock market and agent tries to learn trading. The goal is to check if the agent can learn to read tape. The project is dedicated to hero in life great Jesse Livermore.

Reinforcement-trading This project uses Reinforcement learning on stock market and agent tries to learn trading. The goal is to check if the agent can

Deepender Singla 1.4k Dec 22, 2022
It's final year project of Diploma Engineering. This project is based on Computer Vision.

Face-Recognition-Based-Attendance-System It's final year project of Diploma Engineering. This project is based on Computer Vision. Brief idea about ou

Neel 10 Nov 2, 2022
Erpnext app for make employee salary on payroll entry based on one or more project with percentage for all project equal 100 %

Project Payroll this app for make payroll for employee based on projects like project on 30 % and project 2 70 % as account dimension it makes genral

Ibrahim Morghim 8 Jan 2, 2023
BC3407-Group-5-Project - BC3407 Group Project With Python

BC3407-Group-5-Project As the world struggles to contain the ever-changing varia

null 1 Jan 26, 2022
UpChecker is a simple opensource project to host it fast on your server and check is server up, view statistic, get messages if it is down. UpChecker - just run file and use project easy

UpChecker UpChecker is a simple opensource project to host it fast on your server and check is server up, view statistic, get messages if it is down.

Yan 4 Apr 7, 2022
The project is an official implementation of our CVPR2019 paper "Deep High-Resolution Representation Learning for Human Pose Estimation"

Deep High-Resolution Representation Learning for Human Pose Estimation (CVPR 2019) News [2020/07/05] A very nice blog from Towards Data Science introd

Leo Xiao 3.9k Jan 5, 2023
Warning: This project does not have any current developer. See bellow.

Pylearn2: A machine learning research library Warning : This project does not have any current developer. We will continue to review pull requests and

Laboratoire d’Informatique des Systèmes Adaptatifs 2.7k Dec 26, 2022
This project is for a Twitter bot that monitors a bird feeder in my backyard. Any detected birds are identified and posted to Twitter.

Backyard Birdbot Introduction This is a silly hobby project to use existing ML models to: Detect any birds sighted by a webcam Identify whic

Chi Young Moon 71 Dec 25, 2022
Generic template to bootstrap your PyTorch project with PyTorch Lightning, Hydra, W&B, and DVC.

NN Template Generic template to bootstrap your PyTorch project. Click on Use this Template and avoid writing boilerplate code for: PyTorch Lightning,

Luca Moschella 520 Dec 30, 2022