Računanje dimenzij televizije s Python-om

Računanje dimenzij televizije s Python-om

Avtor: Sevludin Halilović

Učni cilji: Učenec uporablja programski jezik Python za reševanje matematičnih problemov

Naloga

Pri nakupih televizorjev je večinoma podan podatek o dolžini diagonale televizorja. Iz dolžine diagonale in razmerja stranic televizorja želimo izračunati njegove stranice.

Sestavi program, ki prebere:

  • dolžino diagonale,
  • razmerje višine in širine televizorja
  • izračuna višino in širino televizorja.

Obe dolžini naj program izpiše zaokroženi na najbližje celo število.

Primer:

'''Vnesi dolžino diagonale: 52
Vnesi razmerje med stranicama.
Koliko enot meri višina? 9
Koliko enot meri širina? 16
Višina televizorja: 25
Širina televizorja: 45

Strategija reševanja

Za reševanje tega problema potrebujemo znanje matematike 8. in 9. razreda, in sicer, poznavanje Pitagorovega izreka in računanje z razmerji.

Pitagorov izrek pravi, da je v pravokotnem trikotniku kvadrat nad hipotenuzo enak vsoti kvadratov nad katetami.

Diagonala pravokotnika

(pravokotnik.jpg)
Diagonala pravokotnika

Če želimo izračunati dolžino diagonale pravokotnika uporabimo Pitagorov izrek:

Reševaje danega problema matematično

Dajmo rešiti takšno nalogo s konkretnimi podatki: diagonala meri 117 cm, razmerje širine proti višini je 16 proti 9.
Koliko merita širina in višina takšne televizije?

Podatki:


Uvedemo enoto t:


začnemo s Pitagorovim izrekom:

vstavimo podatke

izpostavimo

osamimo na levi strani enačbe

in korenimo

Nadaljevanje matematičnega reševanja

Kot rezultat dobimo vrednost enote t

ki jo pomnožimo s številom enot pri dolžini in višini televizije

Ko se rezultata zaokrožita na celo število dobimo:

širina televizije = 102 cm
višina televizije = 57 cm.

Izpeljava enote

Če v enačbi

zamenjamo številke s prvotnimi oznakami daljic dobimo obrazec za enoto:

ki ga bomo potrebovali v nadaljevanju za programiranje v Pythonu.

Reševanje naloge s Pythonom

Ker bomo v našem programu uporabljali korenjenje moramo najprej uvoziti matematični modul math.

To naredimo z ukazom import math

Če želimo uporabniku omogočiti vnašanje vrednosti dimenzij televizije uporabimo ukaz input.

    input('Vnesite dolžino diagonale: ')

Rezultat takšnega vnosa je niz, ki ga moramo z ukazom int pretvoriti v številko, s katero bomo v nadaljevanju računali.

    int(input('Vnesite dolžino diagonale: '))

Vse to je pa potrebno shraniti v spremenljivke, s katerimi dejansko programiramo.

    d = int(input('Vnesite dolžino diagonale: '))

Začetek programa bi zgledal nekako tako:

    import math
    d = int(input('Vnesite dolžino diagonale: '))
    š = int(input('Koliko enot meri širina: '))
    v = int(input('Koliko enot meri višina: '))

Nadaljevanje programa

Obrazec za enoto

v Pythonu napišemo takole:

x = math.sqrt((d**2)/(š**2 + v**2))

Potenciranje se označi z dvema zvezdicama.

Korenimo pa tako, da majprej navedemo ime modula math, nato piko in sqrt za korenjenje.

Dobljeno enoto pomnožimo s spremenljivkama š in v

širina = x * š
višina = x * v

in vse skupaj izpišemo na zaslon z ukazom print, pri čemer moramo paziti na zaokroževanje na celo število. To naredimo z ukazom round.

print ('Širina televizorja znaša ' + str(round(širina)))
print ('Višina televizorja znaša ' + str(round(višina)))

Končan program

import math
d = int(input('Vnesite dolžino diagonale: '))
print('Vnesi razmerje med stranicama.')
š = int(input('Koliko enot meri širina: '))
v = int(input('Koliko enot meri višina: '))

x = math.sqrt((d**2)/(š**2 + v**2))

širina = x * š
višina = x * v
print ('Širina televizorja znaša ' + str(round(širina)))
print ('Višina televizorja znaša ' + str(round(višina)))

In rezultat:

Vnesite dolžino diagonale: 117
Vnesi razmerje med stranicama.
Koliko enot meri širina: 16
Koliko enot meri višina: 9

Širina televizorja znaša 102
Višina televizorja znaša 57
0%
0%