"""
POTĘGOWANIE (**) W AUTOMATYCE PRZEMYSŁOWEJ

Operator ** (potęgowanie) jest używany do obliczeń inżynierskich:
- Obliczenia powierzchni i objętości
- Wzory fizyczne (moc, energia, siła)
- Przeliczenia jednostek (np. cm² → m²)
- Obliczenia hydrauliczne i pneumatyczne

Przykład: 5 ** 2 = 5² = 25 (5 do potęgi 2)
"""

# ============================================================================
# ĆWICZENIE: OBLICZANIE STRAT MOCY W KABLU ZASILAJĄCYM
# ============================================================================

print("=" * 70)
print("ĆWICZENIE: STRATY MOCY W PRZEWODZIE - PRAWO JOULE'A")
print("=" * 70)
print()

# DANE:
# PRAWO JOULE'A: P = I² × R
# gdzie:
# P - moc strat (ciepło) [W]
# I - natężenie prądu [A]
# R - opór przewodu [Ω]

# Silnik 15 kW zasilany kablem o długości 50m
motor_power = 15000                     # Moc silnika [W]
cable_voltage = 400                     # Napięcie [V]
cable_resistance = 0.02                 # Opór kabla [Ω]

# ROZWIĄZANIE:
motor_current = motor_power / cable_voltage             # I = P / U
power_loss = (motor_current ** 2) * cable_resistance    # P = I² × R

print(f"Moc silnika: {motor_power / 1000} kW")
print(f"Prąd silnika: {motor_current:.2f} A")
print(f"Opór kabla: {cable_resistance} Ω")
print()
print(f"Obliczenie strat: P = I² × R")
print(f"P = ({motor_current:.2f})² × {cable_resistance}")
print(f"P = {motor_current ** 2:.2f} × {cable_resistance}")
print(f"P = {power_loss:.2f} W")
print()
print(f"→ Straty mocy w kablu: {power_loss:.2f} W = {power_loss / 1000:.3f} kW")
print()

"""
╔════════════════════════════════════════════════════════════════════════╗
║                   PODSUMOWANIE: OPERATOR **                            ║
╚════════════════════════════════════════════════════════════════════════╝

POTĘGOWANIE: a ** b = a do potęgi b

PRAWO JOULE'A: P = I² × R
- Moc strat rośnie z KWADRATEM prądu
- Podwojenie prądu = poczwórne straty!

ZASTOSOWANIA W ELEKTROTECHNICE:
✓ Moc strat: P = I² × R
✓ Energia: E = I² × R × t
✓ Nagrzewanie przewodów zależy od I²

ZAPAMIĘTAJ:
** to potęgowanie (nie ^ jak w matematyce)
Python: 5 ** 2 = 25 ✓
NIE: 5 ^ 2 (to jest XOR, nie potęga!)
"""