
69_ARLESZALLITAS_1.py
69_ARLESZALLITAS_1.py

import math
A math modul betöltése. Erre azért van szükség, mert később használjuk a math.floor() függvényt.
try:
A try blokk azt jelzi, hogy olyan műveletek következnek, amelyek hibát okozhatnak. Ha hiba történik, a program nem áll le, hanem átugrik az except részre.
# Fájl megnyitása és első sor beolvasása
Megjegyzés, amely csak a programozónak szól. A Python nem hajtja végre.
with open("europa_ho.prn", "r") as f:
Megnyitja a europa_ho.prn nevű fájlt olvasásra. A with gondoskodik arról, hogy a fájl automatikusan bezáródjon.
sor = f.readline().strip()
Beolvassa a fájl első sorát, majd a strip() eltávolítja a sor elején és végén lévő szóközöket, tabokat, sortörést.
adatok = sor.split()
A sort szóközök mentén feldarabolja. Így egy listát kapunk, pl.: ["1200", "15"].
if len(adatok) < 2:
raise ValueError("Nincs elég adat a fájlban.")
Ellenőrzi, hogy van‑e legalább két adat. Ha nincs, akkor hibát dob, amit majd az except ValueError kezel.
regi_ar = int(adatok[0])
Az első adatot egésszé alakítja → ez lesz a régi ár.
szazalek = float(adatok[1]) / 100
A második adatot százalékká alakítja: pl. "15" → 15.0 → 0.15.
uj_ar = math.floor(regi_ar * (1 - szazalek))
Kiszámítja az új árat: régi ár × (1 − százalék). A math.floor() lefelé kerekít.
print("Régi ár:", regi_ar)
print("Százalék:", szazalek * 100, "%") print("Új ár:", uj_ar)
Kiírja a régi árat, a százalékot és az új árat.
except FileNotFoundError:
print("Hiba: A 'europa_ho.prn' fájl nem található.")
Ha a fájl nem létezik, ezt az üzenetet kapjuk.
except ValueError as e:
print("Hibás adat:", e)
Ha a fájlban rossz adat van (pl. nem szám), akkor ez az ág fut le.
import math
try:
# Fájl megnyitása és első sor beolvasása
with open("europa_ho.prn", "r") as f:
sor = f.readline().strip()
adatok = sor.split()
if len(adatok) < 2:
raise ValueError("Nincs elég adat a fájlban.")
regi_ar = int(adatok[0])
szazalek = float(adatok[1]) / 100
uj_ar = math.floor(regi_ar * (1 - szazalek))
print("Régi ár:", regi_ar)
print("Százalék:", szazalek * 100, "%")
print("Új ár:", uj_ar)
except FileNotFoundError:
print("Hiba: A 'europa_ho.prn' fájl nem található.")
except ValueError as e:
print("Hibás adat:", e)
Gyakorlati alkalmazás: Akciós árak automatikus kiszámítása egy webáruházban
Képzeld el, hogy van egy webáruházad, ahol időszakos akciókat tartasz. A termékek eredeti ára egy fájlban van, és minden termékhez tartozik egy százalékos kedvezmény.
A programod pontosan ezt csinálja:
beolvassa a régi árat,
beolvassa a kedvezmény mértékét,
kiszámítja az új, akciós árat,
és kiírja.
Ez a logika pont úgy működik, mint egy webáruház háttérrendszere, ahol a kedvezményeket automatikusan kell alkalmazni.
🧮 Példa: webáruház akciók
Tegyük fel, hogy a fájlban ez áll:
Kód12000 20
Ez azt jelenti:
Régi ár: 12 000 Ft
Kedvezmény: 20%
A program kiszámítja:
12000×(1−0.20)=9600
Tehát az új ár: 9600 Ft
Ez az ár mehet a webáruházba, a termékkártyára, a kosárba, a számlára.
