Advertisement
tuomasvaltanen

Untitled

Nov 22nd, 2022 (edited)
780
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.29 KB | None | 0 0
  1. # luento 22.11.2022, Funktiot!
  2. print("Tervetuloa! Huom: myös print() on funktio!")
  3.  
  4. # TIEDOSTO: functions.py
  5.  
  6. # functions.py, täällä on meidän omat
  7. # funktiot. ikään kuin työkalupakki!
  8.  
  9. # funktio joka näyttää tekstiä
  10. def show_text():
  11.     print("Tervetuloa ohjelman käyttäjäksi!")
  12.     print("--------------------------------")
  13.     print("Seuraa ohjeita!")
  14.     print()
  15.  
  16.  
  17. # funktio joka ottaa kolme parametria
  18. # ja tulostaa kaksi riviä tekstiä
  19. def combine_text(first, last, age):
  20.     print(f"Tervetuloa: {first} {last}.")
  21.     print(f"Ikäsi on: {age} vuotta.")
  22.  
  23.  
  24. # funktio joka palauttaa vuosiluvun muuttujaan
  25. def get_year():
  26.     result = 2022
  27.     return result
  28.  
  29. # funktio, joka kertoo onko
  30. # numero parillinen vai pariton
  31. # parametrina numero jota tutkitaan
  32. # funktio palauttaa tekstin siitä onko
  33. # numero parillinen vai pariton
  34. def get_even_number_text(number):
  35.     if number % 2 == 0:
  36.         return "Parillinen."
  37.     else:
  38.         return "Pariton."
  39.  
  40.  
  41. # tunnit kokonaisiksi päiviksi
  42. def hours_to_days(hours):
  43.     result = hours // 24
  44.     return result
  45.  
  46. # apufunktio, joka kääntää tekstin toisinpäin
  47. # koska Pythonissa tämä on aika erikoinen koodirivi
  48. def reverse_string(text):
  49.     return text[::-1]
  50.  
  51.  
  52. # funktio, joka tarkistaa annetusta sanasta
  53. # onko se palindromi vai ei (True/False)
  54. def check_palindrome(text):
  55.     # kutsutaan omaa funktiota reverse_string ylempää
  56.     reversed_text = reverse_string(text)
  57.  
  58.     if text == reversed_text:
  59.         return True
  60.     else:
  61.         return False
  62.  
  63.  
  64. # tarkistusfunktio, joka tarkistaa
  65. # että tilauskoodissa on 10 merkkiä
  66. # ja ensimmäinen merkki on T
  67. def check_order(code):
  68.     okay = True
  69.  
  70.     # jos koodi ei ole tasan 10 merkkiä
  71.     # => False
  72.     if len(code) != 10:
  73.         okay = False
  74.  
  75.     # jos ensimmäinen merkki ei ole "T":
  76.     # => False
  77.     if code[0] != "T":
  78.         okay = False
  79.  
  80.     return okay
  81.  
  82.  
  83. # funktio joka tulostaa silmukassa listan
  84. def show_list(data):
  85.     # tulostetaan datan sisältö silmukalla
  86.     for word in data:
  87.         print(word)
  88.  
  89.  
  90. # funktio, joka laskee minkä tahansa
  91. # annetun listan keskiarvon,
  92. # pyöristää kahteen desimaaliin
  93. def get_list_average(numbers):
  94.     total = sum(numbers)
  95.     amount = len(numbers)
  96.     result = total / amount
  97.     result = round(result, 2)
  98.     return result
  99.  
  100. # --------------------------------------------------------------
  101.  
  102. # MUUT TIEDOSTOT
  103.  
  104. # importataan omat funktiot
  105. from functions import *
  106.  
  107. print("OHJELMA ALKAA")
  108. show_text()
  109. print("OHJELMA LOPPUU")
  110.  
  111. print()
  112.  
  113. combine_text("Herra", "Hakkarainen", 42)
  114.  
  115. print()
  116.  
  117. # UUSI TIEDOSTO
  118.  
  119. from functions import *
  120.  
  121. # tulostetaan funktiosta tuleva vuosiluku
  122. print()
  123. year = get_year()
  124. print(year)
  125. print()
  126.  
  127. # kysytään käyttäjältä kokonaisluku
  128. value = input("Anna numero:\n")
  129. value = int(value)
  130.  
  131. # käytetään omaa funktiota tutkimaan
  132. # onko numero pariton vai parillinen
  133. # vastaus tallentuu text-muuttujaan funktiosta
  134. text = get_even_number_text(value)
  135. print(text)
  136.  
  137. # UUSI TIEDOSTO
  138.  
  139. from functions import *
  140.  
  141. # käännetään teksti toisinpäin omalla funktiolla
  142. text = reverse_string("lunta sataa")
  143. print(text)
  144.  
  145. # kutsutaan omaa funktiota
  146. # joka muuttaa tunnit päiviksi (lkm)
  147. days = hours_to_days(793)
  148. print(f"{days} päivää.")
  149.  
  150. # UUSI TIEDOSTO
  151.  
  152. from functions import *
  153.  
  154. word = input("Anna jokin sana:\n")
  155.  
  156. palindrome = check_palindrome(word)
  157.  
  158. # tulostetaan lopputulos
  159. if palindrome:
  160.     print("Palindromi!")
  161. else:
  162.     print("Ei ole palindromi.")
  163.  
  164. # UUSI TIEDOSTO
  165.  
  166. from functions import *
  167.  
  168. test = "T5674-9752"
  169.  
  170. result = check_order(test)
  171.  
  172. if result:
  173.     print("Koodi ok!")
  174. else:
  175.     print("Koodi ei ole ok...")
  176.  
  177.  
  178. # UUSI TIEDOSTO
  179.  
  180. from functions import *
  181.  
  182. words = ["Helsinki", "Rovaniemi", "Oulu", "Tampere"]
  183.  
  184. show_list(words)
  185.  
  186. print()
  187.  
  188. # UUSI TIEDOSTO
  189.  
  190. from functions import *
  191.  
  192. # kolme listaa eri numeroita
  193. numbers = [5, 9, 7, 8, 4, 3, 6, 7, 5]
  194. grades = [5, 3, 4, 2, 1, 3, 4, 4, 5, 5, 3]
  195. temperatures = [5.6, 3.5, 7.9, 6.8, 4.2, 5.1]
  196.  
  197. # käytetään omaa funktiota kolme kertaa
  198. # kaikilla kerroilla eri data
  199. avg_numbers = get_list_average(numbers)
  200. print(avg_numbers)
  201.  
  202. avg_grades = get_list_average(grades)
  203. print(avg_grades)
  204.  
  205. avg_temperatures = get_list_average(temperatures)
  206. print(avg_temperatures)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement