def test_kysymys_ok(): kysymys.input = lambda: '50' assert kysymys.kysy_liukuluku('painosi (kg)', 20, 350) == 50 # Syötteessä tietotyyppivirhe #alle alarajan #yli ylärajan
def test_kysymys_ok(monkeypatch): syote = '50' monkeypatch.setattr('builtins.input', lambda _: syote) assert kysymys.kysy_liukuluku('Painosi (kg)', 20, 350) == 50 # Syötteessä tietotyyppivirhe # Alle alarajan # Yli ylärajan
def test_kysymys_ok(): assert kysymys.kysy_liukuluku("Syötä arvo", 10, 100) == [ 0, 'Syöte OK', ] # Syötteessä tietotyyppivirhe # Alle alarajan # Yli ylärajan
# Kirjastojen ja modulien käyttöönotot import laskenta import kysymys import luokat # Varsinaisen pääohjelman alku # Työsilmukka, ikuinen silmukka, jossa on poistumistoiminto (ehto True on aina voimassa) uusi = 'K' lista = [] while True: # Tehdään kysymykset modulin kysymys.py funktiota käyttämällä etunimi = input('Etunimi: ') sukunimi = input('Sukunimi: ') paino = kysymys.kysy_liukuluku('Paino (kg)', 30, 350) pituus = kysymys.kysy_liukuluku('Pituus (cm)', 100, 300) ika = kysymys.kysy_liukuluku('Ikä (v)', 3, 125) sukupuoli = kysymys.kysy_liukuluku('Sukupuoli nainen: 0, mies: 1', 0, 1) # Tehtävä 2 if ika >= 18: tavoitepaino = kysymys.kysy_liukuluku('Tavoitepaino (kg)', 30, 350) aikuinen = luokat.Aikuinen(etunimi, sukunimi, pituus, paino, ika, sukupuoli, tavoitepaino) lista.append(aikuinen) else: lapsi = luokat.Lapsi(etunimi, sukunimi, pituus, paino, ika, sukupuoli) lista.append(lapsi) # Poistuminen ikuisesta silmukasta
# Tämä on painonhallintasovelluksen pääohjelma # kirjastojen ja modulien käyttöönotot import laskenta import kysymys # Varsinaisen pääohjelman alku # työsilmukka, ikuinen silmukka, jossa on poistumistoiminto (ehto true on aina voimassa) uusi = 'K' while True: # tehdään kysymykset modulin kysymys.py funktiota käyttämällä paino = kysymys.kysy_liukuluku('paino(kg)', 30, 500) pituus = kysymys.kysy_liukuluku('pituus (cm)', 100, 300) ika = kysymys.kysy_liukuluku('ikä (v)', 3, 125) sukupuoli = kysymys.kysy_liukuluku('sukupuolinaine: 0, mies:1', 0, 1) # Lasketaan ja tulostetaan painoindeksi bmi = laskenta.bmi(paino, pituus) print('Henkilön painoindeksi on:', round(bmi, 1)) # lasketaan ja tulostetaan kehonrasvaprosentti rasvaprosentti = laskenta.rasvaprosentti(bmi, ika, sukupuoli) print('Laskennallinen kehonrasva prosentti on:', round(rasvaprosentti, 1)) # poistuminen ikuisesta silmukasta uusi = input('lasketaanko uuden henkilön rasvaprosentti? (K/e)') if uusi.upper() == 'E': break
def test_kysymys_ok(): kysymys.input = lambda: '50' assert kysymys.kysy_liukuluku('Painosi (kg)', 20, 350) == 50
tiedosto = 'painonhallinta.db' # Tietokantatiedoston määrittely # Varsinainen ohjelma while True: # Silmukka henkilötietojen kyselemiseen lisaa_henkiloita = input('Lisätäänkö uusia henkilöitä? K/e ') if lisaa_henkiloita.upper() != 'E': lisaa_henkiloita = 'K' while lisaa_henkiloita.upper() == 'K': # Kysytään henkilötiedot etunimi = input('etunimi: ') sukunimi = input('sukunimi: ') sukupuoli = kysymys.kysy_liukuluku('Sukupuoli nainen 0, mies 1: ', 0, 1) syntyma_aika = input('Syntymäaika (VVVV-KK-PP): ') # Lisätään henkilö tietokantaan try: kanta.lisaa_henkilo(tiedosto, etunimi, sukunimi, sukupuoli, syntyma_aika) except: print('Tietokantaan tallennuksessa tapahtui virhe') # Kysytään halutaanko syöttää lisää henkilöitä lisaa_henkiloita = input('Lisätäänkö uusia henkilöitä? K/e ') if lisaa_henkiloita.upper() == 'E': break else: lisaa_henkiloita = 'K'
# Tämä on painonhallintasovelluksen pääohjelma # Kirjastojen ja modulien käyttöönotot import laskenta import kysymys import luokat # Työsilmukka, ikuinen silmukka, jossa on poistumistoiminto (ehto True on aina voimassa) uusi = 'K' lista = [] while True: etunimi = input("Etunimi:") sukunimi = input("Sukunimi:") paino = kysymys.kysy_liukuluku('Paino (kg):', 30, 350) pituus = kysymys.kysy_liukuluku('Pituus (cm):', 100, 300) ika = kysymys.kysy_liukuluku('Ikä (v):', 3, 125) sukupuoli = kysymys.kysy_liukuluku('Sukupuoli (Nainen 0, mies 1):', 0, 1) if ika > 18: tavoitepaino = kysymys.kysy_liukuluku('Tavoitepaino (kg):', 30, 350) aikuinen = luokat.Aikuinen(sukunimi, etunimi, pituus, paino, ika, sukupuoli, tavoitepaino) lista.append(aikuinen) else: lapsi = luokat.Lapsi(sukunimi, etunimi, pituus, paino, ika, sukupuoli) lista.append(lapsi) '''# Lasketaan ja tulostetaan painoindeksi bmi = laskenta.bmi(paino, pituus) print('Henkilön painoindeksi on:', round(bmi, 1))
# Kirjastojen ja modulien käyttöönotot import kysymys import laskenta import luokat # Varsinaisen pääohjelman alku # Työsilmukka. Ikuinen silmukka jossa on poistumistoiminto uusi = 'K' lista = [] while True: # Tehdään kysymykset modulin kysymys.py funktiota käyttämällä etunimi = input('Anna etunimesi: ') sukunimi = input('Anna sukunimesi: ') paino = kysymys.kysy_liukuluku('Paino kiloina: ', 30, 300) pituus = kysymys.kysy_liukuluku('Pituus sentteinä: ', 100, 250) ika = kysymys.kysy_liukuluku('Ikä vuosina: ', 3, 120) sukupuoli = kysymys.kysy_liukuluku('Sukupuoli: Nainen 0, mies 1: ', 0, 1) # Luodaan oliot iästä riippuen if ika >= 18: tavoitepaino = kysymys.kysy_liukuluku('Tavoitepainosi kiloissa: ', 30, 300) aikuinen = luokat.Aikuinen(etunimi, sukunimi, pituus, paino, ika, sukupuoli, tavoitepaino) lista.append(aikuinen) else: lapsi = luokat.Lapsi(etunimi, sukunimi, pituus, paino, ika, sukupuoli) lista.append(lapsi) '''# Lasketaan ja tulostetaan painoindeksi kahden desimaalin tarkkuudella