Rabu, 06 Agustus 2025
Jumat, 01 Agustus 2025
ADMINISTRASI DEEP LEARNING PKWU
- 8 Profil Lulusan : Keimanan dan ketakwaan kepada Tuhan Yang Maha Esa, Kewargaan, Penalaran kritis, Kreativitas, Kolaborasi, Kemandirian, Kesehatan, Komunikasi
- 3 Prinsip Pembelajaran : Berkesadaran (mindful), Bermakna (meaningful), Menggembirakan (joyful)
- 3 Pengalaman Belajar, Memahami, Mengaplikasikan, Merefleksikan
- 4 Kerangka Pembelajaran : Praktik pedagogik, Kemitraan pembelajaran, Lingkungan belajar, Pemanfaatan digital
Selasa, 08 Juli 2025
KODING : PHP
PENGANTAR VISUAL CODE STUDIO
Senin, 02 Juni 2025
DOLAN NANG MAGELANG
EKSPLORE CIANJUR SELATAN






Rabu, 07 Mei 2025
QUIZ BEP
Quiz BEP ini untuk menguji kemampuan anda dalam memahami tentang Break Event Point. Selamat mengerjakan, jangan lupa tulis nama dan kelas dengan jelas, terima kasih
Jumat, 02 Mei 2025
BEP TIME
BEP TIME untuk mengetahui kemampuan awal anda dalam memahami tentang konsep break event point atau titik impas. Selamat mengerjakan, jangan lupa tulis nama dan kelas dengan jelas, terima kasih.
COST TIME
COST TIME untuk mengetahui kemampuan awal anda dalam memahami tentang konsep biaya dan harga. Selamat mengerjakan, jangan lupa tulis nama dan kelas dengan jelas, terima kasih.
LAPORAN PRAKTIK PKWU
A. PENGANTAR
Laporan kegiatan sangat diperlukan, sebagai administrasi dan bukti pelaksanaan kegiatan, yang meliputi tahapan persiapan, pelaksanaan dan evaluasi. Secara umum laporan kegiatan berfungsi sebagai berikut :
- Bahan Evaluasi, untuk mengetahui hal-hal yang menjadi kendala dalam pelaksanaan kegiatan, sehingga dapat dicarikan solusinya untuk kegiatan berikutnya
- Pengambilan Keputusan, untuk digunakan sebagai bahan pertimbangan dalam mengambil keputusan yang berhubungan dengan kegiatan berikutnya
- Bukti Kegiatan, untuk memberikan pertanggungjawaban secara tertulis kepada pihak yang berkepentingan terhadap kegiatan tersebut
BREAK EVEN POINT
A. PENGANTAR
Break Event Point (BEP) sering disebut dengan Titik Impas atau orang awam menyebutnya Balik Modal, merupakan kondisi dimana suatu usaha mencapai posisi tidak untung dan tidak rugi atau jumlah biaya produksi sama dengan jumlah pendapatan.
BIAYA DAN HARGA
A. PENGANTAR
Salah satu komponen terpenting dalam usaha/bisnis adalah biaya, hampir semua proses kegiatan produksi membutuhkan biaya, misalnya untuk pembelian bahan, pembayaran upah, transportasi, dll. Secara umum biaya merupakan besaran uang atau nilai moneter yang dikeluarkan untuk menjalankan sebuah usaha/bisnis, yang dikelompokan dalam beberapa jenis dan klasifikasi yang sering disebut dengan akuntasi biaya.
KODING : JAVA
Proyek Java dimulai tahun 1991 oleh James Gosling, bernama Oak, diubah menjadi Green, akhirnya menjadi Java yang terinspirasi dari asal kopi yang diminum dari Pulau Jawa, sehingga logo Java bentuknya seperti secangkir kopi, Java versi pertama (1.0) dirilis pada tahun 1996 dan terus berkembang sampai JAVA SE 15 tahun 2020, Java merupakan bahasa pemrograman yang dikembangkan dari bahasa C yang menggunakan paradigma OOP (Object Oriented Programming)
untuk menjalankan program JAVA diperlukan JVM (Java Virtual Machine) yang merupakan mesin virtual untuk menjalankan program Java, adapun proses yang dilakukan saat coding java antara lain :
- Menulis kode program Java, menghasilkan file dengan nama
Program.java
- Melakukan Compile, file
Program.java
kemudian di-compiledengan compiler (javac
) dan akan menghasilkan fileProgram.class
- Menjalankan Program,file
Program.class
merupakan file yang berisi bytecode yang akan dieksekusi oleh JVM, sehingga program berjalan
Peralatan yang dibutuhkan untuk coding Java antara lain :
- JDK (Java Development Kit), berisi Compiler, JVM, Library, dan lain-lain. silahkan download di https://jdk.java.net/
- Teks Editor untuk menulis program, seperti CVS, silahkan download di https://code.visualstudio.com/
- NetBeans, merupakan IDE (Integrated Development Environment) yang umum digunakan dalam pemrograman Java dan melakukan compile di sana tanpa harus mengetik manual dari CMD, silahkan download di https://netbeans.apache.org/front/main/index.html
Struktur program Java secara umum dibagi menjadi 4 bagian, yaitu :
- Deklarasi Package, merupakan sebuah folder yang berisi sekumpulan program Java, dilakukan saat membuat program atau aplikasi, nama package mengikuti nama domain yang mengeluarkan program, penulisan nama domain dibalik, lalu diikuti nama programnya, misalnya : package id.my.trie.program;
- Impor Library, merupakan sekumpulan class dan fungsi yang bisa kita gunakan dalam membuat program, misalnya : import java.util.Scanner;
- Bagian Class, setiap program harus dibungkus di dalam class agar nanti bisa dibuat menjadi objek, Blok class dibuka dengan tanda kurung kurawal
{
kemudian ditutup atau diakhiri dengan }, yang diisi dengan method atau fungsi-fungsi dan juga variabel, misalnya :class NamaProgram { public static void main(String args[]){ System.out.println("Hello World"); } }
- Method Main, atau fungsi
main()
merupakan blok program yang akan dieksekusi pertama kali, dan wajib dibuat agar bisa dieksekusi, Methodmain()
memiliki parameterargs[]
. Parameter ini nanti akan menyimpan sebuah nilai dari argumen di command line, misalnya :public static void main(String args[]){ System.out.println("Hello World"); }
Aturan Penulisan Sintaks Java, meliputi :
- Case Sensitive, artinya huruf besar atau kapital dan huruf kecil dibedakan,Gaya penulisan case (case style) yang digunakan oleh Java adalah :
- camelCase, misalnya : String namaSaya = "Dian";
- PascalCase, misalnya :
class HelloWOrld {
//...
}
- ALL UPPER, misalnya : public final String DB_NAME = "petanikode";
- String, merupakan kumpulan dari karakter, penulisannya :
- Tanda petik ganda (
"..."
) untuk membuat string, misalnya "Hello world" - Tanda petik tunggal (
'...'
) untuk membuat karakter, misalnya 'Hello world'
- Tanda petik ganda (
- Komentar, merupakan bagian program yang tidak akan dieksekusi oleh komputer, digunakan untuk : Memberi keterangan pada kode program; Menonaktifkan fungsi tertentu; Membuat dokumentasi. Penulisannya menggunakan : Garis miring ganda (
//
) untuk komentar satu baris; Garis miring bintang (/*...*/
) untuk komentar yang lebih dari satu baris. Contoh :public static void main(String args[]){ // ini adalah komentar satu baris System.out.println("Hello World"); // komentar akan diabaikan oleh komputer // berikut ini fungsi yang di-non-aktifkan dengan komentar // System.out.println("Hello World"); /* Ini adalah penulisan komentar yang lebih dari satu baris */ }
- Blok program, merupakan kumpulan dari statement dan ekspresi yang dibungkus menjadi satu, dibuka dengan kurung kurawal
{
dan ditutup dengan }, Contohnya :// blok program main public static void main(String args[]){ System.out.println("Hello World"); System.out.println("Hello Kode"); // blok program if if( true ){ System.out.println('True'); } // blok program for for ( int i = 0; i<10; i++){ System.out.println("Perulangan ke"+i); } }
- Statement dan ekspresi, merupakan bagian terkecil dalam program, diakhiri dengan titik koma (
;
), Contohnya :System.out.println("Apa kabar?"); var x = 3; var y = 8; var z = x +
y;
JAVA menyediakan fungsi untuk membuat program, antara lain :
- Fungsi Input, dibedakan menjadi 2 kelompok, yaitu teks dan GUI, yang meliputi class :
- Class Scanner, merupakan class yang menyediakan fungsi-fungsi untuk mengambil input dari keyboard, misalnya :
// mengimpor Scanner ke program import java.util.Scanner; public class DataKaryawan { public static void main(String[] args) { // deklarasi variabel String nama, alamat; int usia, gaji; // membuat scanner baru Scanner keyboard = new Scanner(System.in); // Tampilkan output ke user System.out.println("### Pendataan Karyawan PT. Petani Kode ###"); System.out.print("Nama karyawan: "); // menggunakan scanner dan menyimpan apa yang diketik di variabel nama nama = keyboard.nextLine(); // Tampilkan outpu lagi System.out.print("Alamat: "); // menggunakan scanner lagi alamat = keyboard.nextLine(); System.out.print("Usia: "); usia = keyboard.nextInt(); System.out.print("Gaji: "); gaji = keyboard.nextInt();
- Class BufferReader, digunakan untuk membaca input dari keyboard, file dan jaringan, yang terletak di dalam paket
java.io, misalnya :
import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class ContohBufferReader { public static void main(String[] args) throws IOException { String nama; // Membuat objek inputstream InputStreamReader isr = new InputStreamReader(System.in); // membuat objek bufferreader BufferedReader br = new BufferedReader(isr); // Mengisi variabel nama dengan Bufferreader System.out.print("Inputkan nama: "); nama = br.readLine(); // tampilkan output isi variabel nama System.out.println("Nama kamu adalah " + nama); } }
- Class Console, hanya bisa digunakan di lingkungan console saja, seperti Terminal dan CMD, misalnya :
import java.io.Console; public class InputConsole { public static void main(String[] args) { String nama; int usia; // membuat objek console Console con = System.console(); // mengisi variabel nama dan usia dengan console System.out.print("Inputkan nama: "); nama = con.readLine(); System.out.print("Inputkan usia: "); usia = Integer.parseInt(con.readLine()); // menampilkan isi variabel nama dan usia System.out.println("Nama kamu adalah: " + nama); System.out.println("Saat ini berusia " + usia + " tahun"); } }
- Class Scanner, merupakan class yang menyediakan fungsi-fungsi untuk mengambil input dari keyboard, misalnya :
- Fungsi Output, untuk menampilkan input, yang terdiri dari beberapa fungsi, antara lain :
- Fungsi
System.out.print(), akan menampilkan teks apa adanya, misalnya :
public static void main(String[] args) { System.out.print("ini teks yang dicetak dengan print()"); }
- Fungsi
System.out.println(), akan menampilkan teks dengan ditambah baris baru, misalnya :
public static void main(String[] args) { System.out.println("sedangkan ini teks yang dicetak dengan println()"); }
- Fungsi
System.out.format(), untuk menggabungkan String yang lebih kompleks, misalnya :
public class FormatString { public static void main(String[] args) { String namaDepan = "Petani"; String namaBelakang = "Kode"; System.out.format("Nama saya %s %s %n", namaDepan, namaBelakang); } }
- Fungsi
Variabel dan tipe data pada JAVA meliputi :
- Tipe data pada Java, terdiri dari :
char
: Tipe data karakter, contohZ
int
: angka atau bilangan bulat, contoh29
float
: bilangan desimal, contoh2.1
double
: bilangan desimal juga, tapi lebih besar kapasitasnya, contoh2.1
String
: kumpulan dari karakter yang membentuk teks, contohHello World!
boolean
: tipe data yang hanya bernilaitrue
danfalse
- Aturan yang harus diikuti dalam penulisan variabel, antara lain :
- Nama variabel tidak boleh menggunakan kata kunci dari Java (reserved word) seperti
if
,for
,switch
, dll. - Nama variabel boleh menggunakan huruf, angka (0-9), garis bawah (underscore), dan symbol dollar ($), namun penggunaan garis bawah dan symbol lebih baik dihindari.
- Nama variabel harus diawali dengan huruf kecil, karena Java menggunakan gaya CamelCase.
- Apabila nama variabel lebih dari 1 suku kata, maka kata ke-2 dituliskan dengan diawali dengan huruf besar dan seterusnya, contoh
namaVariabel
- Nama variabel tidak boleh menggunakan kata kunci dari Java (reserved word) seperti
- Konversi, mengubah type data ke jenis yang lain
Ada enam jenis kelompok operator dalam pemrograman Java, yaitu :
- Operator Aritmatika, digunakan untuk melakukan operasi aritmatika, terdiri dari : penjumlahan (+), pengurangan (-), perkalian (*), pembagian (\), sisa bagi (%), misalnya :
import java.util.Scanner; public class OperatorAritmatika { public static void main(String[] args) { int angka1; int angka2; int hasil; Scanner keyboard = new Scanner(System.in); System.out.print("Input angka-1: "); angka1 = keyboard.nextInt(); System.out.print("Input angka-2: "); angka2 = keyboard.nextInt(); // penjumlahan hasil = angka1 + angka2; System.out.println("Hasil = " + hasil); System.out.print("Input angka-1: "); angka1 = keyboard.nextInt(); System.out.print("Input angka-2: "); angka2 = keyboard.nextInt(); // pengurangan hasil = angka1 - angka2; System.out.println("Hasil = " + hasil); System.out.print("Input angka-1: "); angka1 = keyboard.nextInt(); System.out.print("Input angka-2: "); angka2 = keyboard.nextInt(); // perkalian hasil = angka1 * angka2; System.out.println("Hasil = " + hasil); System.out.print("Input angka-1: "); angka1 = keyboard.nextInt(); System.out.print("Input angka-2: "); angka2 = keyboard.nextInt(); // Pembagian hasil = angka1 / angka2; System.out.println("Hasil = " + hasil); System.out.print("Input angka-1: "); angka1 = keyboard.nextInt(); System.out.print("Input angka-2: "); angka2 = keyboard.nextInt(); // Sisa Bagi hasil = angka1 % angka2; System.out.println("Hasil = " + hasil); } }
- Operator Penugasan (Assignment Operator), fungsinya untuk memberikan tugas pada variabel tertentu, biasanya untuk mengisi nilai, terdiri dari : pengisian nilai (=), isi penjumlahan (+=), isi pengurangan (-=), isi perkalian (*=), isi pembagian (\=), isi sisa bagi (%=), misalnya :
public class OperatorPenugasan { public static void main(String[] args) { int a; int b; // Pengisian nilai a = 5; b = 10; // penambahan b += a; // sekarang b = 15 System.out.println("Penambahan : " + b); // pengurangan b -= a; // sekarang b = 10 (karena 15-5) System.out.println("Pengurangan : " + b); // perkalian b *= a; // sekarang b = 50 (karena 10*5) System.out.println("Perkalian : " + b); // Pembagian b /= a; // sekarang b=10 System.out.println("Pembagian : " + b); // Sisa bagi b %= a; // sekarang b=0 System.out.println("Sisa Bagi: " + b); } }
- Operator Pembanding, dikenal dengan operator relasi, nilai yang dihasilkan dari operator ini berupa boolean, yaitu :
true
danfalse, terdiri dari : lebih besar (>), lebih kecil (<), sama dengan (==), tidak sama dengan (!=), lebih besar sama dengan (>=),lebih kecil sama dengan (<=), misalnya :
public class OperatorPembanding { public static void main(String[] args) { int nilaiA = 12; int nilaiB = 4; boolean hasil; // apakah A lebih besar dari B? hasil = nilaiA > nilaiB; System.out.println(hasil); // apakah A lebih kecil dari B? hasil = nilaiA < nilaiB; System.out.println(hasil); // apakah A lebih besar sama dengan B? hasil = nilaiA >= nilaiB; System.out.println(hasil); // apakah A lebih kecil sama dengan B? hasil = nilaiA <= nilaiB; System.out.println(hasil); // apakah nilai A sama dengan B? hasil = nilaiA == nilaiB; System.out.println(hasil); // apakah nilai A tidak sama dengan B? hasil = nilaiA != nilaiB; System.out.println(hasil); } }
- Operator Logika, digunakan untuk membuat operasi logika, terdiri dari : and (&&), or (||), negasi (!)
- Operator Bitwise, digunakan untuk operasi bit (biner) berlaku untuk tipe data
int
,long
,short
,char
, danbyte
terdiri dari : AND (&), OR (|), negasi (~), XOR (^), Left Shift (<<), Right Shift (>>), Left Shift unsigned (<<<), Right Shift unsigned (>>>), - Operator Ternary, seperti membuat pertanyaan, simbolnya menggunakan tanda tanya (
?
) dan titik-dua (:
) untuk memisah jawabannya, misalnya :public class OperatorTernary { public static void main(String[] args) { boolean suka = true; String jawaban; // menggunakan operator ternary jawaban = suka ? "iya" : "tidak"; // menampilkan jawaban System.out.println(jawaban); } }
Percabanagan dalam JAVA ada 3 jenis, yaitu :
- Percabangan IF, hanya memiliki satu pilihan, hanya akan dikerjakan kalau kondisinya benar, misalnya :
import java.util.Scanner; public class Hadiah { public static void main(String[] args) { // membuat variabel belanja dan scanner int belanja = 0; Scanner scan = new Scanner(System.in); // mengambil input System.out.print("Total Belanjaan: Rp "); belanja = scan.nextInt(); // cek apakah dia belanja di atas 100000 if ( belanja > 100000 ) { System.out.println("Selamat, anda mendapatkan hadiah!"); } System.out.println("Terima kasih..."); } }
- Percabangan IF/ELSE, memiliki pilihan alternatif kalau kondisinya salah, misalnya :
import java.util.Scanner; public class CekKelulusan { public static void main(String[] args) { // membuat variabel dan Scanner int nilai; String nama; Scanner scan = new Scanner(System.in); // mengambil input System.out.print("Nama: "); nama = scan.nextLine(); System.out.print("Nilai: "); nilai = scan.nextInt(); // cek apakah dia lulus atau tidak if( nilai >= 70 ) { System.out.println("Selemat " + nama + ", anda lulus!"); } else { System.out.println("Maaf " + nama + ", anda gagal"); } } }
- Percabangan IF/ELSE/IF atau SWITCH/CASE, memiliki lebih dari dua pilihan, misalnya :
import java.util.Scanner; public class HitungGrade { public static void main(String[] args) { // membuat variabel dan scanner int nilai; String grade; Scanner scan = new Scanner(System.in); // mengambil input System.out.print("Inputkan nilai: "); nilai = scan.nextInt(); // tentukan grade-nya if ( nilai >= 90 ) { grade = "A"; } else if ( nilai >= 80 ){ grade = "B+"; } else if ( nilai >= 70 ){ grade = "B"; } else if ( nilai >= 60 ){ grade = "C+"; } else if ( nilai >= 50 ){ grade = "C"; } else if ( nilai >= 40 ){ grade = "D"; } else { grade = "E"; } // cetak hasilnya System.out.println("Grade: " + grade); } } atau :
import java.util.Scanner; public class LampuLalulintas { public static void main(String[] args) { // membuat variabel dan Scanner String lampu; Scanner scan = new Scanner(System.in); // mengambil input System.out.print("Inputkan nama warna: "); lampu = scan.nextLine(); switch(lampu){ case "merah": System.out.println("Lampu merah, berhenti!"); break; case "kuning": System.out.println("Lampu kuning, harap hati-hati!"); break; case "hijau": System.out.println("Lampu hijau, silakan jalan!"); break; default: System.out.println("Warna lampu salah!"); } } }
- Percabangan dalam Percabangan (Nested), atau sering disebut nested if, misalnya :
import java.util.Scanner; public class Kasir { public static void main(String[] args) { // deklarasi variabel dan Scanner int belanjaan, diskon, bayar; String kartu; Scanner scan = new Scanner(System.in); // mengambil input System.out.print("Apakah ada kartu member: "); kartu = scan.nextLine(); System.out.print("Total belanjaan: "); belanjaan = scan.nextInt(); // proses if (kartu.equalsIgnoreCase("ya")) { if (belanjaan > 500000) { diskon = 50000; } else if (belanjaan > 100000) { diskon = 15000; } else { diskon = 0; } } else { if (belanjaan > 100000) { diskon = 5000; } else { diskon = 0; } } // total yang harus dibayar bayar = belanjaan - diskon; // output System.out.println("Total Bayar: Rp " + bayar); } }
- Menggunakan Operator Logika dalam Percabangan, bisa membuat percabangan menjadi lebih singkat, misalnya :
public class Tilang { public static void main(String[] args) { boolean SIM = false; boolean STNK = true; // cek apakah dia akan ditilang atau tidak if(SIM == true){ if( STNK == true ) { System.out.println("Tidak ditilang!"); } } else { System.out.println("Anda ditilang!"); } } }
Perulangan dalam pemrograman JAVA dibagi menjadi dua jenis, yaitu :
- Counted loop: Perulangan yang jumlah pengulangannya terhitung atau tentu, terdiri dari :
- perulangan For, misalnya :
class Bintang{ public static void main(String[] args){ for(int i=0; i <= 5; i++){ System.out.println("*****"); } } }
- perulangan For each, misalnya :
public class PerulanganForeach { public static void main(String[] args) { // membuat array int angka[] = {3,1,42,24,12}; // menggunakan perulangan For each untuk menampilkan angka for( int x : angka ){ System.out.print(x + " "); } } }
- perulangan For, misalnya :
- Uncounted loop: Perulangan yang jumlah pengulangannya tidak terhitung atau tidak tentu, terdiri dari :
- perulangan While, misalnya :
int i = 0; while ( i <= 10 ){ // blok kode yang akan diulang System.out.println('Perulangan ke-' + i); // increment nilai i i++; }
- perulangan Do/While, misalnya :
public class PerulanganDoWhile { public static void main(String[] args) { // membuat variabel int i = 0; do { System.out.println("perulangan ke-" + i); i++; } while ( i <= 10); } }
- perulangan While, misalnya :
- Parulangan Bersarang (Nested Loop), misalnya :
public class PerulanganBersarang { public static void main(String[] args) { // membuat variabel int x, y; // melakukan parulang sebnayan x dan y kali for (x = 0; x <= 5; x++){ for( y = 0; y <= 3; y++){ System.out.format("Perulangan [x=%d, y=%d] %n", x, y); } } } }
Array adalah sebuah variabel yang bisa menyimpan banyak data dalam satu variabel, menggunakan indeks untuk memudahkan akses terhadap data yang disimpannya, Indeks array selalu dimulai dari 0, menggunakan kurung siku []
untuk membuat array, macamnya meliputi :
- Array multi dimensi, merupakan array yang memiliki lebih dari satu dimensi, atau array di dalam array, misalnya :
import java.util.Scanner; public class RuangKelas { public static void main(String[] args) { // Membuat Array dan Scanner String[][] meja = new String[2][3]; Scanner scan = new Scanner(System.in); // mengisi setiap meja for(int bar = 0; bar < meja.length; bar++){ for(int kol = 0; kol < meja[bar].length; kol++){ System.out.format("Siapa yang akan duduk di meja (%d,%d): ", bar, kol); meja[bar][kol] = scan.nextLine(); } } // menampilkan isi Array System.out.println("-------------------------"); for(int bar = 0; bar < meja.length; bar++){ for(int kol = 0; kol < meja[bar].length; kol++){ System.out.format("| %s | \t", meja[bar][kol]); } System.out.println(""); } System.out.println("-------------------------"); } }
- Array list, merupakan sebuah class yang memungkinkan membuat sebuah objek untuk menampung apapun, untuk menggunakan Array List, harus mengimpornya terlebih dahulu, misalnya :
import java.util.ArrayList; public class Doraemon { public static void main(String[] args) { // membuat objek array list ArrayList kantongAjaib = new ArrayList(); // Mengisi kantong ajaib dengan 5 benda kantongAjaib.add("Senter Pembesar"); kantongAjaib.add(532); kantongAjaib.add("tikus"); kantongAjaib.add(1231234.132); kantongAjaib.add(true); // menghapus tikus dari kantong ajaib kantongAjaib.remove("tikus"); // Menampilkan isi kantong ajaib System.out.println(kantongAjaib); // menampilkan banyak isi kantong ajaib System.out.println("Kantong ajaib berisi "+ kantongAjaib.size() +" item"); } }
Prosedur/fungsi/method yang selanjutnya disebut fungsi, dapat memecah program menjadi sub-sub program, sehingga kita bisa membuat program lebih efisien, dimana :
- Prosedur adalah sebutan untuk fungsi yang tidak mengembalikan nilai. Fungsi ini biasanya ditandai dengan kata kunci
void
. - Fungsi adalah sebutan untuk fungsi yang mengembalikan nilai.
- Method adalah fungsi yang berada di dalam Class. Sebutan ini, biasanya digunakan pada OOP
misalnya :
class BelajarFungsi {
// membuat fungsi ucapSalam()
static void ucapSalam(){
System.out.println("Selamat Pagi");
}
// membuat fungsi main()
public static void main(String[] args){
// memanggil/eksekusi fungsi ucapSalam()
ucapSalam();
}
}
KODING : CSS
CSS atau Cascading Style Sheet digunakan untuk mengatur tampilan elemen yang tertulis dalam bahasa markup, berfungsi untuk memisahkan konten dari tampilan visualnya di situs, dibuat dan dikembangkan oleh W3C (World Wide Web Consortium) pada tahun 1996 dan sekarang sudah versi CSS3. HTML dan CSS memiliki keterikatan yang erat. Karena HTML adalah bahasa markup (fondasi situs) dan CSS memperbaiki style (untuk semua aspek yang terkait dengan tampilan website), maka kedua bahasa pemrograman ini harus berjalan beriringan.
Komponen CSS terdiri dari 2 bagian, yaitu :
- Selector, digunakan untuk mencari bagian mana dari HTML yang ingin disisipi kode CSS. Ada 6 macam selektor yaitu :
- Selektor Tag, atau Type Selector. Selektor ini akan memilih elemen berdasarkan nama tag, misalnya :
p { color: blue; }
- Selektor Class, selektor yang memilih elemen berdasarkan nama class yang diberikan. Selektor class dibuat dengan tanda titik di depannya, misalnya :
.pink { color: white; background: pink; padding: 5px; }
- Selektor ID, Hanya boleh digunakan oleh satu elemen saja. ditandai dengan tanda pagar (
#
) di depannya, misalnya :#header { background: teal; color: white; height: 100px; padding: 50px; }
- Selektor Atribut, selektor yang memiliki elemen berdasarkan atribut. Selektor ini hampir sama seperti selektor Tag, misalnya :
input[type=text] { background: none; color: cyan; padding: 10px; border: 1px solid cyan; }
- Selektor Universal, selektor yang digunakan untuk menyeleksi semua elemen pada jangkauan (scope) tertentu dan digunakan untuk me-reset CSS untuk menghilangkan
padding
danmargin
tersebut, misalnya :* { border: 1px solid grey; }
- Selektor Pseudo,selektor untuk memilih elemen semu seperti state pada elemen, elemen before dan after, elemen ganjil, dan sebagainya. Ada dua macam pseudo selektor, yaitu :
- pseudo-class selektor untuk state elemen menggunakan tanda titik dua satu, cara penulisannya :
a:hover { color: green; }
- pseudo-element selektor untuk elemen semu di HTML menggunakan tanda titik dua dua, cara penulisannya :
p::first-line { color: magenta; }
- pseudo-class selektor untuk state elemen menggunakan tanda titik dua satu, cara penulisannya :
- Selektor Tag, atau Type Selector. Selektor ini akan memilih elemen berdasarkan nama tag, misalnya :
- Declaration, bagian yang berada di antara tanda kurung kurawal, meliputi :
- Property, atribut yang dibutuhkan untuk mengatur jenis style CSS atau bagian apa yang akan diubah dari sebuah tag HTML. Misalnya jenis font, ukuran huruf, warna background, lebar tabel dan hal yang berkaitan dengan komponen HTML lainnya
- Value CSS, sangat bergantung
kepada jenis property, misalnya untuk ukuran font bisa menggunakan satuan pixel, point, untuk property warna (color) kita harus menggunakan value berupa nama warna atau kode RGB.
Berdasarkan peletakan codenya, CSS dapat dibagi menjadi 3 jenis, yaitu :
- Inline CSS, code CSS yang ditulis dalam tag yang sama dengan baris HTML. Contohnya berikut :
<h1 style="font-size:30px;color:#0C4FF5;">Hello World!</h1>
- Internal CSS, ditulis pada bagian header file HTML. contoh berikut :
<html>
<head>
<style>
Body { background-color:#0C4FF5; }
p{ font-size:20px; color:white; }
</style>
</head>
<body>
<h1>Inline CSS</h1>
<p>Ini adalah kalimat pertama saya.</p>
</body>
</html>
- External CSS , code CSS diletakkan terpisah dari file HTML. Contohnya berikut :
- External style CSS dengan element
<html>
<head>
<link rel="stylesheet" type="text/css" href="style.css">
</head>
<body>
<h1>Inline CSS</h1>
<p>Ini adalah kalimat pertama saya.</p>
</body>
</html>
- External style CSS dengan @import
<html>
<head>
<style>
@import url("style.css");
</style>
</head>
<body>
<h1>Inline CSS</h1>
<p>Ini adalah kalimat pertama saya.</p>
</body>
</html>
Buat file style.css dengan code berikut :
body { background-color:#0C4FF5; }
p{ font-size:20px; color:white; }
Property CSS dasar, meliputi :
- CSS Background, Property background, terdiri dari :
- Background-color
Contoh:
Body {
Background-color : green;
} - Background-Image
Contoh:
Body {
Background-image : url(gambar1.jpg);
} - Background-attachment
Body {
Background-attachment : scroll;
} - Background-Repeat
Body {
Background-repeat : repeat;
Background-image : url(image/gambar1.jpg);
} - Background-position
Body {
Background-repeat : no-repeat;
Background-image : url(image/gambar1.jpg);
Background-position : bottom center
}
- Background-color
- CSS Font, Property Font terdiri dari :
- Font-family
P {
Font-family : Arial,Helvetica;
} - Font-size (satuan em,pt,px,mm,cm,%)
P {
Font-size : 24em;
} - Font-style (nilai : oblique,italic,normal)
P {
Font-style : oblique;
} - Font-variant (nilai : normal,small-caps)
P {
Font-family : Arial,Helvetica;
} - Font-weight (nilai :normal,bold,bolder,lighter,100-900)
P {
Font-weight : bolder;
}
- Font-family
- CSS Teks, Property teks terdiri dari :
- color
P {
color :red;
} - teks-align (nilai left,right,center,justify)
P {
Text-align :justify;
} - text-decoration (nilai : none,underline,overline,line-through,blink)
P {
Text-decoration :overline;
} - text-transform (nilai : none,capitalize,uppercase,lowercase)
P {
Text-transform : capitalize;
} - Letter-spacing
P {
letter-spacing : 20px;
} - Teks-indent
P {
Text-indent : 50px;
}
- color
- CSS List, Property list terdiri dari :
- List-style-type (nilai : disc,circle,square,lower-roman,upper-roman,none,lower-alpha,upper-alpha)
Ul {
List-style-type : disc ;
} - List-style-image (nilai : url,none)
Ul {
List-style-image : url(gambar1.jpg) ;
} - List-style-position (nilai : inside,outside)
Ul {
List-style-position : inside;
}
- List-style-type (nilai : disc,circle,square,lower-roman,upper-roman,none,lower-alpha,upper-alpha)
- CSS Border, Property Border terdiri dari :
- border-style (nilai : none,dotted,dashed,solid,double,groove,ridge,inset,outset)
.b1 {
Border-style-type : groove ;
} - border-bottom-style (nilai : none,dotted,dashed,solid,double,groove,ridge,inset,outset)
.b1 {
Border-bottom-style : groove ;
} - border-bottom-width ()
.b1 {
border-bottom-width :10px;
} - border-bottom-color ()
.b1 {
border-bottom-color :red;
}
- border-style (nilai : none,dotted,dashed,solid,double,groove,ridge,inset,outset)
- Margin dan Padding
- Margin : pengaturan batas atas,bawah,kanan,kiri pada halaman web
Body {
Margin-top : 4cm;
Margin-right : 3cm;
Margin-bottom :3cm;
Margin-left : 4cm;
} - Margin : pengaturan batas atas,bawah,kanan,kiri antara border dengan content.
Pd css
.kotak {
Padding-top : 25px;
Padding-right : 25px;
Padding-bottom : 25px;
Padding-left: 25px;
border-top-style: solid;
border-right-style: solid;
border-bottom-style: solid;
border-left-style: solid;
}
- Margin : pengaturan batas atas,bawah,kanan,kiri pada halaman web
KODING : JAVASCRIPT
Javascript merupakan bahasa pemograman dalam bentuk skrip untuk memberikan kemampuan tambahan terhadap bahasa HTML sehingga tampilan web menjadi interaktif/dinamis, dikembangkan oleh Brendan Eich pada tahun 1995 pada browser Netscape demgam nama Mocha, kemudian berubah LiveScript dan diganti JavaScript, agar dapat digunakan disemua browser maka dibuatkan standarnya yaitu ECMAScript pada tahun 2008.
Untuk menggunakan JavaScript, diperlukan komponen pendukung, yaitu :
- Browser, dalam tulisan ini digunakan Chrome yang dapat di download di https://www.google.com/chrome/
- Text Editor, dalam tulisan ini digunakan Visual Studio Code (VSC) di download di https://code.visualstudio.com/
Setelah didownload lalu install chrome dan VCS sampai selesai, kemudian lakukan setting untuk VSC, sebagai berikut :
- Tambahkan extensions Live Server kemudian klik install
- Buat folder, misalnya dengan nama LATIHAN JS untuk menyimpan file program yang akan dibuat
- Pilih Go Live dan pilih Chrome klik always, atau klik file pilih preference, pilih setting, pilih custom browser pilih chrome dan simpan
JavaScript memiliki struktur sederhana, kodenya dapat disisipkan pada dokumen HTML atau berdiri sendiri. Struktur penulisan JavaScript dalam dokumen atau internal berada dalam tag script, Cara penulisan program JavaScript, dapat dilakukan dengan 3 cara, yaitu :
- Embed (Kode Javascript ditempel langsung pada HTML., formatnya sebagai berikut :
!DOCTYPE html><HTML><HEAD><TITLE>Penulisan JS</TITLE></HEAD><BODY><SCRIPTLANGUAGE=”Javascript”>console.log("penulisan JS")</SCRIPT><h1>Penulisan JS</h1></BODY></HTML>- Inline (kode Javascript ditulis pada atribut HTML), formatnya sebagai berikut :
<!DOCTYPE html><HTML><HEAD><TITLE>Penulisan JS</TITLE></HEAD><BODY><SCRIPTLANGUAGE=”Javascript”>console.log("penulisan JS")</SCRIPT><h1>Penulisan JS</h1><a href="#" onclick="alert('assalamualaikum')" >klik salam</a></BODY></HTML>- Eksternal (Kode Javascript ditulis terpisah dengan file HTML), formatnya sebagai berikut :
<!DOCTYPE html><HTML><HEAD><TITLE>Penulisan JS</TITLE></HEAD><BODY><SCRIPTsrc="penulisan.js"></SCRIPT><h1>Penulisan JS</h1><a href="#" onclick="alert('assalamualaikum')" >klik salam</a></BODY></HTML>
Ada 4 cara menampilkan output pada Javascript. antara lain :
- Menggunakan Fungsi console.log(), untuk menampilkan teks ke console Javascript, contohnya : console.log("Hello World!");
- Menggunakan Fungsi alert(), untuk menampilkan jendela dialog, berada pada objek window, contohnya : window.alert("Hello World!"); atau alert("Hello World!");
- Menggunakan Fungsi document.write(), merupakan objek yang mewakili dokumen HTML di dalam
Javascript, terdapat fungsi write() untuk menulis sesuatu ke dokumen HTML, contohnya : dokument.write("Hello World!")- Menggunakan innerHTML, merupakan sebuah atribut didalam (objek) elemen HTML yang berisi string HTML, dapat menampilkan output ke elemen yang lebih spesifik, contohnya :
<!DOCTYPE html><html lang="en"><head><title>Tampilan JS</title></head><body><h1>"innerHTML"</h1><div id = "ouput"> </div><Script>var hasil = document.getElementById("ouput");hasil.innerHTML = "<p> Output innerHTML</p>";</Script></body></html>
DASAR PEMOGRAMAN JS
- Komentar, untuk memberikan keterangan tanapa dieksekusi, penulisannya dengan 2 cara, yaitu :
- // komentar
- /* komentar */
- Variabel, merupakan wadah untuk menyimpan sesuatu atau nilai seperti string(teks), number (angka), objek, array, dan sebagainya, menggunakan kata kunci var atau let lalu diikuti dengan nama variabel dan nilainya, misalnya : var nama = ” Zaskia Mecca”, var X = 1998. Variabel bersifat mutable, artinya nilai yang tersimpan di dalamnya, dapat kita isi ulang (berubah), untuk menghapus variabel dengan perintah delete, misalnya delete nama. adapun cara penulisannya harus memperhatikan hal berikut :
- Harus diawalai dengan karakter (huruf atau baris bawah)
- Tidak boleh menggunakan spasi
- Huruf Kapital dan kecil memiliki arti yang berbeda
- Tidak boleh menggunakan kata-kata yang merupakan perintah dalam JavaScript.
- Data, merupakan isian atau nilai variabel, yang terdiri dari :
- Numerik, terdiri dari : integer/bulat misalnya 0222532531, 1000, 45, dan float/pecahan misalnya 3.146789
- String, berupa kata atau kalimat cara menulisnya diantara tanda petik tunggal (’) atau tanda petik ganda (”) seperti : “Hallo”, “April”, 'Jl. Setiabudi No 17A', “Cece Kirani” dsb
- Boolean, bernilai true atau false digunakan untuk mengecek suatu kondisi atau keadaan, misalnya : var X = (Y > 90); artinya jika Y lebih besar dari 90 maka X akan bernilai True
- Null, merepresentasikan variabel yang tidak diberi nilai awal/diinisilisasi
- Operator, merupakan simbol yang digunakan untuk melakukan operasi pada suatu nilai dan variabel, yang terbagi dalam 6 jenis, yaitu :
- Operator aritmatika, untuk beripe numerik, meliputi : +. -, *, /, %,
- Operator Penugasan (Assignment), digunakan untuk memberikan tugas kepada variabel, untuk mengisi variabel, meliputi : ==, +=, -=, /=, **=, %=
- Opeartor relasi atau perbandingan, digunakan untuk membandingkan dua nilai, menghasilkan sebuah nilai boolean true dan false, meliputi : ==, >, <, >=, <=, !=
- Operator Logika, digunakan untuk membandingkan dua nilai, menghasilkan sebuah nilai boolean true dan false, meliputi : &&, ||, !
- Operator Bitwise, digunakan untuk operasi berdasarkan bit (biner), meliputi : &, |, ^, ~, <<, >>, <<<, >>>
- Operator Ternary, operator yang teridiri dari tiga bagian, terdiri dari bagian kiri, tengah, dan kanan, meliputi : ?
- Percabangan, terdiri dari :
- if, merupakan percabangan yang hanya memiliki satu blok pilihan saat kondisi bernilai benar, misalnya :
<!DOCTYPE html> <html lang="en"> <head> <title>Percabangan if</title> </head> <body> <script> var totalBelanja = prompt("Total belanja?", 0); if(totalBelanja > 100000){ document.write("<h2>Selamat Anda dapat hadiah</h2>"); } document.write("<p>Terima kasih sudah berbelanja di toko kami</p>"); </script> </body> </html>
- if else, merupakan percabangan yang memiliki dua blok pilihan, Pilihan pertama untuk kondisi benar, dan pilihan kedua untuk kondisi salah (else), misalnya :
<!DOCTYPE html> <html lang="en"> <head> <title>Percabangan if/else</title> </head> <body> <script> var password = prompt("Password:"); if(password == "kopi"){ document.write("<h2>Selamat datang bos!</h2>"); } else { document.write("<p>Password salah, coba lagi!</p>"); } document.write("<p>Terima kasih sudah menggunakan aplikasi ini!</p>"); </script> </body> </html>
- if else if, merupakan percabangan yang memiliki lebih dari dua blok pilihan, misalnya :
<!DOCTYPE html> <html lang="en"> <head> <title>Percabangan if/else/if</title> </head> <body> <script> var nilai = prompt("Inputkan nilai akhir:"); var grade = ""; if(nilai >= 90) grade = "A" else if(nilai >= 80) grade = "B+" else if(nilai >= 70) grade = "B" else if(nilai >= 60) grade = "C+" else if(nilai >= 50) grade = "C" else if(nilai >= 40) grade = "D" else if(nilai >= 30) grade = "E" else grade = "F"; document.write(`<p>Grade anda: ${grade}</p>`); </script> </body> </html>
- switch/case, merupakan bentuk lain dari percabangan if/else/if, misalnya :
<!DOCTYPE html> <html lang="en"> <head> <title>Percabangan switch/case</title> </head> <body> <script> var jawab = prompt("Kamu beruntung! Silakan pilih hadiahmu dengan memasukkan angka 1 sampai 5"); var hadiah = ""; switch(jawab){ case "1": hadiah = "Tisu"; break; case "2": hadiah = "1 Kotak Kopi"; break; case "3": hadiah = "Sticker"; break; case "4": hadiah = "Minyak Goreng"; break; case "5": hadiah = "Uang Rp 50.000"; break; default: document.write("<p>Opps! anda salah pilih</p>"); } if(hadiah === ""){ document.write("<p>Kamu gagal mendapat hadiah</p>"); } else { document.write("<h2>Selamat kamu mendapatkan " + hadiah + "</h2>"); } </script> </body> </html>
- itenary, merupakan bentuk lain dari percabangan if/else, misalnya :
<!DOCTYPE html> <html lang="en"> <head> <title>Percabangan Ternary</title> </head> <body> <script> var jwb = prompt("Apakah Jakarta ibu kota indonesia?"); var jawaban = (jwb.toUpperCase() == "IYA") ? "Benar": "Salah"; document.write(`Jawaban anda: <b>${jawaban}</b>`); </script> </body> </html>
- nested, untuk membuat blok percabangan di dalam percabangan, misalnya :
<!DOCTYPE html> <html lang="en"> <head> <title>Percabangan Ternary</title> </head> <body> <script> var username = prompt("Username:"); var password = prompt("Password:"); if(username == "petanikode"){ if(password == "kopi"){ document.write("<h2>Selamat datang pak bos!</h2>"); } else { document.write("<p>Password salah, coba lagi!</p>"); } } else { document.write("<p>Anda tidak terdaftar!</p>"); } </script> </body> </html>
- if, merupakan percabangan yang hanya memiliki satu blok pilihan saat kondisi bernilai benar, misalnya :
- Perulangan, untuk mengeksekusi kode yang berulang-ulang, secara umum dibagi dua, yaitu :
- counted loop, merupakan perulangan yang jelas dan sudah jelas jumlah banyak perulangannya, meliputi : Perulangan For, Foreach, Repeat, misalnya :
- <script>
let text = "Hello world!";
let result = text.repeat(2);document.getElementById("demo").innerHTML = result;
</script> - const numbers = [1, 5, 6, 8, 9, 3];numbers.forEach((elemen, indeks, array) => {
console.log('elemen:', elemen, 'indeks:', indeks, 'array:', array);
}); for(counter = 0; counter < 50; counter+=2){ document.write("<p>Perulangan ke-"+counter+"</p>"); }
for(let i = 0; i < 10; i++){ document.write("<p>Perulangan ke-" + i + "</p>") }
- <script>
- uncounted loop, merupakan perulangan yang tidak jelas berapa kali ia harus mengulang, meliputi : Perulangan While, Do/While, misalnya :
var ulangi = confirm("Apakah anda mau mengulang?");; var counter = 0; do { counter++; ulangi = confirm("Apakah anda mau mengulang?"); } while(ulangi) document.write("Perulangan sudah dilakukan sebanyak "+ counter +" kali");
var ulangi = confirm("Apakah anda mau mengulang?"); var counter = 0; while(ulangi){ counter++; ulangi = confirm("Apakah anda mau mengulang?"); } document.write("Perulangan sudah dilakukan sebanyak "+ counter +" kali");
- counted loop, merupakan perulangan yang jelas dan sudah jelas jumlah banyak perulangannya, meliputi : Perulangan For, Foreach, Repeat, misalnya :
- Struktur data, merupakan cara-cara atau metode yang digunakan untuk menyimpan data di dalam memori komputer, salah satunya menggunakan Array, yang merupakan struktur data yang digunakan untuk menyimpan sekumpulan data dalam satu tempat, Ada dua cara yang bisa dilakukan untuk menambah data ke dalam array, yaitu : Mengisi menggunakan indeks dan method,push(), sedangkan suntuk menghapus data memiliki dua cara, yaitu : Menggunakan delete dan method.pop(). Adapun metode array lainnya antara lain :
- Method filter(), berfungsi untuk menyaring data dari array, seperti method forEach(), yaitu : sebuah fungsi callback, misalnya :
- const numbers = [1, 5, 6, 8, 9, 3];const callbackFn = (elemen, indeks, array) => {
console.log('elemen:', elemen, 'indeks:', indeks, 'array:', array);
};numbers.forEach(callbackFn);
- const numbers = [1, 5, 6, 8, 9, 3];const callbackFn = (elemen, indeks, array) => {
- Method includes(), berfungsi untuk mengecek apakah sebuah data ada di dalam array atau tidak. digunakan untuk melakukan pencarian untuk memastikan data sudah ada di dalam array, misalnya :
- <!DOCTYPE html>
<html>
<body><h1>JavaScript Strings</h1>
<h2>The includes() Method</h2><p>includes() returns true if a string contains a specified string.</p><p>Find "world":</p><p id="hasil"></p>
<p>includes() is not supported in Internet Explorer.</p>
<script>
let text = "Hello world, welcome to the universe.";
let result = text.includes("world");document.getElementById("hasil").innerHTML = result;
</script></body>
</html>
- <!DOCTYPE html>
- Method sort(), berfungsi untuk mengurutkan data pada array, misalnya :
- <!DOCTYPE html>
<html>
<body>
<h1>JavaScript Arrays</h1>
<h2>The sort() Method</h2><p>The sort() method sorts an array alphabetically:</p><p id="demo1"></p>
<p id="demo2"></p><script>
const fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo1").innerHTML = fruits;fruits.sort();
document.getElementById("demo2").innerHTML = fruits;
</script></body>
</html>
- <!DOCTYPE html>
- Method filter(), berfungsi untuk menyaring data dari array, seperti method forEach(), yaitu : sebuah fungsi callback, misalnya :
DOM JS
- Salah satu tugas utama Javascript di dalam web adalah membuat halaman web agar terlihat dinamis dengan bantuan DOM (Document Object Model),
- DOM merupakan dokumen (HTML) yang dimodelkan dalam sebuah objek, yang menyediakan sekumpulan fungsi dan atribut/data yang dimanfaatkan dalam membuat program Javascript, yang disebut API (Application
Programming Interface). - Objek DOM di javascript bernama document, yang berisi segala hal yang kita butuhkan untuk memanipulasi HTML, Jika kita coba ketik document pada console Javascript, maka yang akan tampil adalah kode HTML.
- DOM juga menyediakan fungsi untuk membuat elemen HTML, Salah satunya adalah fungsi createElement(). Maka, akan tercipta elemen <p> baru. Namun tidak akan ditampilkan ke dalam halaman web, Karena belum
menambahkannya ke dalam body dokumen. Caranya bisa gunakan fungsi append(). - Jika kita menggunakan fungsiappend() untuk menambahkan elemen, untuk menghapusnya menggunakan
fungsi remove(). - Contoh penggunaan DOM :
- <!DOCTYPE html>
<html>
<body><h2>My First Page</h2><p id="demo"></p><script>
document.getElementById("demo").innerHTML = "Hello World!";
</script></body>
</html> - <!DOCTYPE html><html><body><h2>JavaScript HTML DOM</h2><p>Finding HTML Elements by Tag Name.</p><p>This example demonstrates the <b>getElementsByTagName</b> method.</p><p id="demo"></p><script>const element = document.getElementsByTagName("p");document.getElementById("demo").innerHTML = 'The text in first paragraph (index 0) is: ' + element[0].innerHTML;</script></body></html>
- <!DOCTYPE html><html><body><h2>JavaScript HTML DOM</h2><p>Finding HTML Elements by Class Name.</p><p class="intro">Hello World!</p><p class="intro">This example demonstrates the <b>getElementsByClassName</b> method.</p><p id="demo"></p><script>const x = document.getElementsByClassName("intro");document.getElementById("demo").innerHTML ='The first paragraph (index 0) with class="intro" is: ' + x[0].innerHTML;</script></body></html>
- <!DOCTYPE html>
AKSI NYATA
- Perusahaan Travel ”FD Produk” mempunyai armada dengan tujuan :
- Jakarta harga tiket 100.000
- Cirebon harga tiket 150.000
- Tasikmalaya harga tiket 200.000
- Diskon 10 % untuk member
- Subtotal : Harga tiket X Jumlah tiket
- Diskon : 0.10 X Subtotal
- Total : Subtotal - Diskon
- Buat Program dengan menggunakan Javascript dengan ketentuan sebagai berikut :
- Input : Nama pemesan, Tujuan, Jumlah Tiket, Member
- Output : Harga Tiket, Sub Total, Diskon, Total Bayar, hitung, ulang
- <!DOCTYPE html><HTML><HEAD><TITLE>Kasir Travel</TITLE></HEAD><BODY><SCRIPTlanguage="JavaScript"><!--function hitungtotal(){var nama = (document.fform.inama.value);var tujuan = (document.fform.itujuan.value);var jumlahtiket = parseFloat(document.fform.ijumlah.value);var ht = 0.0;var sub = 0.0;var diskon =0.0;var total =0.0;if (tujuan=="Jakarta"){ht =100000;}else if (tujuan=="Cirebon"){ht =150000;}else{ht =200000;}sub = jumlahtiket*ht;if (document.fform.imember.checked==true){diskon =0.10*sub;}else{diskon=0.0;}total = sub-diskon;document.fform.otiket.value=eval(ht);document.fform.osub.value=eval(sub);document.fform.odiskon.value=eval(diskon);document.fform.ototal.value=eval(total);// gunakan untuk mengecek !!! alert (total);}//--></SCRIPT><FORMNAME ="fform"><tableborder="1"align="center"width="70%"><tr><tdwidth="100%"colspan="2"><H2ALIGN="center">Travel FD Produk</H2></td></tr><tr><tdwidth="50%"><PRE>Nama :<inputtype="text"size="20"name="inama">Tujuan :<selectname="itujuan"size=1><optionvalue="Jakarta">Jakarta</option><optionvalue="Cirebon">Cirebon</option><optionvalue="Tasikmalaya">Tasikmalaya</option></select>Jumlah Tiket :<inputtype="text"size="11"name="ijumlah">Member :<inputtype="checkbox"name="imember">Ya</td></pre><tdwidth="50%"><pre>Harga Tiket :<inputtype="text"size="10"name="otiket">Sub Total :<inputtype="text"size="10"name="osub">Diskon :<inputtype="text"size="10"name="odiskon">Total Bayar :<inputtype="text"size="10"name="ototal"></td><pre></tr><tr><tdwidth="100%"colspan="2"><center><INPUTTYPE="button"value="Hitung"onclick="hitungtotal()"><INPUT TYPE="reset" value="Ulang"></center></td></tr></table></FORM></BODY></HTML>
LAMPIRAN :
KODING : PHYTON
Python merupakan bahasa pemrograman yang dikembangkan pada tahun 1980 oleh Guido van Rossum dari Belanda dengan nama ABC, kemudian rilis Python 1.0 pada tahun 1994 dan Python 2.0 pada 2000 serta Python 3.0 pada tahun 2008 yang lisensi open source dan general public license (GPL) sehingga dapat digunakan secara gratis dan didistribusikan dengan bebas bahkan untuk kepentingan komersial
Python mendukung teknik pemrograman berorientasi object (object oriented programming/OOP) maupun pemrograman berbasis fungsi (functional programming), untuk informasi lanjut silahkan ke laman https://www.python.org/. Untuk menggunakan Python dapat dilakukan secara online di laman https://replit.com dan offline dengan cara mendownload source code di laman https://www.python.org/downloads/ kemudian di install. Untuk menjalankan Python dapat dilakukan menggunakan :
- Shell, digunakan pada OS Linux dan Mac, dengan menekan CTRL+ALT+T
- Terminal, digunakan OS Windows. dengan mencari IDLE di tombol START
- IDE (Integrated Development Environment), seperti Visual Code Studio, atau VSCODE
DASAR PEMOGRAMAN PYTHON
- Variabel, merupakan tempat untuk menyimpan data dalam sebuah program, berupa angka atau numerik, karakter atau teks, boolean dan jenis-jenis data lainnya. Ada beberapa hal yang harus diperhatikan dalam pemberian nama variabel, yaitu :
- Karakter pertama dari nama variabel harus berupa huruf atau garis bawah dan tidak boleh berupa angka.
- Karakter-karakter yang dapat digunakan di dalam nama variabel hanyalah karakter alfanumerik (A–Z, a–z, 0–9) dan garis bawah (_).
- Karakter pada nama variabel bersifat sensitif (case-sensitif). Artinya huruf kecil dan huruf besar dibedakan
- Nama variabel tidak boleh menggunakan kata kunci bahasa pemrograman Python, karena digunakan sebagai perintah untuk menjalankan fungsi tertentu, seperti : and, assert, break, class, continue, def, del, elif, else, except, exec, finally, for, from, global, if, import, in, is, lambda, not, or, pass, print, raise, return, try, dan while
- misalnya : dompet = 10000
- Numerik atau angka. variabel dapat menyimpan dua jenis data numerik, yaitu :
- Integer, adalah bilangan bulat, sebuah bilangan yang tidak memiliki nilai desimal di dalamnya, seperti : 10, 12, dll
- Float, adalah bilangan yang memiliki nilai desimal didalamnya. seperti : 79,20 ; 0,01 dll
- misalnya :
- untuk penjumlahan : print (10 +2), hasilnya 12
- untuk pengurangan : print (17,5 - 12,2), hasilnya 5,3
- untuk pembagian : print (12 // 5), hasilnya 2 yaitu hasil pembagian bulatnya
- untuk modulo ; print (10 % 3), hasilnya 1 yaitu sisa pembagiannya
- String atau text. variabel dapat menyimpan text atau karakter, dengan memperhatikan anturan berikut :
- Gunakan Tanda petik tunggal di depan dan di belakang text, seperti buah = 'mangga'
- Gunakan tanda petik ganda tiga kali di depan dan di belakang teks yang dituliskan lebih dari satu baris, seperti buah = ''' jambu nanas duren '''
- Gunakan Tanda petik ganda di depan dan di belakang text yang ada tanda petik tunggal, seperti buku = " emerald's "
- Gunakan Tanda backslash (\) sebelum tanda petik tunggal dan tanda petik ganda pada teks, seperti berita = ' Red Devil\'s semakin \"menggila\" di liga FA '
- Gunakan operasi penjumlahan untuk mengabungkan string, seperti : a = "ikan", b = "segar", c = a + b, hasilnya ikansegar
- Operasi pengurangan, perkalian, pembagian, dan modulo tidak berlaku pada variabel-variabel yang memiliki nilai string atau teks.
- String-f, menempatkan variabel di dalam string atau teks yang ingin ditampilkan dengan menggunakan tanda
kurung kurawal { }, misalnya :- hari = 'Sabtu'
- tanggal = 12
- bulan = 'Maret'
- tahun = 2022
- kondisi_cuaca = 'hujan'
- print (f'Kondisi cuaca pada hari {hari}, tanggal {tanggal} {bulan} {tahun} adalah {kondisi_cuaca}.')
- Boolean dan If Statement, nilai boolean yang valid dalam bahasa pemrograman Python adalah True atau False, sedangkan if statement digunakan untuk membuat keputusan dari nilai boolean dan penulisannya agak menjorok kekanan, misalnya :
- kipas_angin = True
- if kipas_angin:
- print ('Anda memiliki sirkulasi udara yang baik.')
- Else Statement dan Perbandingan, berfungsi sebagai alternatif bagian yang harus dijalankan oleh program pada saat kondisi pada if statement di atasnya bernilai False, misalnya :
- umur = 30
- if umur >= 18 :
- print('Anda masuk ke dalam kategori dewasa.')
- else :
- print('Anda masih belum dewasa.')
- Operator Logika, Ada tiga operator kondisional utama dalam bahasa pemrograman Python, yaitu :
- operator logika, ada tiga jenis, yaitu and, or, dan not, misalnya :
- tinggi = 170
berat = 80
if tinggi >= 100 and berat < 100:
print('Anda berhak menaiki wahana ini.')
else:
print('Anda tidak boleh menaiki wahana ini.') - umur = 15
menikah = True
if umur >= 18 or menikah:
print('Anda masuk ke dalam kategori dewasa.')
else:
print('Anda masih belum dewasa.') - umur = 16
menikah = False
if umur >= 18 or not menikah:
print('Anda masuk ke dalam kategori dewasa.')
else:
print('Anda masih belum dewasa.')
- tinggi = 170
- operator identitas, digunakan untuk membandingkan dua data di dalam sebuah program untuk mengetahui apakah kedua data tersebut sama atau tidak sama. Terdapat dua jenis operator identitas, yaitu is dan is not serta serupa dengan fungsi
dari operator perbandingan “==” dan “!=”, misalnya :- makanan_favorit_1 = 'rendang'
makanan_favorit_2 = "rendang"
makanan_favorit_3 = 'sate'
if makanan_favorit_1 is makanan_favorit_2:
print('Kedua data adalah sama. ')
else:
print('Kedua data adalah berbeda. '), hasilnya kedua data adalah sama - makanan_favorit_1 = 'rendang'
makanan_favorit_2 = "rendang"
makanan_favorit_3 = 'sate'
if makanan_favorit_1 is not makanan_favorit_3:
print('Kedua data adalah berbeda. ')
else:
print('Kedua data adalah sama. '), hasilnya kedua data adalah berbeda
- makanan_favorit_1 = 'rendang'
- operator keanggotaan, berfungsi untuk mengetahui apakah sebuah nilai yang dibandingkan merupakan anggota dari sekumpulan nilai yang biasanya direpresentasikan di dalam sebuah list atau tuple, yaitu in dan not in. misalnya :
- makanan_favorit = ('rendang', 'sate', 'nasi goreng')
makanan = 'bakso'
if makanan in makanan_favorit:
print('Makanan tersebut adalah makanan favorit Anda.')
else:
print('Makanan tersebut bukan makanan favorit Anda.'), hasilnya Makanan tersebut bukan makanan favorit Anda. - makanan_favorit = ('rendang', 'sate', 'nasi goreng')
makanan = 'bakso'
if makanan not in makanan_favorit:
print('Makanan tersebut bukan makanan favorit Anda.')
else:
print('Makanan tersebut adalah makanan favorit Anda.'), hasilnya Makanan tersebut bukan makanan favorit Anda.
- makanan_favorit = ('rendang', 'sate', 'nasi goreng')
- operator logika, ada tiga jenis, yaitu and, or, dan not, misalnya :
- Bilangan Acak atau Random, merupakan modul bawaan dari Python yang berfungsi sebagai bilangan acak, untuk mengaktifkannya dengan import modulnya, ada 2 perintah yaitu random untuk menghasilkan bilangan acak float dan randint untuk menghasilkan bilangan acak integer, misalnya :
- import random
print(random.random()), hasilnya 0.6779798068622993 - import random
print(random.randint(1, 7)), hasilnya 1,2,3,4,5,6,7
- import random
- Kutipan Acak, untuk menampilkan kutipan atau keterangan yang berubah secara acak saat program dijalankan, misalnya :
- import random
nomor_1 = random.randint(0, 999)
nomor_2 = random.randint(0, 999)
nomor_3 = random.randint(0, 999)
pilihan_kutipan = random.randint(1, 3)
if pilihan_kutipan == 1:
kutipan = '''
"Tulislah sendiri buku yang tak kau temukan ketika kau
cari."
~ Budhi Gustiandi, 2022 ~
'''
elif pilihan_kutipan == 2:
kutipan = '''
"Jika kau merasa sakit karena suatu perbuatan,
belajarlah untuk tidak melakukan perbuatan tersebut
ke orang lain."
~ Anonim ~
'''
elif pilihan_kutipan == 3:
kutipan = '''
"Suatu pekerjaan yang paling tak kunjung bisa
diselesaikan adalah pekerjaan yang tak kunjung pernah
dimulai. "
~ J.R.R. Tolkien ~
'''
print(f'''
Kutipan hari ini:
{kutipan}
Nomor keberuntungan Anda: {nomor_1}-{nomor_2}-{nomor_3}
''')
- import random
- List, sebuah daftar yang berisi data secara berurutan, dapat berisi campuran dari jenis-jenis data yang dapat digunakan di dalam bahasa pemrograman Python. Cara membuat sebuah list dengan membuat sebuah variabel, dan memberikan tanda sama dengan, serta memberikan kurung siku buka dan tutup, adapun urutan di dalam List yang dimulai dari urutan Ke-0. Didalam list dapat ditambahkan perintah lainnya, seperti :
- List, misalnya :
- makanan_favorit = ['rendang', 'sate', 'nasi goreng']
print(makanan_favorit[1]), hasilnya sate
- makanan_favorit = ['rendang', 'sate', 'nasi goreng']
- len, kependekan dari length, untuk mengetahui panjang sebuah list, mjsalnya :
- makanan_favorit = ['rendang', 'sate', 'nasi goreng']
print(len(makanan_favorit) len(makanan_favorit)), hasilnya 3
- makanan_favorit = ['rendang', 'sate', 'nasi goreng']
- .append(), untuk menambahkan data baru ke dalam list pada urutan terakhir, misalnya :
- makanan_favorit = ['rendang', 'sate', 'nasi goreng']
makanan_favorit.append('bakso')
print(makanan_favorit), hasilnya ['rendang', 'sate', 'nasi goreng', 'bakso']
- makanan_favorit = ['rendang', 'sate', 'nasi goreng']
- .insert(), untuk menambahkan data baru sesuai urutan yang dinginkan, dengan memasukkan dua nilai ke dalam tanda kurungnya dengan masing-masing nilai dipisahkan oleh tanda koma, misalnya :
- makanan_favorit = ['rendang', 'sate', 'nasi goreng']
makanan_favorit.insert(2, 'soto')
print(makanan_favorit). hasilnya ['rendang', 'sate', 'soto', 'nasi goreng']
- makanan_favorit = ['rendang', 'sate', 'nasi goreng']
- del(), untuk menghapus data pada list, dengan menuliskan nama list dan urutan yang akan dihapus dengan tanda kurung siku, misalnya :
- makanan_favorit = ['rendang', 'sate', 'nasi goreng']
del(makanan_favorit[1])
print(makanan_favorit), hasilnya ['rendang', 'nasi goreng']
- makanan_favorit = ['rendang', 'sate', 'nasi goreng']
- List, misalnya :
- Tuple, untuk membuat daftar data yang tidak akan berubah, dengan menggunakan tanda kurung biasa, misalnya :
- makanan_favorit = ('rendang', 'sate', 'nasi goreng')
- For loop, untuk menjalankan bagian kode beberapa kali, caranya dengan mengetikkan for, diikuti spasi, diikuti oleh nama variabel, diikuti spasi, diikuti in, diikuti spasi, dan diikuti range()dan masukkan sejumlah angka di dalam tanda kurung tersebut, pada baris berikutnya (jangan lupa untuk memberikan spasi atau tab sehingga baris kode menjadi agak menjorok ke dalam dan agar baris kode tersebut menjadi bagian dari for loop), Anda ketikkan print(), misalnya :
- for nomor in range(500):
print(nomor), hasilnya 0 sampai 499 - makanan_favorit = ('rendang', 'sate', 'nasi goreng')
for makanan in makanan_favorit:
print(makanan), hasilnya rendang, sate, nasi goreng
- for nomor in range(500):
- Dictionary, untuk membuat dafatar data, dengan menggunakan kurung kurawal yang terdiri dari key dan value, dimana masing-masing isi dipisahkan oleh tanda baca koma dan pasangan key-value dipisahkan oleh tanda baca titik dua, misalnya :
- keluarga = {'Budhi' : 'Agustus', 'Ratih' : 'September', 'Pradya' : 'November'}
print(keluarga['Budhi']), hasilnya Agustus - untuk menambahkan data, misalnya :
- keluarga = {'Budhi' : 'Agustus', 'Ratih' : 'September', 'Pradya' : 'November'}
print()
keluarga['Vrasya'] = 'Mei'
keluarga['Farsya'] = 'Oktober'
print(keluarga), hasilnya {'Budhi' : 'Agustus', 'Ratih' : 'September', 'Pradya' : 'November', 'Vrasya' : 'Mei', 'Farsya' : 'Oktober' , 'Vrasya' : 'Mei', 'Farsya' : 'Oktober'}
- keluarga = {'Budhi' : 'Agustus', 'Ratih' : 'September', 'Pradya' : 'November'}
- untuk menghapus data, misalnya :
- keluarga = {'Budhi' : 'Agustus', 'Ratih' : 'September', 'Pradya' : 'November'}
print()
del(keluarga['Ratih'])
print(keluarga), hasilnya {'Budhi' : 'Agustus', 'Pradya' : 'November'}
- keluarga = {'Budhi' : 'Agustus', 'Ratih' : 'September', 'Pradya' : 'November'}
- untuk menghitung jumlah data, misalnya :
- keluarga = {'Budhi' : 'Agustus', 'Ratih' : 'September', 'Pradya' : 'November'}
print(len(keluarga)), hasilnya 3
- keluarga = {'Budhi' : 'Agustus', 'Ratih' : 'September', 'Pradya' : 'November'}
- keluarga = {'Budhi' : 'Agustus', 'Ratih' : 'September', 'Pradya' : 'November'}
- Split, untuk memisahkan teks menjadi list, dengan cara menambahkan tanda kurung biasa, misalnya :
- teks = ''' Pandemi COVID-19 telah memaksa dan menjadi katalisator penting dalam mengubah secara radikal aktivitas hidup
manusia dari offline ke online. '''
teks_dalam_list = teks.split()
print(teks_dalam_list), hasilnya ['Pandemi', 'COVID-19', 'telah', 'memaksa', 'dan', 'menjadi', 'katalisator', 'penting', 'dalam', 'mengubah', 'secara', 'radikal', 'aktivitas', 'hidup', 'manusia', 'dari', 'offline', 'ke', 'online.'] - teks = ''' Pandemi COVID-19 telah memaksa dan menjadi katalisator penting dalam mengubah secara radikal aktivitas hidup
manusia dari offline ke online. '''
teks_dalam_list = teks.split()
print(len(teks_dalam_list) teks_dalam_list)), hasilnya 19
- teks = ''' Pandemi COVID-19 telah memaksa dan menjadi katalisator penting dalam mengubah secara radikal aktivitas hidup
- Fungsi, merupakan cara untuk memberi nama pada baris kode yang ada di dalam program, dimulai dengan def (define) kemudian spasi dan nama dalam tanda kurung biasa, misalnya :
- def sapa():
print('Selamat pagi.')
sapa(), hasilnya Selamat Pagi
- def sapa():
- Parameter, cara untuk memberi masukan ke dalam sebuah fungsi, dimasukkan di dalam tanda kurung yang mengikuti sebuah fungsi, misalnya :
- def salam_kenal(pemberi_salam):
print(f'Perkenalkan nama saya {pemberi_salam}.')
salam_kenal('Budhi'), hasilnya : Perkenalkan nama saya Budhi
- def salam_kenal(pemberi_salam):
- Return, untuk mengembalikan informasi yang dihasilkan oleh sebuah fungsi, misalnya :
- def tiga_kali_lipat(bilangan):
return bilangan * 3
hasil_perkalian = tiga_kali_lipat(7)
print(hasil_perkalian), hasilnya 21
- def tiga_kali_lipat(bilangan):
- Komentar, untuk memberikan keterangan dan tidak akan di eksekusi dengan menambahkan tanda #, misalnya :
- # Buatlah sebuah list yang terdiri dari minimal tiga teks di dalamnya
daftar_nama = ['Budhi', 'Ratih', 'Pradya'] # masukkan nama orang
- # Buatlah sebuah list yang terdiri dari minimal tiga teks di dalamnya
- Input, untuk memasukan data pada program dalam tanda kurung, misalnya :
- nama_lengkap = input('Masukkan nama lengkap Anda: ') # misalnya : Budhi Gustiandi
print(f'Nama lengkap Anda adalah {nama_lengkap})
hasilnya : Masukkan nama lengkap Anda: Budhi Gustiandi
Nama lengkap Anda adalah Budhi Gustiandi
- nama_lengkap = input('Masukkan nama lengkap Anda: ') # misalnya : Budhi Gustiandi
- .lower, untuk merubah ke huruf kecil, misalnya :
- kalimat = "Hello?"
- print(kalimat.lower()), hasilnya hello?
- .upper, untuk merubah ke huruf kapital, misalnya :
- kalimat = "Hello?"
- print(kalimat.upper()), hasilnya HELLO?
- while loop, merupakan kombinasi dari if statement dan for loop, dijalankan selama kondisi yang dipersyaratkannya bernilai True dan akan dihentikan ketika kondisi yang dipersyaratkannya bernilai False, cara penulisannya dengan mengetikkan while, spasi, kemudian kondisi yang bernilai True, dan tanda baca titik dua, misalnya :
- import random
bilangan = random.randint(1, 10)
tebakan = int(input('Berapakah bilangan yang telah dipilih? Tebakan Anda: ))
jumlah_tebakan = 1 - while tebakan != bilangan:
jumlah_tebakan += 1
tebakan = int(input('Berapakah bilangan yang telah dipilih? Tebakan Anda: )) - print(f'Anda berhasil menebak dengan benar setelah {jumlah_tebakan} kali menebak.')
- import random
- time, menggunakan perintah import time, dengan mengetikkan perintah time.sleep() dan memberikan bilangan integer di dalam tanda kurungnya, misalnya :
- import time
print('Selamat datang di dalam permainan tebak angka.')
time.sleep(2)
print('Pada permainan ini Anda diminta untuk menebak bilangan di antara 1 dan 100.')
time.sleep(3)
print('Program akan memilih bilangan di antara 1 dan 100 secara acak.') - time.sleep(3) time.sleep(3)
print('Memilih bilangan...')
time.sleep(2) time.sleep(2)
import random
bilangan = random.randint(1, 100)
tebakan = int(input('Berapakah bilangan yang telah dipilih? Tebakan Anda: ))
jumlah_tebakan = 1
while tebakan != bilangan:
jumlah_tebakan += 1
if tebakan < bilangan:
tebakan = int(input('''Tebakan Anda masih salah. Anda harus menebak bilangan yang lebih besar lagi.
Berapakah bilangan yang telah dipilih? Tebakan Anda: '''))
else:
tebakan = int(input('''Tebakan Anda masih salah. Anda harus menebak bilangan yang lebih kecil lagi.
Berapakah bilangan yang telah dipilih? Tebakan Anda: '''))
print(f'Anda berhasil menebak dengan benar setelah {jumlah_tebakan} kali menebak.')
- import time
AKSI NYATA
- Kedai kopi F&D Coffe menjual minuman kopi dengan berbagai pilihan menu, pada usaha kedai kopi ini sudah masuk (PKP) Pengusaha Kena Pajak. Dengan begitu penjual atau pengusaha memberikan pungutan tambahan biaya sebesar 10% atau ppn saat pembelian minuman kopi, berikut detai kasir penjualan minuman kopi :
- Untuk proses penginputan pada mesin kasir perlu memasukkan list abjad urutan menu yang tersedia (1,2,3, dan 4), kemudian lanjut ke input jumlah pesan.
- Jika proses input tidak sesuai dengan list menu yang tersedia maka akan muncul notif proses input tidak tersedia dan akan di berikan pilihan untuk melanjutkan order atau tidak
- Jika Y proses akan lanjut ke print invoice yang kosong dan di alihkan ke tampilan utama kembali untuk bisa melakukan input dari awal. Jika memilih N proses akan print invoice kosong dan proses selesai.
- Kemudian untuk menu dengan urutan a dan b sedang ada diskon 20% setiap pembelian dalam jumlah pesan 5 ke atas, diskon = int(harga*0.2), totalharga=int(harga-diskon+ppn)
- Penambahan pungutan biaya ppn 10% kepada pembeli, ppn= int(harga * 0.1), harga=11000*jumlahpesan), totalharga=int(harga+ppn)
- Proses print melakukan print menu yang dipilih, jumlah pesan, harga*jumlahpesan, diskon, ppn, dan jumlah bayar atau total harga yang harus dibayar.
- Di akhir ada pilihan untuk lanjut order atau berhenti jika, pilihan Y akan lanjut seperti awal, jika input N program akan berhenti.
- Daftar Harga :
INISIALISASI LIST MENU KOPI HARGA MENU KOPI 1 ES Kopi Susu Rp 11.000 2 ES Kopi Coklat Rp 12.000 3 ES Kopi Hitam Rp 10.000 4 ES Kopi Americano Rp 13.000
- Kedai kopi F&D Coffe menjual minuman kopi dengan berbagai pilihan menu, pada usaha kedai kopi ini sudah masuk (PKP) Pengusaha Kena Pajak. Dengan begitu penjual atau pengusaha memberikan pungutan tambahan biaya sebesar 10% atau ppn saat pembelian minuman kopi, berikut detai kasir penjualan minuman kopi :
- List Program
pilihan="y"
while pilihan=="y":
print("""
==============================
F&D Coffe
Daftar Menu
==============================
1. ES Kopi Susu : Rp 11.000
2. ES Kopi Coklat : Rp 12.000
3. ES Kopi Hitam : Rp 10.000
4. Ice Americano : Rp 13.000
==============================
""")
pesan=str(input("masukkan list abjad menu kopi ="))
jumlahpesan=int(input("masukkan jumlah pesanan ="))
if pesan == "1":
listnama= "ES Kopi Susu"
harga=(11000*jumlahpesan)
ppn= int(harga * 0.1)
if jumlahpesan >= 5:
diskon = int(harga*0.2)
totalharga=int(harga-diskon+ppn)
else:
diskon =(0)
totalharga=int(harga+ppn)
elif pesan == "2":
listnama= "ES Kopi Coklat"
harga = (12000*jumlahpesan)
ppn = int(harga * 0.1)
if jumlahpesan >= 5:
diskon = int(harga * 0.2)
totalharga =int(harga-diskon+ppn)
else:
diskon =(0)
totalharga =int(harga+ppn)
elif pesan == "3":
listnama= "ES Kopi Hitam"
harga=int(10000*jumlahpesan)
ppn = int(harga * 0.1)
diskon=0
totalharga=int(harga+ppn)
elif pesan == "4":
listnama= "ES Americano"
harga=int(13000*jumlahpesan)
ppn = int(harga * 0.1)
diskon=0
totalharga = int(harga+ppn)
else:
listnama = "-"
harga = "-"
ppn = "-"
diskon = "-"
totalharga = "-"
pilihan=input("menu tidak tersedia, silahkan masukkan kode menu yang tersedia silahkan ulangi kembali Y/N =")
print("--------------------------")
print("F&D Coffe")
print("--------------------------")
print("Menu :",listnama)
print("Jumlah Pesan :", jumlahpesan)
print("Harga :", harga)
print("Diskon :", diskon)
print("PPN :", ppn)
print("--------------------------")
print("Jumlah Bayar :", totalharga)
print("--------------------------")
pilihan=input("apakah anda ingin order kembali Y/N =")
Lampiran : File program kasir