Bagaimanakah cara Scanner memproses pelbagai jenis data dalam Java?
Dalam Java, kelas Scanner daripada pakej java.util digunakan untuk mendapatkan input daripada pengguna melalui pelbagai kaedah (method) yang khusus untuk jenis data yang berbeza.
Berikut adalah cara Scanner memproses pelbagai jenis data berdasarkan sumber yang diberikan:
• Integer (int): Menggunakan kaedah nextInt(). Ia digunakan untuk membaca nombor bulat, seperti ketika meminta input untuk bilangan subjek, umur, atau kuantiti barang.
• Perpuluhan (double): Menggunakan kaedah nextDouble(). Kaedah ini sesuai untuk data yang memerlukan ketepatan tinggi seperti harga barang atau pengiraan diskaun.
• Perpuluhan (float): Menggunakan kaedah nextFloat(). Ini sering digunakan untuk data seperti markah ujian atau nombor dalam kalkulator ringkas.
• Teks/String: Terdapat dua cara utama untuk memproses teks:
◦ nextLine(): Membaca seluruh baris input termasuk ruang kosong. Ini digunakan untuk nama penuh pelajar atau nama barang.
◦ next(): Membaca hanya satu perkataan atau token sehingga bertemu ruang kosong. Contohnya digunakan untuk mengambil input simbol operasi (+, -, *, /) atau jawapan ringkas seperti "ya" atau "tidak".
Langkah Umum Penggunaan:
1. Import: Perlu mengimport kelas dengan import java.util.Scanner;.
2. Inisialisasi: Mencipta objek Scanner, biasanya dinamakan input, dengan kod Scanner input = new Scanner(System.in);.
3. Panggilan Kaedah: Memanggil kaedah yang sesuai (seperti nextInt() atau nextLine()) untuk menangkap data yang dimasukkan oleh pengguna melalui papan kekunci
Apakah perbezaan antara kaedah next dan nextLine dalam Scanner?
Perbezaan utama antara kaedah next() dan nextLine() dalam kelas Scanner terletak pada cara mereka memproses ruang kosong dan jumlah teks yang dibaca:
• nextLine(): Kaedah ini digunakan untuk membaca seluruh baris input teks sebagai satu String. Ia akan menangkap semua perkataan yang ditaip oleh pengguna termasuk ruang kosong sehingga pengguna menekan punat 'Enter'. Dalam sumber yang diberikan, kaedah ini digunakan untuk mendapatkan input yang mungkin mempunyai lebih daripada satu perkataan seperti "nama barang" atau "nama pelajar".
• next(): Kaedah ini hanya membaca satu token atau satu perkataan sahaja. Ia akan berhenti membaca sebaik sahaja ia menemui ruang kosong (whitespace). Oleh itu, ia sangat sesuai untuk input ringkas tanpa ruang, seperti simbol operasi matematik (+, -, *, /), nama tunggal, atau jawapan pendek seperti "ya" dan "tidak"
SET ATUR CARA JAVA RINGKAS YANG MENERIMA INPUT PENGGUNA DAN TIDAK MELIBATKAN SK PILIHAN ATAU ULANGAN
Ketiga-tiga set ini memenuhi kehendak:
✔ 4 input pengguna
✔ Ada pengiraan matematik
✔ Papar hasil
✔ Kod mudah untuk pelajar asas
✔ TANPA guna if-else atau ulangan
🔹 SET 1 – Kira Jumlah dan Purata Empat Nombor Tulis satu atur cara Java yang: Meminta pengguna memasukkan empat nombor integer Mengira:
SET ATUR CARA JAVA RINGKAS YANG MENERIMA INPUT PENGGUNA DAN MELIBATKAN SK PILIHAN ATAU ULANGAN
🔷 SET 1 – Kalkulator Ringkas Dengan Pilihan Operasi
Tulis satu program Java yang:
Menerima input berikut: nombor pertama (float) nombor kedua (float) simbol operasi (String: + , - , * , / ) Menggunakan struktur kawalan if-else untuk memilih operasi Memaparkan hasil pengiraan
___________________________________
Contoh Output:
Masukkan nombor pertama:10Masukkan nombor kedua:5Masukkanoperasi(+-* /):*Hasil pengiraan:50.0
import java.util.Scanner;
public class KalkulatorMudah {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Masukkan nombor pertama: ");
float num1 = input.nextFloat();
System.out.print("Masukkan nombor kedua: ");
float num2 = input.nextFloat();
System.out.print("Masukkan operasi (+ - * /): ");
String operasi = input.next();
float hasil = 0;
if (operasi.equals("+")) {
hasil = num1 + num2;
}
else if (operasi.equals("-")) {
hasil = num1 - num2;
}
else if (operasi.equals("*")) {
hasil = num1 * num2;
}
else if (operasi.equals("/")) {
hasil = num1 / num2;
}
🔷 SET 2 – Kira Purata Markah Pelajar (Guna Struktur Ulangan)
Bina satu program Java yang:
Menerima input:
Nama pelajar (String)
Bilangan subjek (int)
Menggunakan struktur ulangan for untuk:
memasukkan markah setiap subjek (float)
Mengira purata markah
Memaparkan nama dan purata
____________________________________________
Contoh output:
Masukkan nama pelajar: Aisyah
Masukkan bilangan subjek: 3
Masukkan markah subjek 1: 80
Masukkan markah subjek 2: 70
Masukkan markah subjek 3: 90
Nama pelajar: Aisyah
Purata markah: 80.0
import java.util.Scanner;
public class PurataMarkah {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Masukkan nama pelajar: ");
String nama = input.nextLine();
System.out.print("Masukkan bilangan subjek: ");
int bil = input.nextInt();
float jumlah = 0;
for (int i = 1; i <= bil; i++) {
System.out.print("Masukkan markah subjek " + i + ": ");
float markah = input.nextFloat();
jumlah = jumlah + markah;
}
float purata = jumlah / bil;
System.out.println("Nama pelajar: " + nama);
System.out.println("Purata markah: " + purata);
}
}
🔷 SET 3 – Semak Umur Layak Lesen (Pilihan + Ulangan)
Tulis program Java yang: 1. Menerima input:
Nama pengguna (String)
Umur (int)
Jantina (String)
2. Menggunakan struktur kawalan if-else untuk:
menentukan sama ada layak memohon lesen memandu (umur ≥ 17)
Menggunakan while loop untuk mengulang program jika pengguna mahu cuba lagi
_______________________________________________
Contoh output:
Masukkan nama: Amir
Masukkan umur: 16
Masukkan jantina: Lelaki
Amir, anda BELUM layak memohon lesen.
Ingin semak lagi? (ya/tidak): ya
...
Terima kasih!
import java.util.Scanner;
public class SemakLesen {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
String ulang = "ya";
while (ulang.equalsIgnoreCase("ya")) {
System.out.print("Masukkan nama: ");
String nama = input.next();
System.out.print("Masukkan umur: ");
int umur = input.nextInt();
System.out.print("Masukkan jantina: ");
String jantina = input.next();
if (umur >= 17) {
System.out.println(nama + ", anda LAYAK memohon lesen memandu.");
} else {
System.out.println(nama + ", anda BELUM layak memohon lesen.");
}
System.out.print("Ingin semak lagi? (ya/tidak): ");
ulang = input.next();
}
System.out.println("Terima kasih!");
}
}
Dalam Sains Komputer 1️⃣ Strategi Penyelesaian Masalah 🔹 Definisi Masalah
Masalah ialah keraguan, situasi tidak diingini, cabaran atau peluang yang dihadapi dalam kehidupan seharian dan memerlukan penyelesaian.
🔹 Penyelesaian Masalah
Merupakan teras utama dalam sains komputer, di mana pengatur cara menterjemahkan idea atau kaedah penyelesaian kepada algoritma yang boleh difahami dan dilaksanakan oleh komputer.
➡️ Proses ini memerlukan pemikiran yang tersusun, logik dan sistematik.
2️⃣ Keperluan Strategi Penyelesaian Masalah
Strategi penyelesaian masalah yang berkesan penting kerana ia:
✅ Meningkatkan kemahiran berfikir aras tinggi
🗣️ Mewujudkan komunikasi dua hala (perbincangan & perkongsian idea)
📚 Menggalakkan pembelajaran kendiri
💡 Membantu pengembangan dan pemahaman konsep
➡️ Tanpa strategi, penyelesaian masalah menjadi tidak sistematik dan kurang berkesan.
3️⃣ Pemikiran Komputasional
Pemikiran komputasional ialah cara berfikir untuk memahami masalah yang kompleks dan membina penyelesaian yang munasabah, sama ada oleh manusia atau komputer.
Terdapat empat teknik utama:
🔹 1. Teknik Leraian (Decomposition)
Memecahkan masalah besar dan kompleks kepada bahagian-bahagian kecil yang lebih mudah difahami dan dikawal.
📌 Contoh umum: Memahami fungsi basikal dengan melihat komponen seperti tayar, brek dan rantai.
📌 Contoh aplikasi harian (sekolah): Masalah pembaziran bil elektrik dipecahkan kepada:
Lampu kelas tidak ditutup
Kipas dan penghawa dingin dibiarkan hidup
Komputer dan projektor tidak dimatikan
Tiada pemantauan selepas waktu sekolah
➡️ Masalah lebih jelas dan mudah ditangani.
🔹 2. Pengecaman Corak (Pattern Recognition)
Mengenal pasti persamaan atau corak berulang daripada bahagian masalah yang telah dileraikan.
📌 Contoh aplikasi harian:
Pembaziran elektrik berlaku setiap hari selepas tamat PdP
Berlaku di banyak kelas yang kosong
Peralatan elektrik sering dibiarkan terpasang
➡️ Corak utama dikenal pasti: Kelalaian mematikan peralatan elektrik apabila kelas tidak digunakan
🔹 3. Peniskalaan (Abstraction)
Menumpukan kepada maklumat penting sahaja dan mengabaikan perkara yang tidak relevan.
📌 Maklumat penting:
Peralatan elektrik perlu ditutup apabila kelas kosong
Tanggungjawab murid dan guru
📌 Maklumat tidak penting:
Jenama lampu
Warna kipas
Susun atur kelas
➡️ Fokus diberikan kepada disiplin dan kawalan penggunaan elektrik
🔹 4. Algoritma (Algorithms)
Membina langkah demi langkah arahan untuk menyelesaikan masalah secara sistematik.
📌 Algoritma Penjimatan Elektrik di Sekolah:
Ketua kelas memeriksa peralatan sebelum keluar kelas
Pastikan semua lampu, kipas dan penghawa dingin dimatikan
Guru terakhir menyemak keadaan kelas
Pengawas tenaga membuat rondaan selepas waktu sekolah
Catat kelas yang patuh
Beri ganjaran kepada kelas paling jimat elektrik
➡️ Masalah diselesaikan secara terancang dan berkesan.
4️⃣ Perwakilan Algoritma
Sebelum ditulis dalam bahasa pengaturcaraan (contohnya Java), algoritma biasanya diwakili dalam dua bentuk:
✍️ Pseudokod
Penulisan langkah penyelesaian menggunakan bahasa manusia yang ringkas
Mudah difahami oleh manusia
📊 Carta Alir
Perwakilan grafik atau rajah
Menunjukkan aliran langkah penyelesaian secara visual
➡️ Membantu murid memahami proses sebelum menulis kod sebenar.
🌱 Kesimpulan
Pemikiran komputasional membantu:
Menyelesaikan masalah harian secara sistematik
Membina pemikiran logik dan kritis
Menyediakan murid menghadapi dunia digital dan teknologi
“Masalah yang kompleks menjadi mudah apabila diselesaikan secara berfikir dan terancang.”