# coding=utf-8 id = 180 name = 'Pretvarjanje iz Fahrenheitov v Celzije' slug = 'Pretvarjanje iz Fahrenheitov v Celzije' description = '''\
Napiši program, ki mu uporabnik vpiše temperaturo v Fahrenheitovih stopinjah, program pa jo izpiše v Celzijevih. Med temperaturama pretvarjamo po formuli C = 5/9 (F – 32).
''' general_exception = { 'error_head' : '''\Napaka:
[%=message%]''', 'general': '''
Pri razumevanju napake sta pomembni dve vrstici. V predzadnji vrstici je napisana lokacija napake (line ...), v zadnji vrstici pa izvemo za kakšno napako gre.
''', 'name_error' : '''Napaka tipa NameError označuje, da uporabljate nedefinirano vrednost:
math
:
from math import *''', 'type_error': '''
TypeError napaka pomeni, da želite izvesti operacijo na nedovoljenih tipih. Npr., če želite sešteti niz in število ali klicati funkcijo, čeprav tisto ni funkcija, itd. .
''', 'indentation_error': '''Pomeni, da imate napačno število presledkov na začetku vrstice. Poskrbite, da so vse vrstice pravilno poravnane.
''' } hint = { 'plan': '''\Program izvedemo v treh korakih:
Uporabnika lahko nekaj vprašamo s funkcijo input
. Funkcija
input
sprejme kot argument niz (angl. string), ki se
prikaže uporabniku kot vprašanje in vrne niz, ki ga je uporabnik napisal. Nize
zapisujemo v narekovaje (lahko so enojni ali dvojni). Npr., naslednja
vrstica:
ime = input("Kako ti je ime?")
pokliče funkcijo input
, ki povpraša uporabnika po imenu in si
shrani uporabnikov odgovor v spremenljivko ime
.
Računanje: če v Pythonu napišemo izraz, se bo ta izračunal. Npr., če napišemo
3 + 6bo Python seštel vrednosti 3 in 6 in ... rezultat pozabil. Kadar pa želimo rezultat shraniti, za to uporabimo prireditveni stavek, kjer na levo napišemo ime spremenljivke, na desno pa izraz:c = 2 * a * (3 + b)Kot vidite, izraz lahko uporablja tudi spremenljivke.
''', 'printing': '''V Pythonu izpisujemo s funkcijo
ime
, ki vsebuje naše ime, potem lahko napišemo:print("Ime mi je", ime, ".")''', 'name_error' : [general_exception['error_head'], general_exception['general'], general_exception['name_error'], '''Verjetno uporabljate spremenljivko, ki nima vrednosti. Ali v izrazu za izračun uporabljate napačno spremenljivko? Ali pri izpisu morda poskušate izpisati napačno spremenljivko?
'''], 'unsupported_operand' : [general_exception['error_head'], general_exception['general'], general_exception['type_error'], '''Verjetni razlog: funkcija
input
vrača vrednost tipa niz, ki jo moramo najprej pretvoriti v tipfloat
, če želimo z njo računati:v = float(input(" ...Zakaj je tako, boste razumeli kasneje, zaenkrat je dovolj, da to poznate.
Na primeru pretvarjanja temperatur:
fniz = input("Temperatura [F]: ") f = float(fniz)ali krajše, združeno v eno vrstico:
f = float(input("Temperatura [F]: "))Funkcijo
'''], 'not_callable' : [general_exception['error_head'], general_exception['general'], general_exception['type_error'], '''float
lahko kličemo le, če je v nizu zapisano število, npr. "10". Če imamo v nizu tudi kakšno črko, bo Python javil napako.V programu poskušate uporabiti število kot funkcijo, a to ne gre. Verjetni razlog: Ali ste v izrazu pozabili na znak *. Pri pretvorbi temperatur bi namesto:
C = 5/9(F – 32)morali napisati:
C = 5/9 * (F – 32).Python ne zna izpuščati znaka za množenje, kot to delamo pri matematiki.
'''], }