---LESSON_INFO---
Pelajaran hybrid: Pemrograman C + Simulator Rangkaian Elektronika.
**Learning Objectives:**
- Memahami konsep voltage divider
- Menulis program C untuk menghitung tegangan
- Menggunakan simulator rangkaian
**Prerequisites:**
- Hello, World!
- Variabel
---END_LESSON_INFO---
# Rangkaian Voltage Divider
Rangkaian **voltage divider** membagi tegangan input menjadi tegangan yang lebih kecil
menggunakan dua resistor.
## Rumus
```
Vout = Vin * (R2 / (R1 + R2))
```
Jika R1 = R2 = 1kΩ dan Vin = 5V:
```
Vout = 5 * (1000 / (1000 + 1000)) = 2.5V
```
## Contoh Rangkaian
Berikut rangkaian voltage divider sederhana:
```circuit
```
Perhatikan tegangan di **Vout** adalah ~2.5V.
## Versi Python
Perhitungan yang sama bisa dilakukan dengan Python:
```python
vin = 5
r1 = 1000
r2 = 1000
vout = vin * (r2 / (r1 + r2))
print(f"Vout = {vout:.2f}V")
```
Perbedaan utama:
- Tidak perlu mendeklarasikan tipe data
- Python menggunakan **float division** secara default (di C, `1000/2000` menghasilkan `0` karena integer division)
- f-string `{vout:.2f}` setara dengan `%.2f` di C
---EXERCISE---
### Tantangan 1: Pemrograman C
Buat program yang mencetak hasil perhitungan voltage divider.
### Tantangan 2: Elektronika
Lengkapi rangkaian agar tegangan di **Vout** bernilai **2.5V**.
---
---INITIAL_CODE---
#include
int main() {
// Hitung voltage divider: Vout = Vin * R2 / (R1 + R2)
// Vin=5, R1=1000, R2=1000
return 0;
}
---END_INITIAL_CODE---
---INITIAL_CIRCUIT---
---END_INITIAL_CIRCUIT---
---EXPECTED_OUTPUT---
Vout = 2.50V
---END_EXPECTED_OUTPUT---
---EXPECTED_CIRCUIT_OUTPUT---
{
"nodes": {
"Vout": { "voltage": 2.5, "tolerance": 0.2 }
}
}
---END_EXPECTED_CIRCUIT_OUTPUT---
---INITIAL_PYTHON---
# Hitung voltage divider: Vout = Vin * R2 / (R1 + R2)
# Vin=5, R1=1000, R2=1000
---END_INITIAL_PYTHON---
---KEY_TEXT---
printf
---END_KEY_TEXT---
---KEY_TEXT_CIRCUIT---
Vout
---END_KEY_TEXT_CIRCUIT---