2. tēma: 2.3 Matemātika un f-strings

Tavs šīs stundas izaicinājums: Lietot paplašinātus matemātikas operatorus spēles mehānikas radīšanai un formatēt rezultātu izvadi, izmantojot modernu un lasāmu f-string sintaksi.

2.4.13. Lieto mainīgos, datu tipus un pamatkonstrukcijas.

Teorija: Matemātikas operatori un teksta formatēšana

1. uzdevums: Bojājumu kalkulators un f-strings

Apgūsti jauno f-string pierakstu, lai aizstātu iepriekšējās stundās izmantoto teksta atdalīšanu ar komatiem.

Izpildes soļi:

  1. VS Code izveido failu cirtiens.py.
  2. Izveido mainīgos speks un brunas, izmantojot input() kombinācijā ar int(), lai iegūtu veselus skaitļus.
  3. Izveido mainīgo bojajums, no spēka atņemot bruņas.
  4. Izmanto komandu print(), kas sākas ar f"...".
  5. Tekstā iekļauj visus trīs mainīgos (speks, brunas un bojajums), ieliekot tos {} iekavās, piemēram: print(f"Ar spēku {speks} tu caursit {brunas} bruņas un nodari {bojajums} bojājumu!").

2. uzdevums: Laupījuma godīga dalīšana

Izmanto dalīšanu ar atlikumu, lai aprēķinātu inventāra resursu sadali starp spēlētājiem.

Izpildes soļi:

  1. Izveido failu laupijums.py.
  2. Pieprasi lietotājam ievadīt "Kopējo zelta monētu skaitu" un "Spēlētāju skaitu" grupā (abos gadījumos izmanto int()).
  3. Izveido mainīgo katram un aprēķini sadali, izmantojot Integer division (Veselo dalīšanu): monetas // speletaji.
  4. Izveido mainīgo atlikums un aprēķini monētu atlikumu, izmantojot Modulo: monetas % speletaji.
  5. Vienā f-string print() paziņojumā norādi, cik monētas iegūst katrs spēlētājs un cik monētas paliek lādē nepakaramtas.

3. uzdevums: Kritiskā trieciena formula

Apvieno reizināšanu, kāpināšanu un aprēķinu veikšanu tieši teksta formatēšanas funkcijā.

Izpildes soļi:

  1. Izveido failu kritiskais.py.
  2. Iegūsti divus mainīgos: spēlētāja limenis (int) un ieroča bāzes bojajums (int).
  3. Kritiskā trieciena formula šajā spēlē ir bāzes bojājums, kas reizināts ar $1.5$, kam pieskaitīts spēlētāja līmenis kvadrātā.
  4. Neradi jaunu mainīgo aprēķina rezultātam! Tā vietā ievieto visu aprēķina formulu (bojajums * 1.5) + (limenis ** 2) tieši figūriekavās iekš f-string izvades komandas.
  5. Iesūtīt uzdevuma github saiti e-klasē.

Papildus uzdevums: Laika konvertācija

Izmanto veselo dalīšanu un atlikumu ikdienišķā situācijā – laika mērvienību pārvēršanā.

Izpildes soļi:

  1. Izveido failu laiks.py.
  2. Prasi lietotājam ievadīt kopējo spēlē pavadīto laiku minūtēs (vesels skaitlis).
  3. Izmanto // operatoru, dalot ar 60, lai aprēķinātu pilnās stundas.
  4. Izmanto % operatoru ar 60, lai aprēķinātu atlikušās minūtes.
  5. Izvadi formatētu ziņojumu (piem., "Tu spēlēji 2 stundas un 15 minūtes").

Biežākās kļūdas (un kā tās labot):

Koda piemērs: f-strings un operatori

# Mainīgo sagatavošana
vards = "Zibens"
limenis = 5

# Izvade ar mainīgajiem un tiešu matemātiku figūriekavās
print(f"Spēlētājs {vards} ir {limenis} līmenī.")

# ** ir kāpināšana. Tātad limenis ** 2 nozīmē 5 kvadrātā (5 * 5).
print(f"Tava speciālā gājiena spēks ir {limenis ** 2}!")
Spēlētājs Zibens ir 5 līmenī.
Tava speciālā gājiena spēks ir 25!
⬅ Iepriekšējā stunda Nākamā stunda ➡