Rabu, 23 Juli 2025

import React, { useState } from 'react'; // Fungsi helper untuk merender ekspresi matematika menjadi HTML const renderMath = (text) => { let formattedText = text; let changed = true; // Mengganti pangkat (misal: 2^3 menjadi 23) // Menangani angka, variabel, atau ekspresi dalam kurung sebelum pangkat // Menangani pangkat positif, negatif, atau dalam kurung // Iterasi untuk menangani pangkat bersarang (misal: (a^m)^n) while (changed) { changed = false; const newText = formattedText.replace( /([a-zA-Z0-9_().]+)(\^)(\(?[-+]?[a-zA-Z0-9_]+\)?)/g, (match, base, caret, exp) => { // Hanya mengganti jika belum dalam tag untuk menghindari duplikasi // dan memastikan ekspresi di dalam kurung sudah di-render jika ada pangkat di dalamnya if (!base.includes('') && !exp.includes('')) { changed = true; return `${base}${exp}`; } return match; // Kembalikan yang asli jika sudah diformat } ); if (newText !== formattedText) { formattedText = newText; changed = true; } } // Mengganti akar (misal: akar 2 menjadi √2) formattedText = formattedText.replace(/akar (\d+)/g, '√$1'); // Mengganti akar pangkat n (misal: akar pangkat 5 dari 9 menjadi 5√9) formattedText = formattedText.replace(/akar pangkat (\d+) dari ([\w\d]+)/g, '$1√$2'); // Mengganti "x" sebagai simbol perkalian formattedText = formattedText.replace(/ x /g, ' × '); // Mengganti ":" sebagai simbol pembagian formattedText = formattedText.replace(/ : /g, ' ÷ '); // Mengganti pecahan (misal: 1/16 menjadi 1⁄16, atau A / B menjadi A ⁄ B) // Menggunakan spasi di sekitar slash untuk pecahan yang lebih kompleks agar tidak salah tangkap formattedText = formattedText.replace(/(\d+)\s*\/\s*(\d+)/g, '$1⁄$2'); // Untuk angka saja formattedText = formattedText.replace(/ \/ /g, ' ⁄ '); // Untuk slash dengan spasi di sekitarnya return ; }; // Komponen Reusable untuk Bagian Topik const TopicSection = ({ title, material, examples, quizQuestions }) => { return (

{title}

Materi

{renderMath(material)}

Contoh Soal dan Pembahasan

{examples.map((example, index) => (

Soal:

{renderMath(example.question)}

Pembahasan:

{renderMath(example.solution)}

))}

Kuis Interaktif

); }; // Komponen Kuis Reusable const Quiz = ({ questions }) => { const [currentQuestionIndex, setCurrentQuestionIndex] = useState(0); const [selectedAnswer, setSelectedAnswer] = useState(null); const [feedback, setFeedback] = useState(''); const [showNextButton, setShowNextButton] = useState(false); const [quizCompleted, setQuizCompleted] = useState(false); const handleAnswerClick = (answer) => { setSelectedAnswer(answer); if (answer === questions[currentQuestionIndex].correctAnswer) { setFeedback('Jawaban Anda benar! 🎉'); } else { setFeedback(`Jawaban Anda salah. Jawaban yang benar adalah: ${questions[currentQuestionIndex].correctAnswer}`); } setShowNextButton(true); }; const handleNextQuestion = () => { setSelectedAnswer(null); setFeedback(''); setShowNextButton(false); if (currentQuestionIndex < questions.length - 1) { setCurrentQuestionIndex(currentQuestionIndex + 1); } else { setQuizCompleted(true); setFeedback('Kuis selesai! Anda telah menyelesaikan semua pertanyaan. 👍'); } }; const currentQuestion = questions[currentQuestionIndex]; return (
{!quizCompleted ? ( <>

{currentQuestionIndex + 1}. {renderMath(currentQuestion.question)}

{currentQuestion.options.map((option, index) => ( ))}
{feedback && (

{feedback}

)} {showNextButton && ( )} ) : (
Kuis telah selesai! Kerja bagus! 🎉
)}
); }; // Komponen Asesmen Interaktif const Assessment = () => { const allAssessmentQuestions = [ { question: "Hasil dari 2^3 x 2^4 adalah...", options: ["2^7", "2^12", "4^7", "4^12"], correctAnswer: "2^7" }, { question: "Bentuk sederhana dari akar 72 adalah...", options: ["6 akar 2", "2 akar 6", "36 akar 2", "2 akar 36"], correctAnswer: "6 akar 2" }, { question: "Bentuk baku dari 0.0000056 adalah...", options: ["5.6 x 10^(-5)", "5.6 x 10^(-6)", "5.6 x 10^5", "5.6 x 10^6"], correctAnswer: "5.6 x 10^(-6)" }, { question: "Rasionalkan penyebut dari 3 / akar 5", options: ["(3 akar 5) / 5", "3 akar 5", "(akar 5) / 5", "5 akar 3"], correctAnswer: "(3 akar 5) / 5" }, { question: "Nilai dari (3^2)^3 adalah...", options: ["3^5", "3^6", "9^3", "6^2"], correctAnswer: "3^6" }, { question: "Tuliskan hasil dari 5^0.", options: ["0", "1", "5", "Tidak terdefinisi"], correctAnswer: "1" }, { question: "Sederhanakan akar 18 + akar 50.", options: ["akar 68", "8 akar 2", "7 akar 2", "68"], correctAnswer: "8 akar 2" }, { question: "Tuliskan 125,000,000 dalam bentuk baku.", options: ["1.25 x 10^7", "1.25 x 10^8", "12.5 x 10^7", "0.125 x 10^9"], correctAnswer: "1.25 x 10^8" }, { question: "Rasionalkan penyebut dari 2 / (3 - akar 2).", options: ["(6 + 2 akar 2) / 7", "(6 - 2 akar 2) / 7", "2(3 + akar 2)", "2(3 - akar 2)"], correctAnswer: "(6 + 2 akar 2) / 7" } ]; const [currentQuestionIndex, setCurrentQuestionIndex] = useState(0); const [userAnswers, setUserAnswers] = useState(Array(allAssessmentQuestions.length).fill(null)); const [score, setScore] = useState(0); const [showResults, setShowResults] = useState(false); const [quizStarted, setQuizStarted] = useState(false); const handleAnswerSelect = (selectedOption) => { const updatedAnswers = [...userAnswers]; updatedAnswers[currentQuestionIndex] = selectedOption; setUserAnswers(updatedAnswers); }; const handleNextQuestion = () => { if (currentQuestionIndex < allAssessmentQuestions.length - 1) { setCurrentQuestionIndex(currentQuestionIndex + 1); } else { calculateScore(); setShowResults(true); } }; const calculateScore = () => { let newScore = 0; allAssessmentQuestions.forEach((q, index) => { if (userAnswers[index] === q.correctAnswer) { newScore++; } }); setScore(newScore); }; const handleRestartQuiz = () => { setCurrentQuestionIndex(0); setUserAnswers(Array(allAssessmentQuestions.length).fill(null)); setScore(0); setShowResults(false); setQuizStarted(false); }; const currentQuestion = allAssessmentQuestions[currentQuestionIndex]; return (

Asesmen Akhir

{!quizStarted ? (

Klik "Mulai Asesmen" untuk memulai asesmen akhir. Anda akan menjawab {allAssessmentQuestions.length} soal pilihan ganda. Skor Anda akan ditampilkan setelah Anda menyelesaikan semua soal.

) : showResults ? (

Asesmen Selesai!

Skor Anda: {score} dari {allAssessmentQuestions.length}

) : (

Soal {currentQuestionIndex + 1} dari {allAssessmentQuestions.length}. {renderMath(currentQuestion.question)}

{currentQuestion.options.map((option, index) => ( ))}
)}
); }; function App() { const [currentPage, setCurrentPage] = useState('home'); const topics = [ { id: 'exponents-understanding', title: '1. Memahami Bilangan Berpangkat', material: `Bilangan berpangkat atau eksponen adalah bentuk perkalian berulang dari suatu bilangan yang sama. Bentuk umum bilangan berpangkat adalah a^n, di mana a disebut basis (bilangan pokok) dan n disebut eksponen (pangkat). Contoh: 2^3 = 2 x 2 x 2 = 8. Di sini, 2 adalah basis dan 3 adalah eksponen.`, examples: [ { question: "Tentukan hasil dari 3^4.", solution: "3^4 = 3 x 3 x 3 x 3 = 81" }, { question: "Tentukan hasil dari (-2)^3.", solution: "(-2)^3 = (-2) x (-2) x (-2) = 4 x (-2) = -8" } ], quizQuestions: [ { question: "Berapakah hasil dari 5^3?", options: ["15", "25", "125", "625"], correctAnswer: "125" }, { question: "Nilai dari 10^0 adalah...", options: ["0", "1", "10", "100"], correctAnswer: "1" } ] }, { id: 'exponents-properties', title: '2. Memahami Sifat-Sifat Bilangan Berpangkat', material: `Bilangan berpangkat memiliki beberapa sifat penting yang memudahkan dalam perhitungan: 1. Perkalian: a^m x a^n = a^(m+n) 2. Pembagian: a^m : a^n = a^(m-n) 3. Pangkat dari Pangkat: (a^m)^n = a^(m x n) 4. Pangkat Nol: a^0 = 1 (untuk a tidak sama dengan 0) 5. Pangkat Negatif: a^(-n) = 1/a^n 6. Perkalian berpangkat: (ab)^n = a^n b^n 7. Pembagian berpangkat: (a/b)^n = a^n / b^n`, examples: [ { question: "Sederhanakan 2^5 x 2^3.", solution: "Menggunakan sifat a^m x a^n = a^(m+n), maka 2^5 x 2^3 = 2^(5+3) = 2^8 = 256" }, { question: "Sederhanakan (3^2)^4.", solution: "Menggunakan sifat (a^m)^n = a^(m x n), maka (3^2)^4 = 3^(2 x 4) = 3^8 = 6561" } ], quizQuestions: [ { question: "Hasil dari x^6 : x^2 adalah...", options: ["x^8", "x^4", "x^3", "x^12"], correctAnswer: "x^4" }, { question: "Bentuk sederhana dari 4^(-2) adalah...", options: ["16", "-16", "1/16", "-1/16"], correctAnswer: "1/16" } ] }, { id: 'exponents-operations', title: '3. Menyelesaikan Operasi Bilangan Berpangkat', material: `Untuk menyelesaikan operasi bilangan berpangkat, kita menerapkan sifat-sifat yang telah dipelajari. Penting untuk memperhatikan urutan operasi (PEMDAS/BODMAS) jika ada kombinasi operasi.`, examples: [ { question: "Hitunglah nilai dari (2^3 x 3^2)^2.", solution: "(2^3 x 3^2)^2 = (2^3)^2 x (3^2)^2 = 2^(3 x 2) x 3^(2 x 2) = 2^6 x 3^4 = 64 x 81 = 5184" }, { question: "Sederhanakan (5^7 / 5^4) x 5^2.", solution: "(5^7 / 5^4) x 5^2 = 5^(7-4) x 5^2 = 5^3 x 5^2 = 5^(3+2) = 5^5 = 3125" } ], quizQuestions: [ { question: "Hasil dari (2^2)^3 : 2^4 adalah...", options: ["2^2", "2^3", "2^4", "2^5"], correctAnswer: "2^2" }, { question: "Nilai dari (3x^2)^3 adalah...", options: ["3x^6", "9x^6", "27x^6", "27x^5"], correctAnswer: "27x^6" } ] }, { id: 'radicals-understanding', title: '4. Memahami Bilangan Bentuk Akar', material: `Bentuk akar adalah akar dari suatu bilangan rasional yang hasilnya adalah bilangan irasional. Bentuk umum adalah akar pangkat n dari a, di mana n adalah indeks akar dan a adalah radikan. Jika n=2, biasanya ditulis sebagai akar a. Bentuk akar dapat diubah menjadi bilangan berpangkat pecahan: akar pangkat n dari a^m = a^(m/n).`, examples: [ { question: "Ubahlah akar 8 ke bentuk sederhana.", solution: "akar 8 = akar (4 x 2) = akar 4 x akar 2 = 2 akar 2" }, { question: "Ubahlah 3^(2/5) ke bentuk akar.", solution: "3^(2/5) = akar pangkat 5 dari 3^2 = akar pangkat 5 dari 9" } ], quizQuestions: [ { question: "Bentuk sederhana dari akar 48 adalah...", options: ["4 akar 3", "3 akar 4", "16 akar 3", "12 akar 4"], correctAnswer: "4 akar 3" }, { question: "Bentuk pangkat pecahan dari akar pangkat 3 dari 7^2 adalah...", options: ["7^(2/3)", "7^(3/2)", "7^6", "7^(-2/3)"], correctAnswer: "7^(2/3)" } ] }, { id: 'radicals-operations', title: '5. Menyelesaikan Operasi Bilangan Bentuk Akar', material: `Operasi pada bentuk akar meliputi penjumlahan, pengurangan, perkalian, dan pembagian. 1. Penjumlahan/Pengurangan: Hanya bisa dilakukan jika radikan dan indeks akarnya sama. Contoh: a akar c + b akar c = (a+b) akar c. 2. Perkalian: akar a x akar b = akar (ab). 3. Pembagian: akar a / akar b = akar (a/b).`, examples: [ { question: "Hitunglah akar 12 + akar 27.", solution: "akar 12 + akar 27 = akar (4 x 3) + akar (9 x 3) = 2 akar 3 + 3 akar 3 = (2+3) akar 3 = 5 akar 3" }, { question: "Hitunglah akar 6 x akar 3.", solution: "akar 6 x akar 3 = akar (6 x 3) = akar 18 = akar (9 x 2) = 3 akar 2" } ], quizQuestions: [ { question: "Hasil dari 5 akar 2 - 2 akar 2 adalah...", options: ["3 akar 2", "7 akar 2", "3", "akar 2"], correctAnswer: "3 akar 2" }, { question: "Hasil dari akar 5 x akar 20 adalah...", options: ["akar 100", "10", "5 akar 4", "25"], correctAnswer: "10" } ] }, { id: 'radicals-rationalizing', title: '6. Merasionalkan Penyebut Bentuk Akar', material: `Merasionalkan penyebut berarti mengubah penyebut yang berbentuk akar menjadi bilangan rasional. Ini dilakukan dengan mengalikan pembilang dan penyebut dengan bentuk sekawan dari penyebut. 1. Bentuk a / akar b: Kalikan dengan akar b / akar b. 2. Bentuk a / (b + akar c): Kalikan dengan (b - akar c) / (b - akar c). 3. Bentuk a / (akar b + akar c): Kalikan dengan (akar b - akar c) / (akar b - akar c).`, examples: [ { question: "Rasionalkan penyebut dari 2 / akar 3.", solution: "(2 / akar 3) x (akar 3 / akar 3) = (2 akar 3) / 3" }, { question: "Rasionalkan penyebut dari 4 / (2 + akar 2).", solution: "(4 / (2 + akar 2)) x ((2 - akar 2) / (2 - akar 2)) = (4(2 - akar 2)) / (2^2 - (akar 2)^2) = (8 - 4 akar 2) / (4 - 2) = (8 - 4 akar 2) / 2 = 4 - 2 akar 2" } ], quizQuestions: [ { question: "Bentuk rasional dari 1 / akar 7 adalah...", options: ["(akar 7) / 7", "akar 7", "7 akar 7", "1"], correctAnswer: "(akar 7) / 7" }, { question: "Rasionalkan penyebut dari 6 / (akar 5 - 1).", options: ["(3(akar 5 + 1)) / 2", "3(akar 5 + 1)", "6(akar 5 + 1)", "(6(akar 5 + 1)) / 4"], correctAnswer: "(3(akar 5 + 1)) / 2" } ] }, { id: 'standard-form', title: '7. Menulis Bentuk Baku Bilangan', material: `Bentuk baku (notasi ilmiah) adalah cara menulis bilangan yang terlalu besar atau terlalu kecil agar lebih mudah dibaca. Bentuk umum adalah a x 10^n, di mana 1 <= |a| < 10 dan n adalah bilangan bulat. Untuk bilangan besar, n positif. Untuk bilangan kecil (desimal), n negatif.`, examples: [ { question: "Tuliskan 1,230,000 dalam bentuk baku.", solution: "Geser koma 6 tempat ke kiri: 1.23 x 10^6" }, { question: "Tuliskan 0.000000045 dalam bentuk baku.", solution: "Geser koma 8 tempat ke kanan: 4.5 x 10^(-8)" } ], quizQuestions: [ { question: "Bentuk baku dari 98,700,000 adalah...", options: ["9.87 x 10^7", "9.87 x 10^8", "98.7 x 10^6", "0.987 x 10^8"], correctAnswer: "9.87 x 10^7" }, { question: "Bentuk baku dari 0.000123 adalah...", options: ["1.23 x 10^(-3)", "1.23 x 10^(-4)", "1.23 x 10^4", "12.3 x 10^(-5)"], correctAnswer: "1.23 x 10^(-4)" } ] } ]; return (
{/* Tailwind CSS CDN */}
{currentPage === 'home' && (

Selamat Datang di Modul Matematika!

Modul ini akan membantu Anda memahami konsep bilangan berpangkat dan bentuk akar, serta cara menyelesaikan berbagai operasi terkait. Gunakan navigasi di atas untuk menjelajahi materi, contoh soal, kuis interaktif, dan asesmen akhir.

Selamat belajar!

)} {topics.map(topic => ( currentPage === topic.id && ( ) ))} {currentPage === 'assessment' && }
); } export default App;

Jumat, 18 Juli 2025

Modul Interaktif: Bilangan Berpangkat

Modul Interaktif: Bilangan Berpangkat

Kelas 9 - Sebuah alat bantu belajar untuk memahami konsep eksponen secara mendalam.

Selamat Datang! Mari Kita Mulai Petualangan Eksponen!

Bagian ini akan memantik rasa ingin tahu Anda tentang mengapa bilangan berpangkat itu penting. Konsep ini bukan hanya sekumpulan angka, tetapi cara hebat untuk menyederhanakan sesuatu yang besar dan rumit. Mari kita lihat bagaimana perkalian berulang bisa ditulis dengan lebih elegan.

🤔 Pernahkah Kamu Berpikir?

  • Bagaimana ilmuwan menulis jarak antar bintang yang triliunan kilometer?
  • Bagaimana ahli biologi menghitung pertumbuhan bakteri yang berlipat ganda setiap jam?
  • Bagaimana kapasitas penyimpanan komputer (Kilobyte, Megabyte, Gigabyte) dihitung?

Jawabannya ada pada kekuatan bilangan berpangkat!

Contoh Sederhana

Bayangkan ada 3 teman, masing-masing membawa 3 kotak, dan setiap kotak berisi 3 bola. Berapa total bola?

Perkalian berulangnya adalah:

3 × 3 × 3 = 27

Dengan notasi pangkat, kita bisa menuliskannya secara ringkas:

33

Di sini, '3' adalah basis dan '3' yang di atas adalah eksponen atau pangkat.

Eksplorasi Sifat-Sifat Bilangan Berpangkat

Di sini, Anda tidak akan sekadar menghafal rumus. Anda akan menemukan sendiri sifat-sifat bilangan berpangkat melalui pola dan contoh interaktif. Mari menjadi detektif matematika!

1. Sifat Perkalian: $a^m \times a^n = a^{m+n}$

Ketika mengalikan dua bilangan berpangkat dengan basis yang sama, kita hanya perlu menjumlahkan pangkatnya. Coba lihat mengapa!

$2^3 \times 2^2 = (2 \times 2 \times 2) \times (2 \times 2) = 2 \times 2 \times 2 \times 2 \times 2 = 2^5 = 2^{3+2}$

2. Sifat Pembagian: $a^m / a^n = a^{m-n}$

Ketika membagi, kita mengurangkan pangkatnya. Perhatikan bagaimana faktor yang sama saling menghilangkan.

$ \frac{5^4}{5^2} = \frac{5 \times 5 \times 5 \times 5}{5 \times 5} = 5 \times 5 = 5^2 = 5^{4-2} $

3. Sifat Perpangkatan: $(a^m)^n = a^{m \times n}$

Jika bilangan berpangkat dipangkatkan lagi, kita kalikan pangkatnya.

$(3^2)^3 = (3^2) \times (3^2) \times (3^2) = (3 \times 3) \times (3 \times 3) \times (3 \times 3) = 3^6 = 3^{2 \times 3}$

4. Menemukan Pangkat 0 dan Negatif

Apa yang terjadi jika pangkatnya 0 atau negatif? Mari kita temukan polanya dengan terus membagi dengan basis (angka 2).

Kalkulator Sifat Eksponen

Uji pemahaman Anda tentang sifat-sifat eksponen. Masukkan basis dan pangkat, lalu biarkan kalkulator ini menunjukkan langkah-langkah penyederhanaannya. Ini adalah cara yang bagus untuk berlatih.

Sederhanakan: $a^m \times a^n$

× 2

Sederhanakan: $a^m / a^n$

÷ 3

Tantangan Kontekstual: Pertumbuhan Bakteri

Bilangan berpangkat sangat berguna untuk memodelkan situasi di dunia nyata, seperti pertumbuhan dan peluruhan. Mari kita pecahkan masalah pertumbuhan bakteri ini dan lihat bagaimana visualisasi data dapat membantu kita memahaminya.

Studi Kasus

Sebuah koloni bakteri dimulai dengan 100 bakteri. Jumlahnya menjadi dua kali lipat setiap 30 menit. Berapa banyak bakteri yang akan ada setelah beberapa jam?

Setelah 3 jam

Asesmen Formatif Cepat

Waktunya menguji pemahamanmu! Jawablah beberapa pertanyaan berikut untuk melihat sejauh mana kamu telah menguasai konsep bilangan berpangkat. Jangan khawatir, ini hanya latihan untuk belajar.

1. Bentuk sederhana dari $7^3 \times 7^5$ adalah...

2. Hasil dari $(5^2)^3$ adalah...

3. Nilai dari $100^0$ adalah...

4. Bentuk lain dari $4^{-2}$ adalah...

Informasi Modul

Bagian ini berisi detail tentang modul ajar yang menjadi dasar dari aplikasi interaktif ini, termasuk tujuan pembelajaran dan catatan penting bagi para pendidik.

Tujuan Pembelajaran

  • Mengidentifikasi dan menjelaskan konsep bilangan berpangkat.
  • Menganalisis dan menemukan sifat-sifat operasi bilangan berpangkat.
  • Menjelaskan dan menerapkan konsep pangkat nol dan negatif.
  • Menyederhanakan ekspresi aljabar yang melibatkan eksponen.
  • Memecahkan masalah kontekstual yang berkaitan dengan bilangan berpangkat.
  • Mengembangkan kemampuan berpikir kritis, logis, dan analitis.
  • Berkolaborasi secara efektif dalam kegiatan kelompok.

Catatan untuk Guru

  • Gunakan aplikasi ini sebagai alat demonstrasi di kelas untuk memvisualisasikan konsep.
  • Tugaskan siswa untuk bereksplorasi secara mandiri sebagai bagian dari pembelajaran berdiferensiasi.
  • Bagian "Tantangan Kontekstual" dapat menjadi pemicu diskusi atau proyek kelompok kecil.
  • Gunakan hasil "Asesmen" untuk mengidentifikasi miskonsepsi umum di kelas.
  • Hubungkan konsep ini dengan mata pelajaran lain seperti IPA (notasi ilmiah) dan TIK (ukuran data).
******* | Blog ini di modifikasi oleh Wartam, seorang pendidik yang ada di daerah pinggiran Cilacap-Jateng | *******