+++ /dev/null
-mkdir minKatalog
-cd /courses/TDDE44/kursmaterial/laboration1
-ls
-cat virus.exe
-cp virus.exe /home/nilfo359/minKatalog
-mv virus.exe mitt_skript.sh
-sh mitt_skript.sh ###eller### ls -la; chmod 'u+x' mitt_skript.sh; ./mitt_skript.sh
-code virus.exe
-###Lägg till:###
-cd /home/nilfo359/
-ls
-###----------###
\ No newline at end of file
+++ /dev/null
-#!/usr/bin/env python3
-
-# OM EXEKVERBARA TEXTFILER
-#
-# När en exekverbar textfil körs i terminalen tittar systemet (dvs skalet på den
-# _första_ raden i filen. Om den första raden börjar med tecknena #! kommer
-# resten av raden att användas som en sökväg till det program som ska användas
-# för att tolka resten av filen.
-#
-# När denna fil körs i terminalen kommer python3 att användas för att tolka
-# innehållet. För användaren som kör filen är det ingen skillnad på att köra ett
-# kompilerat program och ett skript.
-#
-# Den här filen heter pythonskript.py, men filnamnet har egenligen ingen
-# betydelse. Om man döper om denna fil till dota kommer samma sak att hända när
-# man kör den.
-#
-# Det enda som har någon betydelse är om användaren har rätt att exekvera filen,
-# och innehållet i filen.
-
-# Här importeras modulen sys som hjälper oss interagera med systemet
-import sys
-
-def demonstrate_sysargv():
- print("I variabeln sys.argv hittar vi en lista vars första element är")
- print("kommandot som skrevs. Efterföljande element i listan är alla")
- print("argument som angavs. Se här:\n")
- print(sys.argv)
- print("\nProva att köra detta kommando igen och skicka med några argument")
- print("också!")
-
-# UPPGIFT!
-#
-# Er uppgift är att ta bort ordet pass i funktionen nedan och skriva Pythonkod
-# som skriver ut det första argumentet som skickades till detta skript.
-#
-# När ni gjort det, ändra på anropet längst ner i denna fil så att funktionen
-# say_hello() körs istället.
-def say_hello():
- print(sys.argv[1])
-
-# Här är anropet till den funktion som ska användas när detta skript körs.
-# När ni skrivit klart funktionen say_hello(), ändra anropet nedan så
-# att den körs istället!
-say_hello()
-
+++ /dev/null
-# Uppgift 1
-
-import math
-
-def return_five():
- return "five"
-
-def print_five():
- print("five")
-
-def add_strings():
- return "hej" + "san"
-
-def use_the_var():
- value = 5
- return value * 5
-
-def use_the_arg(a_string):
- print(a_string)
- return a_string
-
-def to_string(a_value):
- return str(a_value)
-
-def to_integer(a_value):
- return int(a_value)
-
-def to_float(a_value):
- return float(a_value)
-
-def to_any_type(a_value, a_type):
- return a_type(a_value)
-
-def print_type(a_value):
- print(type(a_value))
-
-def subtract(value1, value2):
- return value1 - value2
-
-def split_bill(amount, number_of_people):
- print(amount / number_of_people)
- return amount / number_of_people
-
-def round_up(value):
- return math.ceil(value)
-
-def round_down(value):
- return math.floor(value)
-
-def fahrenheit_to_celsius(temperature):
- return (temperature - 32) * (5/9)
-
-def celsius_to_fahrenheit(temperature):
- return (temperature * (9/5) + 32)
-
-def pythagoras(x, y):
- return (x**2 + y**2)**(1/2)
-
-if __name__ == "__main__":
- pass
\ No newline at end of file
+++ /dev/null
-UEsDBBQAAAAIAJuAM1QWfLPzhAEAACEEAAAaABwAbmlsZm8zNTktcHl1cHBnMV8xL29yaWcucHlV
-VAkAA5Yo6GGWKOhhdXgLAAEEehxpWQQA4fUFjVPNjtsgEL77KZD3gr3ZRkmVw66Ux+h5NInHNpUN
-CHC6fvsdB5KaNCvVF8T3NzCDX8QvazvVBrErCjVa44IYMfRF0VArHIXJaWjVhWT1UQj+IiTKBSuj
-yjqlQya6IjJqqijCpgEfGO/8Y1RPv0vxKkqPOiVOniD0BBd0N/EFh4nEURzW1gjWDGY2dJ3EVC07
-0R1ch9zAmBFM2rL4Gp8flrk7cTdwNHXknjti3QdHOxgMz/U5dXegniHMlm7Mhs+97HMzZppqPZ+M
-WDclI5LFT6fg8BzkFd1tYqf3ebHIibdEJqcdVICTGgaJo5l02Ag9jSdyYFqwZOyQV48isf1Xld3r
-O1V6p8w2MFn5pJ/La/5xJjXIdU+iozF/9LceHoRxmanF3pHuiS/IEznT4NXkZaDRkkM2PqSsGe7S
-z33FT1Uetu8pLgUsWX+T/zOOg963h4p/G45NY55Dj51x6OXnRswP5s+63rN65qWqa7nbLjbVCgCN
-IwGI41GUACMqDVCmCaH3X1BLAwQUAAAACACbgDNUHcra+cgAAAAWAgAAJAAcAG5pbGZvMzU5LXB5
-dXBwZzFfMS9weXVwcGd0ZXN0MV8xLmxvZ1VUCQADlijoYZYo6GF1eAsAAQR6HGlZBADh9QV10U0K
-wjAQBeB9TvHEjW7KpFr/dkK1SNWW2l5A0LagNWgV3HsGT6BX8AK5mK0uRJhklXzzwgyMaFYHfhBF
-Ez/GXN9X8RhJGHqzaTyJUFeFqN+QlrRIjuBAHfSjSK0fSxpBEuOGuG2IdwzeNbhj8B7fts/HyWbj
-1OG5y7PDMz8K9Xke8Dz8G1x8VrZKFosxwkDfll5VtslCSxJhvcn063Jqf1PuGfpxhDpudvk+L6p7
-CS9w/eqXC6WfCK9ldijOSqX5tqy7NQQg3lBLAwQUAAAACACbgDNUSbtDE3kAAACUAAAAGwAcAG5p
-bGZvMzU5LXB5dXBwZzFfMS9pbmZvLnR4dFVUCQADlijoYZYo6GF1eAsAAQR6HGlZBADh9QVFzE0O
-gyAQQOE9p+ACtAwCApcxOgyWFJX4s/D2lVW37yVfHE8KnCuplJAgwHOwQepgNLsO2p+15pK2zniW
-ciGOH8Ivxadftc45nQO86s22Pc95HQtfojmuhaeE3kUT5WR6I8kpsp0jDdhP0iKmPyvq3SQY4N2Q
-hv0AUEsBAh4DFAAAAAgAm4AzVBZ8s/OEAQAAIQQAABoAGAAAAAAAAQAAAKSBAAAAAG5pbGZvMzU5
-LXB5dXBwZzFfMS9vcmlnLnB5VVQFAAOWKOhhdXgLAAEEehxpWQQA4fUFUEsBAh4DFAAAAAgAm4Az
-VB3K2vnIAAAAFgIAACQAGAAAAAAAAQAAAKSB2AEAAG5pbGZvMzU5LXB5dXBwZzFfMS9weXVwcGd0
-ZXN0MV8xLmxvZ1VUBQADlijoYXV4CwABBHocaVkEAOH1BVBLAQIeAxQAAAAIAJuAM1RJu0MTeQAA
-AJQAAAAbABgAAAAAAAEAAACkgf4CAABuaWxmbzM1OS1weXVwcGcxXzEvaW5mby50eHRVVAUAA5Yo
-6GF1eAsAAQR6HGlZBADh9QVQSwUGAAAAAAMAAwArAQAAzAMAAAAA
\ No newline at end of file
+++ /dev/null
-# Uppgift 2
-
-import random
-
-def second_in_list(values):
- return values[1]
-
-def last_in_list(values):
- return values[-1]
-
-def second_last_in_list(values):
- return values[-2]
-
-def n_in_list(values, n):
- return values[n]
-
-def three_first_in_list(values):
- return values[:3] # return (values[0], values[1], values[2])
-
-def three_last_in_list(values):
- return values[-3:]
-
-def but_five_last_in_list(values):
- return values[:-5]
-
-def every_other_in_list(values):
- return values[::2]
-
-def two_around_n_in_list(values, n):
- return values[n-2:n+3]
-
-def new_list_with_n(values, n):
- return [*values, n]
-
-def append_n_to_list(values, a_value):
- values.append(a_value)
- return values
-
-def insert_4_on_pos_3(values):
- values.insert(3, 4)
- return values
-
-def extend_vals_to_list(values1, values2):
- values1.extend(values2)
- return values1
-
-def remove_from_third_in_list(values):
- del values[2:]
- return values
-
-def concatenate_lists(values1, values2):
- return [*values1, *values2]
-
-def select_random(values):
- return random.choice(values)
-
\ No newline at end of file
+++ /dev/null
-UEsDBBQAAAAIALuAM1S5y9gqSwEAAEEEAAAaABwAbmlsZm8zNTktcHl1cHBnMV8yL29yaWcucHlV
-VAkAA9Io6GHSKOhhdXgLAAEEehxpWQQA4fUFjVPbboMwDH3nKyL1hW5tNaB94T/2VCErAzMiQYIS
-025/v4wkbL0gBQkpss85PrHjDXsfx0/REsuTRAyj0sQ0l40akqTBlhmslWxASOiFofTC+wnNtkyY
-/TTSpCVzsXNWOUbPDcXg94HgS0Tzcs+Td+gdk08J0uOp04jQCh1XpywqtgkxDzy/Vbu/+y7HvNr+
-LxF9k6L01j4mssYu8dRyf/JUvKD+BkUd6ihiGdpHVwVcq8m2PrqT+7yUr0XoP15nElwFdSDXuOeX
-JeGJfBxxrkrqtiqH+eT5Lnpw6DTkHm05USENaoIjKAmjMlDcdsGLOVRa7NhxVQm/6NeeDZk7h1mY
-eH6jmh0cJQ3JR+XMSWsclJ1yq9UA1Am9slgN9svTsk9kxafdmprbuvafNcyay7tB2Lw/5csG9lgT
-uL1/+npc6lB3StQYEDPgB1BLAwQUAAAACAC7gDNUiGiPTMcAAAAKAgAAJAAcAG5pbGZvMzU5LXB5
-dXBwZzFfMi9weXVwcGd0ZXN0MV8yLmxvZ1VUCQAD0ijoYdIo6GF1eAsAAQR6HGlZBADh9QV10T0O
-gjAcBfC9p3jGRRYiKKJuJigxiBA+DiCKSqLYIJi4ewZPgFfwAr2YBQcd2k7t+7V5+aekyxccLwjm
-ToQVe4bRDLHv28tFNA/QKCHNGZqqqxo2yhQG6IXV+UH9h0QGWxnsxKC3HVpfJIlUtlLZSSWVyEAc
-D8WxIZxiJExNYToWphNe94tJ+09h7Loz+B57rG3OuqGiZ/aRpEf2vl2V7yWrAqsL0CI9Zecs5/sS
-tmc5/JEFyl7w7+XxkleUHrJ92XR1CEA+UEsDBBQAAAAIALuAM1TZRhVneQAAAJQAAAAbABwAbmls
-Zm8zNTktcHl1cHBnMV8yL2luZm8udHh0VVQJAAPSKOhh0ijoYXV4CwABBHocaVkEAOH1BUXMTQ6D
-IBBA4T2nmAvQMlSKcBkzwGBJUYk/C29fXXX7XvIl2tkDaKW1VCjRAb69Mt504th4vdZcal5exolc
-KkP8cPxyuvrR2ljyPuhHO8WylrHMVGFKZjsm4J40slNEvUXMNtjAjnqKycSguu7PynbeEg76eSM3
-9gNQSwECHgMUAAAACAC7gDNUucvYKksBAABBBAAAGgAYAAAAAAABAAAApIEAAAAAbmlsZm8zNTkt
-cHl1cHBnMV8yL29yaWcucHlVVAUAA9Io6GF1eAsAAQR6HGlZBADh9QVQSwECHgMUAAAACAC7gDNU
-iGiPTMcAAAAKAgAAJAAYAAAAAAABAAAApIGfAQAAbmlsZm8zNTktcHl1cHBnMV8yL3B5dXBwZ3Rl
-c3QxXzIubG9nVVQFAAPSKOhhdXgLAAEEehxpWQQA4fUFUEsBAh4DFAAAAAgAu4AzVNlGFWd5AAAA
-lAAAABsAGAAAAAAAAQAAAKSBxAIAAG5pbGZvMzU5LXB5dXBwZzFfMi9pbmZvLnR4dFVUBQAD0ijo
-YXV4CwABBHocaVkEAOH1BVBLBQYAAAAAAwADACsBAACSAwAAAAA=
\ No newline at end of file
+++ /dev/null
-# Uppgift 3
-
-import random
-
-def concatenate_strings(string1, string2):
- return string1 + string2
-
-def use_the_linebreak():
- print("rad 1\nrad 2")
- return "rad 1\nrad 2"
-
-def generate_pokemon_name(prefixes, suffixes):
- return random.choice(prefixes) + random.choice(suffixes)
-
-def first_word(s):
- return s.split()[0]
-
-def join_list(values):
- return ":".join(values)
-
-def remove_spaces(s):
- return s.rstrip()
-
-def get_characters(s, pos, num_of_chars):
- return s[pos:pos+num_of_chars]
-
-
-print(get_characters("Ett ytterligare exempel", 4, 11))
-
+++ /dev/null
-UEsDBBQAAAAIAOGAM1TnqvMgHAEAADUCAAAaABwAbmlsZm8zNTktcHl1cHBnMV8zL29yaWcucHlV
-VAkAAxYp6GEWKehhdXgLAAEEehxpWQQA4fUFZVDBTsMwDL33K6xySbVqooPT7nwCp4GikLpdWJtE
-jjvG3+MuG2wlUmIr7/n52Q/wGmPvOoanonBjDMRAxrdhLIoWO7DBW8Po5erE5HyfVI5NDTnZVNsC
-5BDyRP7y2cDqCmehKaHmPerBefwgNAd1KYtCYlWSaaF583PYlNWt4D2U1Xr0SLOnGA44Bq+9GVFF
-ws6dMImzqTtn99byYGu7D87+sSuxeo/8VudmnaPE+itQqxaCaZ3i4FhVu8f3zP0MzsuMidXRDNPS
-QLkt1zPjCuYakgmOst5oLKb/LWjeY1TVdXLWdm/IWEYSdg0xyOOnUYfujCwFdkLYyl3dcsRukTe/
-ECxfmOGbJR9cbwgBTzhGHMoanmtomkp8/ABQSwMEFAAAAAgA4YAzVFhgDlClAAAAKQEAACQAHABu
-aWxmbzM1OS1weXVwcGcxXzMvcHl1cHBndGVzdDFfMy5sb2dVVAkAAxYp6GEWKehhdXgLAAEEehxp
-WQQA4fUF41IGAgVv/6AgV+8QBZ/D04JDHBVCAwLcPd1CXIMUQLJcXCC+gqGesZ6hlYKRgUJB/uEl
-eel6CGEj7MLG2IVNsAubYhc2wy5sjiLMBfZFcKivr6NCgP/hFj93KwVDEwM9BQ1DAwOFpNSMw9vK
-ijUhqlxKFQ4vKVIoKErNyczNzAOySxTc/V28gbpcFAoOL1UIqCzJyM8rLShIz0wrAVmmyKWgwAUA
-UEsDBBQAAAAIAOGAM1SGfeA2eAAAAJQAAAAbABwAbmlsZm8zNTktcHl1cHBnMV8zL2luZm8udHh0
-VVQJAAMWKehhFinoYXV4CwABBHocaVkEAOH1BUXMSw6DIBRA0TmrYAO0vMfHwGYMCFhSVKIycPeF
-Uaf3Jie4O1pKkSMyDgwMBW35ZDmSdsWzrz2XdAhlSMol0uUTl28Mvbda15zuWbzqQ44zr3l3hW5B
-XW2jMqF0WngDkwYBvvNJY9RK+OBR4p9l9RkSzOI9kIH9AFBLAQIeAxQAAAAIAOGAM1TnqvMgHAEA
-ADUCAAAaABgAAAAAAAEAAACkgQAAAABuaWxmbzM1OS1weXVwcGcxXzMvb3JpZy5weVVUBQADFino
-YXV4CwABBHocaVkEAOH1BVBLAQIeAxQAAAAIAOGAM1RYYA5QpQAAACkBAAAkABgAAAAAAAEAAACk
-gXABAABuaWxmbzM1OS1weXVwcGcxXzMvcHl1cHBndGVzdDFfMy5sb2dVVAUAAxYp6GF1eAsAAQR6
-HGlZBADh9QVQSwECHgMUAAAACADhgDNUhn3gNngAAACUAAAAGwAYAAAAAAABAAAApIFzAgAAbmls
-Zm8zNTktcHl1cHBnMV8zL2luZm8udHh0VVQFAAMWKehhdXgLAAEEehxpWQQA4fUFUEsFBgAAAAAD
-AAMAKwEAAEADAAAAAA==
\ No newline at end of file
--- /dev/null
+from .myTest import *
--- /dev/null
+mkdir minKatalog
+cd /courses/TDDE44/kursmaterial/laboration1
+ls
+cat virus.exe
+cp virus.exe /home/nilfo359/minKatalog
+mv virus.exe mitt_skript.sh
+sh mitt_skript.sh ###eller### ls -la; chmod 'u+x' mitt_skript.sh; ./mitt_skript.sh
+code virus.exe
+
+###Lägg till:###
+cd /home/nilfo359/
+ls
+###----------###
\ No newline at end of file
--- /dev/null
+# Uppgift 1
+
+import math
+
+def return_five():
+ return "five"
+
+def print_five():
+ print("five")
+
+def add_strings():
+ return "hej" + "san"
+
+def use_the_var():
+ value = 5
+ return value * 5
+
+def use_the_arg(a_string):
+ print(a_string)
+ return a_string
+
+def to_string(a_value):
+ return str(a_value)
+
+def to_integer(a_value):
+ return int(a_value)
+
+def to_float(a_value):
+ return float(a_value)
+
+def to_any_type(a_value, a_type):
+ return a_type(a_value)
+
+def print_type(a_value):
+ print(type(a_value))
+
+def subtract(value1, value2):
+ return value1 - value2
+
+def split_bill(amount, number_of_people):
+ print(amount / number_of_people)
+ return amount / number_of_people
+
+def round_up(value):
+ return math.ceil(value)
+
+def round_down(value):
+ return math.floor(value)
+
+def fahrenheit_to_celsius(temperature):
+ return (temperature - 32) * (5/9)
+
+def celsius_to_fahrenheit(temperature):
+ return (temperature * (9/5) + 32)
+
+def pythagoras(x, y):
+ return (x**2 + y**2)**(1/2)
+
+if __name__ == "__main__":
+ pass
\ No newline at end of file
--- /dev/null
+#!/usr/bin/env python3
+
+# OM EXEKVERBARA TEXTFILER
+#
+# När en exekverbar textfil körs i terminalen tittar systemet (dvs skalet på den
+# _första_ raden i filen. Om den första raden börjar med tecknena #! kommer
+# resten av raden att användas som en sökväg till det program som ska användas
+# för att tolka resten av filen.
+#
+# När denna fil körs i terminalen kommer python3 att användas för att tolka
+# innehållet. För användaren som kör filen är det ingen skillnad på att köra ett
+# kompilerat program och ett skript.
+#
+# Den här filen heter pythonskript.py, men filnamnet har egenligen ingen
+# betydelse. Om man döper om denna fil till dota kommer samma sak att hända när
+# man kör den.
+#
+# Det enda som har någon betydelse är om användaren har rätt att exekvera filen,
+# och innehållet i filen.
+
+# Här importeras modulen sys som hjälper oss interagera med systemet
+import sys
+
+def demonstrate_sysargv():
+ print("I variabeln sys.argv hittar vi en lista vars första element är")
+ print("kommandot som skrevs. Efterföljande element i listan är alla")
+ print("argument som angavs. Se här:\n")
+ print(sys.argv)
+ print("\nProva att köra detta kommando igen och skicka med några argument")
+ print("också!")
+
+# UPPGIFT!
+#
+# Er uppgift är att ta bort ordet pass i funktionen nedan och skriva Pythonkod
+# som skriver ut det första argumentet som skickades till detta skript.
+#
+# När ni gjort det, ändra på anropet längst ner i denna fil så att funktionen
+# say_hello() körs istället.
+def say_hello():
+ print(sys.argv[1])
+
+# Här är anropet till den funktion som ska användas när detta skript körs.
+# När ni skrivit klart funktionen say_hello(), ändra anropet nedan så
+# att den körs istället!
+say_hello()
+
--- /dev/null
+# Uppgift 1
+
+import math
+
+def return_five():
+ return "five"
+
+def print_five():
+ print("five")
+
+def add_strings():
+ return "hej" + "san"
+
+def use_the_var():
+ value = 5
+ return value * 5
+
+def use_the_arg(a_string):
+ print(a_string)
+ return a_string
+
+def to_string(a_value):
+ return str(a_value)
+
+def to_integer(a_value):
+ return int(a_value)
+
+def to_float(a_value):
+ return float(a_value)
+
+def to_any_type(a_value, a_type):
+ return a_type(a_value)
+
+def print_type(a_value):
+ print(type(a_value))
+
+def subtract(value1, value2):
+ return value1 - value2
+
+def split_bill(amount, number_of_people):
+ print(amount / number_of_people)
+ return amount / number_of_people
+
+def round_up(value):
+ return math.ceil(value)
+
+def round_down(value):
+ return math.floor(value)
+
+def fahrenheit_to_celsius(temperature):
+ return (temperature - 32) * (5/9)
+
+def celsius_to_fahrenheit(temperature):
+ return (temperature * (9/5) + 32)
+
+def pythagoras(x, y):
+ return (x**2 + y**2)**(1/2)
+
+if __name__ == "__main__":
+ pass
\ No newline at end of file
--- /dev/null
+UEsDBBQAAAAIAKFROVQWfLPzhAEAACEEAAAaABwAbmlsZm8zNTktcHl1cHBnMV8xL29yaWcucHlV
+VAkAAx2/72Edv+9hdXgLAAEEehxpWQQA4fUFjVPNjtsgEL77KZD3gr3ZRkmVw66Ux+h5NInHNpUN
+CHC6fvsdB5KaNCvVF8T3NzCDX8QvazvVBrErCjVa44IYMfRF0VArHIXJaWjVhWT1UQj+IiTKBSuj
+yjqlQya6IjJqqijCpgEfGO/8Y1RPv0vxKkqPOiVOniD0BBd0N/EFh4nEURzW1gjWDGY2dJ3EVC07
+0R1ch9zAmBFM2rL4Gp8flrk7cTdwNHXknjti3QdHOxgMz/U5dXegniHMlm7Mhs+97HMzZppqPZ+M
+WDclI5LFT6fg8BzkFd1tYqf3ebHIibdEJqcdVICTGgaJo5l02Ag9jSdyYFqwZOyQV48isf1Xld3r
+O1V6p8w2MFn5pJ/La/5xJjXIdU+iozF/9LceHoRxmanF3pHuiS/IEznT4NXkZaDRkkM2PqSsGe7S
+z33FT1Uetu8pLgUsWX+T/zOOg963h4p/G45NY55Dj51x6OXnRswP5s+63rN65qWqa7nbLjbVCgCN
+IwGI41GUACMqDVCmCaH3X1BLAwQUAAAACAChUTlUHcra+cgAAAAWAgAAJAAcAG5pbGZvMzU5LXB5
+dXBwZzFfMS9weXVwcGd0ZXN0MV8xLmxvZ1VUCQADHb/vYR2/72F1eAsAAQR6HGlZBADh9QV10U0K
+wjAQBeB9TvHEjW7KpFr/dkK1SNWW2l5A0LagNWgV3HsGT6BX8AK5mK0uRJhklXzzwgyMaFYHfhBF
+Ez/GXN9X8RhJGHqzaTyJUFeFqN+QlrRIjuBAHfSjSK0fSxpBEuOGuG2IdwzeNbhj8B7fts/HyWbj
+1OG5y7PDMz8K9Xke8Dz8G1x8VrZKFosxwkDfll5VtslCSxJhvcn063Jqf1PuGfpxhDpudvk+L6p7
+CS9w/eqXC6WfCK9ldijOSqX5tqy7NQQg3lBLAwQUAAAACAChUTlUwdfvmHgAAACUAAAAGwAcAG5p
+bGZvMzU5LXB5dXBwZzFfMS9pbmZvLnR4dFVUCQADHb/vYR2/72F1eAsAAQR6HGlZBADh9QVFzEEO
+gyAQQNE9p+ACtDNYFLmM0WGwpKhEZeHtlVW3/yfPjyc7KTVorQCVNhLBYeMARTl4f9YaU9ga04sQ
+E0v6Mv3YP73kPMdwDvjKl9j2OMd1THLx5iiLDIF6642HyXQG2GpuG8sfpG6Clij8WZWvKuGA74pU
+7AZQSwECHgMUAAAACAChUTlUFnyz84QBAAAhBAAAGgAYAAAAAAABAAAApIEAAAAAbmlsZm8zNTkt
+cHl1cHBnMV8xL29yaWcucHlVVAUAAx2/72F1eAsAAQR6HGlZBADh9QVQSwECHgMUAAAACAChUTlU
+Hcra+cgAAAAWAgAAJAAYAAAAAAABAAAApIHYAQAAbmlsZm8zNTktcHl1cHBnMV8xL3B5dXBwZ3Rl
+c3QxXzEubG9nVVQFAAMdv+9hdXgLAAEEehxpWQQA4fUFUEsBAh4DFAAAAAgAoVE5VMHX75h4AAAA
+lAAAABsAGAAAAAAAAQAAAKSB/gIAAG5pbGZvMzU5LXB5dXBwZzFfMS9pbmZvLnR4dFVUBQADHb/v
+YXV4CwABBHocaVkEAOH1BVBLBQYAAAAAAwADACsBAADLAwAAAAA=
\ No newline at end of file
--- /dev/null
+# test2
+#from .myTest import (add_strings, celsius_to_fahrenheit, fahrenheit_to_celsius, math, print_five, print_type, pythagoras, return_five, round_down, round_up, split_bill, subtract, to_any_type, to_float, to_integer, to_string, use_the_arg, use_the_var)
+import myTest
+
+def insert_into_namespace(func_name, space=globals()):
+ exec("global {0}\n{0} = myTest.{0}".format(func_name))
+ #space[func_name] = func_name
+
+for defined in dir(myTest):
+ if not defined[0:2] == '__' and not defined == "math":
+ insert_into_namespace(defined)
+
+#for func in (add_strings, celsius_to_fahrenheit, fahrenheit_to_celsius, math, print_five, print_type, pythagoras, return_five, round_down, round_up, split_bill, subtract, to_any_type, to_float, to_integer, to_string, use_the_arg, use_the_var):
+# type(func)
\ No newline at end of file
--- /dev/null
+# Uppgift 2
+
+import random
+
+def second_in_list(values):
+ return values[1]
+
+def last_in_list(values):
+ return values[-1]
+
+def second_last_in_list(values):
+ return values[-2]
+
+def n_in_list(values, n):
+ return values[n]
+
+def three_first_in_list(values):
+ return values[:3] # return (values[0], values[1], values[2])
+
+def three_last_in_list(values):
+ return values[-3:]
+
+def but_five_last_in_list(values):
+ return values[:-5]
+
+def every_other_in_list(values):
+ return values[::2]
+
+def two_around_n_in_list(values, n):
+ return values[n-2:n+3]
+
+def new_list_with_n(values, n):
+ return [*values, n]
+
+def append_n_to_list(values, a_value):
+ values.append(a_value)
+ return values
+
+def insert_4_on_pos_3(values):
+ values.insert(3, 4)
+ return values
+
+def extend_vals_to_list(values1, values2):
+ values1.extend(values2)
+ return values1
+
+def remove_from_third_in_list(values):
+ del values[2:]
+ return values
+
+def concatenate_lists(values1, values2):
+ return [*values1, *values2]
+
+def select_random(values):
+ return random.choice(values)
+
\ No newline at end of file
--- /dev/null
+UEsDBBQAAAAIALVROVS5y9gqSwEAAEEEAAAaABwAbmlsZm8zNTktcHl1cHBnMV8yL29yaWcucHlV
+VAkAA0W/72FFv+9hdXgLAAEEehxpWQQA4fUFjVPbboMwDH3nKyL1hW5tNaB94T/2VCErAzMiQYIS
+025/v4wkbL0gBQkpss85PrHjDXsfx0/REsuTRAyj0sQ0l40akqTBlhmslWxASOiFofTC+wnNtkyY
+/TTSpCVzsXNWOUbPDcXg94HgS0Tzcs+Td+gdk08J0uOp04jQCh1XpywqtgkxDzy/Vbu/+y7HvNr+
+LxF9k6L01j4mssYu8dRyf/JUvKD+BkUd6ihiGdpHVwVcq8m2PrqT+7yUr0XoP15nElwFdSDXuOeX
+JeGJfBxxrkrqtiqH+eT5Lnpw6DTkHm05USENaoIjKAmjMlDcdsGLOVRa7NhxVQm/6NeeDZk7h1mY
+eH6jmh0cJQ3JR+XMSWsclJ1yq9UA1Am9slgN9svTsk9kxafdmprbuvafNcyay7tB2Lw/5csG9lgT
+uL1/+npc6lB3StQYEDPgB1BLAwQUAAAACAC1UTlUiGiPTMcAAAAKAgAAJAAcAG5pbGZvMzU5LXB5
+dXBwZzFfMi9weXVwcGd0ZXN0MV8yLmxvZ1VUCQADRb/vYUW/72F1eAsAAQR6HGlZBADh9QV10T0O
+gjAcBfC9p3jGRRYiKKJuJigxiBA+DiCKSqLYIJi4ewZPgFfwAr2YBQcd2k7t+7V5+aekyxccLwjm
+ToQVe4bRDLHv28tFNA/QKCHNGZqqqxo2yhQG6IXV+UH9h0QGWxnsxKC3HVpfJIlUtlLZSSWVyEAc
+D8WxIZxiJExNYToWphNe94tJ+09h7Loz+B57rG3OuqGiZ/aRpEf2vl2V7yWrAqsL0CI9Zecs5/sS
+tmc5/JEFyl7w7+XxkleUHrJ92XR1CEA+UEsDBBQAAAAIALVROVQf1422eAAAAJQAAAAbABwAbmls
+Zm8zNTktcHl1cHBnMV8yL2luZm8udHh0VVQJAANFv+9hRb/vYXV4CwABBHocaVkEAOH1BUXMTQ6D
+IBBA4T2n4AK0zChBuIwZYLCk/hCVhbevrrp9L/kSneylRI2oNCg0ErSHzvcg2sH7vdYy560zTuQy
+s4wfjl9Od2+1TiWfI77qJba9TGWlWS7JHG2RPBACO000WIBsgw3saKCYTAy67/+sqtcjwYjvB3mw
+H1BLAQIeAxQAAAAIALVROVS5y9gqSwEAAEEEAAAaABgAAAAAAAEAAACkgQAAAABuaWxmbzM1OS1w
+eXVwcGcxXzIvb3JpZy5weVVUBQADRb/vYXV4CwABBHocaVkEAOH1BVBLAQIeAxQAAAAIALVROVSI
+aI9MxwAAAAoCAAAkABgAAAAAAAEAAACkgZ8BAABuaWxmbzM1OS1weXVwcGcxXzIvcHl1cHBndGVz
+dDFfMi5sb2dVVAUAA0W/72F1eAsAAQR6HGlZBADh9QVQSwECHgMUAAAACAC1UTlUH9eNtngAAACU
+AAAAGwAYAAAAAAABAAAApIHEAgAAbmlsZm8zNTktcHl1cHBnMV8yL2luZm8udHh0VVQFAANFv+9h
+dXgLAAEEehxpWQQA4fUFUEsFBgAAAAADAAMAKwEAAJEDAAAAAA==
\ No newline at end of file
--- /dev/null
+# Uppgift 3
+
+import random
+
+def concatenate_strings(string1, string2):
+ return string1 + string2
+
+def use_the_linebreak():
+ print("rad 1\nrad 2")
+ return "rad 1\nrad 2"
+
+def generate_pokemon_name(prefixes, suffixes):
+ return random.choice(prefixes) + random.choice(suffixes)
+
+def first_word(s):
+ return s.split()[0]
+
+def join_list(values):
+ return ":".join(values)
+
+def remove_spaces(s):
+ return s.rstrip()
+
+def get_characters(s, pos, num_of_chars):
+ return s[pos:pos+num_of_chars]
+
+
+print(get_characters("Ett ytterligare exempel", 4, 11))
+
--- /dev/null
+UEsDBBQAAAAIAMhROVTnqvMgHAEAADUCAAAaABwAbmlsZm8zNTktcHl1cHBnMV8zL29yaWcucHlV
+VAkAA2i/72Fov+9hdXgLAAEEehxpWQQA4fUFZVDBTsMwDL33K6xySbVqooPT7nwCp4GikLpdWJtE
+jjvG3+MuG2wlUmIr7/n52Q/wGmPvOoanonBjDMRAxrdhLIoWO7DBW8Po5erE5HyfVI5NDTnZVNsC
+5BDyRP7y2cDqCmehKaHmPerBefwgNAd1KYtCYlWSaaF583PYlNWt4D2U1Xr0SLOnGA44Bq+9GVFF
+ws6dMImzqTtn99byYGu7D87+sSuxeo/8VudmnaPE+itQqxaCaZ3i4FhVu8f3zP0MzsuMidXRDNPS
+QLkt1zPjCuYakgmOst5oLKb/LWjeY1TVdXLWdm/IWEYSdg0xyOOnUYfujCwFdkLYyl3dcsRukTe/
+ECxfmOGbJR9cbwgBTzhGHMoanmtomkp8/ABQSwMEFAAAAAgAyFE5VFhgDlClAAAAKQEAACQAHABu
+aWxmbzM1OS1weXVwcGcxXzMvcHl1cHBndGVzdDFfMy5sb2dVVAkAA2i/72Fov+9hdXgLAAEEehxp
+WQQA4fUF41IGAgVv/6AgV+8QBZ/D04JDHBVCAwLcPd1CXIMUQLJcXCC+gqGesZ6hlYKRgUJB/uEl
+eel6CGEj7MLG2IVNsAubYhc2wy5sjiLMBfZFcKivr6NCgP/hFj93KwVDEwM9BQ1DAwOFpNSMw9vK
+ijUhqlxKFQ4vKVIoKErNyczNzAOySxTc/V28gbpcFAoOL1UIqCzJyM8rLShIz0wrAVmmyKWgwAUA
+UEsDBBQAAAAIAMhROVS1sQefdwAAAJQAAAAbABwAbmlsZm8zNTktcHl1cHBnMV8zL2luZm8udHh0
+VVQJAANov+9haL/vYXV4CwABBHocaVkEAOH1BUXMTQ6DIBBA4T2nmAvQMsNPo5cxIGBJUYnKwtsL
+q27fSz5vrzACkCDiAjlpQDGiGtGweoajrS3luEs9sJhygPkb5l/wrddSlhSvSb7KzfYjLWmzGVav
+z7qCiqSskW7Aj0GJrvHRUDBaOu9I0Z/l5e4STvLdkY49UEsBAh4DFAAAAAgAyFE5VOeq8yAcAQAA
+NQIAABoAGAAAAAAAAQAAAKSBAAAAAG5pbGZvMzU5LXB5dXBwZzFfMy9vcmlnLnB5VVQFAANov+9h
+dXgLAAEEehxpWQQA4fUFUEsBAh4DFAAAAAgAyFE5VFhgDlClAAAAKQEAACQAGAAAAAAAAQAAAKSB
+cAEAAG5pbGZvMzU5LXB5dXBwZzFfMy9weXVwcGd0ZXN0MV8zLmxvZ1VUBQADaL/vYXV4CwABBHoc
+aVkEAOH1BVBLAQIeAxQAAAAIAMhROVS1sQefdwAAAJQAAAAbABgAAAAAAAEAAACkgXMCAABuaWxm
+bzM1OS1weXVwcGcxXzMvaW5mby50eHRVVAUAA2i/72F1eAsAAQR6HGlZBADh9QVQSwUGAAAAAAMA
+AwArAQAAPwMAAAAA
\ No newline at end of file
--- /dev/null
+def minimum_edit_distance(s1,s2):
+ """Returnera minimum edit distance för strängarna s1 och s2)."""
+ # byt värde på s1 och s2 om s1 är den längre strängen
+ if len(s1) > len(s2):
+ s1, s2 = s2, s1
+ distances = range(len(s1) + 1)
+ for index2, char2 in enumerate(s2):
+ new_distances = [index2+1]
+ for index1, char1 in enumerate(s1):
+ if char1 == char2:
+ new_distances.append(distances[index1])
+ else:
+ new_distances.append(1 + min((distances[index1],
+ distances[index1+1],
+ new_distances[-1])))
+ distances = new_distances
+ return distances[-1]
--- /dev/null
+# Uppgift 1
+
+def greeting(name):
+ return "Hej " + name + ("!" if name[0] != "M" else ", visste du att M är min favoritbokstav!")
+
+def is_this_a_long_list(values):
+ return len(values) > 5
+
+def get_grade(score):
+ if score > 80: grade = "VG"
+ elif score >=50: grade = "G"
+ else: grade = "U"
+ return grade
+
+def days_in_month(name_of_month):
+ if name_of_month == "januari": days = 31
+ elif name_of_month == "februari": days = 28
+ elif name_of_month == "mars": days = 31
+ elif name_of_month == "april": days = 30
+ elif name_of_month == "maj": days = 31
+ elif name_of_month == "juni": days = 30
+ elif name_of_month == "juli": days = 31
+ elif name_of_month == "augusti": days = 31
+ elif name_of_month == "september": days = 30
+ elif name_of_month == "oktober": days = 31
+ elif name_of_month == "november": days = 30
+ elif name_of_month == "december": days = 31
+ else: days = None
+ return days
+
+def odd(value):
+ return value % 2
+
+def get_integer_description(value):
+ if value % 2 and value > 0: desc = 1
+ elif value % 2 and value < 0: desc = -1
+ elif not value % 2 and value > 0: desc = 2
+ elif not value % 2 and value < 0: desc = -2
+ else: desc = 0
+ return desc
+
+def appraisal_factor(rare, good_condition):
+ return 1 + 0.25 * (rare or -1) + 0.5*(good_condition or -1)
+
--- /dev/null
+UEsDBBQAAAAIAI1pOlR8MOY2xwEAAEMFAAAaABwAbmlsZm8zNTktcHl1cHBnMl8xL29yaWcucHlV
+VAkAA6k68WGpOvFhdXgLAAEEehxpWQQA4fUFlZTBbtQwEIbveYpZI6RsKSgbtFK1YnuFS7mVC0KW
+N56kThM7GjuReB/ehBfD62y7NkXbkEMi//7m9++RnTdwPwyNqh1sskxiDQ0hOqWbXIse17sM/EPo
+RtLAvmALDN7Bccp/crZioOow/F78gNUe2B0D7CwCu4ZJWesQ5AjCObiD378IeqWhFpMh5Q7m0Tox
+rdh6XlhZ7h78S/DO6IZ3yrp8Et2INk3RoX7S4Ra2p9ToeENCYm4rQ0+5fbYw9NxNsYMAgA/57TML
+89idif02Jp4Bi5F6z+IgQZ6Xl+Kn5Urz3mj3EDrHTT2PzlESGfberxV6FKTYLhj4FT5uzrle4jUe
+KOXLm0t8L8gu9RYDqS6Ci8vG7VLfdtRqqW07dot7IcZmtG4xbnFw2B+QlmYxj86k+EV/bab/spdY
+/c1vohN30r4ajfGJO8rzgTNSzpcgvRtBgrdQnm+F0g4bJC7RVqQGp4xOKn285yoQWp5Gt+Cvw7HG
+x4h2/i/0U4S+j7tk3KvW5et4Yl/GTZq1IumQ1+a9i2EgoazoeC0qZygnQXgNjTGSV0ZLdezEegdx
+9cb/1IoP5RauIOBgyO9oHdTtVZ7Wniaz7A9QSwMEFAAAAAgAjWk6VD0JczynAAAAKQEAACQAHABu
+aWxmbzM1OS1weXVwcGcyXzEvcHl1cHBndGVzdDJfMS5sb2dVVAkAA6k68WGpOvFhdXgLAAEEehxp
+WQQA4fUF41IGAgVv/6AgV+8QBZ/D04JDHBVCAwLcPd1CXIMUQLJcXCC+goKRnqGeoZWCqUJB/uEl
+eel6SMJG2IWNsQubYBc2xS5sZqVgaIBF3BxFnAvsj+BQX19HhQD/wy1+7lYKJqZ6ChrGpgpJqRmH
+t5UVa0LUuJQqHF5SpFBQlJqTmZuZB2SXKLj7u3gD9bgoFBxeqhBQWZKRn1daUJCemVYCskqRS0GB
+CwBQSwMEFAAAAAgAjWk6VGg1mCJ4AAAAlAAAABsAHABuaWxmbzM1OS1weXVwcGcyXzEvaW5mby50
+eHRVVAkAA6k68WGpOvFhdXgLAAEEehxpWQQA4fUFRcxNDoMgEEDhPaeYC9AyA1jkMgZxsKSoxJ+F
+t1dX3b6XfEPY2QOQIpIKJTWA2iN5suLYeL3XnEtatG1FyoUhfjn+eLj7UeuY097hq55iWfOY51Bg
+Gux2TKCVMvjpg4nGusTchkDErml7hc5h/2dlPR+JOnw/yINdUEsBAh4DFAAAAAgAjWk6VHww5jbH
+AQAAQwUAABoAGAAAAAAAAQAAAKSBAAAAAG5pbGZvMzU5LXB5dXBwZzJfMS9vcmlnLnB5VVQFAAOp
+OvFhdXgLAAEEehxpWQQA4fUFUEsBAh4DFAAAAAgAjWk6VD0JczynAAAAKQEAACQAGAAAAAAAAQAA
+AKSBGwIAAG5pbGZvMzU5LXB5dXBwZzJfMS9weXVwcGd0ZXN0Ml8xLmxvZ1VUBQADqTrxYXV4CwAB
+BHocaVkEAOH1BVBLAQIeAxQAAAAIAI1pOlRoNZgieAAAAJQAAAAbABgAAAAAAAEAAACkgSADAABu
+aWxmbzM1OS1weXVwcGcyXzEvaW5mby50eHRVVAUAA6k68WF1eAsAAQR6HGlZBADh9QVQSwUGAAAA
+AAMAAwArAQAA7QMAAAAA
\ No newline at end of file
--- /dev/null
+# Uppgift 2
+
+def create_ten_list_while():
+ i = 0
+ myList = []
+ while i < 11:
+ myList.append(i)
+ i += 1
+ return myList
+
+def create_ten_list_for():
+ # Jag vill argumentera att list-comprehension använder sig av en for-loop
+ return [i for i in range(0, 11)]
+
+def create_zero_to_number_list_while(number):
+ i = 0
+ myList = []
+ while i < number + 1:
+ myList.append(i)
+ i += 1
+ return myList
+
+def create_zero_to_number_list_for(number):
+ return [i for i in range(0, number + 1)]
+
+def create_number_to_number_list_while(start_number, end_number):
+ i = start_number
+ myList = []
+ while i < end_number + 1:
+ myList.append(i)
+ i += 1
+ return myList
+
+def create_number_to_number_list_for(start_number, end_number):
+ return [i for i in range(start_number, end_number + 1)]
+
+def get_max_while(integer_list):
+ myMax = integer_list[0]
+ i = 0
+ while i < len(integer_list[1:]):
+ if integer_list[i + 1] > myMax: myMax = integer_list[i + 1]
+ i += 1
+ return myMax
+
+def get_max_for(integer_list):
+ myMax = integer_list[0]
+ for elm in integer_list[1:]:
+ if elm > myMax: myMax = elm
+ return myMax
+
+def get_min(integer_list):
+ myMin = integer_list[0]
+ for elm in integer_list[1:]:
+ if elm < myMin: myMin = elm
+ return myMin
+
+def word_in_list_while(words, word):
+ i = 0
+ while i < len(words):
+ if words[i] == word: break
+ i += 1
+ else: return False
+ return True
+
+def word_in_list_for(words, word):
+ for elm in words:
+ if elm == word:
+ break
+ else: return False
+ return True
+
+def count_integers_while(value_list):
+ count = 0
+ i = 0
+ while i < len(value_list):
+ if isinstance(value_list[i], int): count += 1
+ i += 1
+ return count
+
+def count_integers_for(value_list):
+ count = 0
+ for elm in value_list:
+ if isinstance(elm, int): count += 1
+ return count
+
+def average_while(values):
+ i = 0
+ tot = 0
+ while i < len(values):
+ tot += values[i]
+ i += 1
+ return tot/len(values)
+
+def average_for(values):
+ tot = 0
+ for elm in values:
+ tot += elm
+ return tot/len(values)
+
+def population(pop_a, rate_a, pop_b, rate_b):
+ if pop_a == pop_b: return 0
+
+ lower_pop = pop_a if pop_a < pop_b else pop_b
+ higher_pop = pop_a if lower_pop is pop_b else pop_b
+ higher_rate = rate_a if rate_a > rate_b else rate_b
+ lower_rate = rate_a if higher_rate is rate_b else rate_b
+
+ if (lower_pop is pop_a and higher_rate is rate_b) or (lower_pop is pop_b and higher_rate is rate_a):
+ return -1
+
+ years = 0
+ while lower_pop < higher_pop:
+ print(lower_pop)
+ print(higher_pop)
+ lower_pop += lower_pop*(higher_rate/100)
+ higher_pop += higher_pop*(lower_rate/100)
+ years += 1
+
+ return years
+
+def birthday(n):
+ prod = 1
+ for i in range(0,n):
+ prod *= (365-i)/365
+ return 1 - prod
+
+def sum_of_ints(value_list):
+ tot = 0
+ for elm in value_list:
+ if isinstance(elm, int): tot += elm
+ return tot
\ No newline at end of file
--- /dev/null
+UEsDBBQAAAAIAPVxOlRPedNKJQMAADoMAAAaABwAbmlsZm8zNTktcHl1cHBnMl8yL29yaWcucHlV
+VAkAA31J8WFcSfFhdXgLAAEEehxpWQQA4fUFrVbLctowFN3zFXcmGzuBBtpJFwxk2UWn3bUrhvEI
+LIymtuyRZRL6Pf2T/livHrZky5BkGjbocc695x5dCW7gZ1Vl7CDh42SS0gPsBSWSJpLyJGe1TJ6O
+LKdRvJwAfhisYQ56WJy/4TbON1s91zgErGCxMGCH+kCqivI0YnG3weBuDQsTSlDZCG6x4yoOpWg1
+3MBXksGJ5TkQkTUF5ZIKAkRKUNDZviwqQY+U16zkQPjp7x+eUgE1y4CcgHLAYLO8LCs/+YapZZTF
+OAjCMxrNp1hJvO3p+U1Fmcgy4U2xo8I3yKy8xSbDgDt4P7vG5CnneuKuFew0DQq3EUdLryUR0q5P
+0d80CczwIS/Y4vjvas14AcqcF+RftOsSz3cvozIpyLM1imGnZja1jV6cv5NntMHf2sy3wy5y9uSU
+9+JsFstt7Fxih34optRs4dEkWo7nM6CBoX0/kdWvSDn3xnqUfzQvlIPDCnoFKEwgGBevKWL8ghpM
+9v9qVibSsgsYqmHcqHkqRZqw3tupluqp3gnfh/7Jamj/OPXShm1hvdbjJeywo3+NnRbNa7psNX0h
+OPNF/hANHdGoDjJU6LmjNwNLWjXduvo4Za+Vsi8bLhN7ALU17ETyhvrnqFHKs+vuBbz2RtSM423l
+ez80WjpVJx8vbfjOxvE7oEGjopWDL0j27HTISxoReEFZKIWc8Lcvo75xtd9keiRLp2TEMb/hFBTT
+mXW06IohCL33YvT1dJ60wa0GGLWjDgQMLthorqqsmpxI/JWPcJiQKT7M+NLjt5ru7HTX2qEJCVGd
+q/e79pxPNCAvn/ANwC1YW2RHWRmG7moz1Iwjy44hxcVh9VWekodEI1ox7ejRCjc0M/YUBjQ/HKYc
+IbcGRIE2/N/E0/EIMeAphYzdRQbx+shaO8PfZb12pkTUgyZ0oVeelS5GJfASOAHxYMNR3I4LiT3U
+TW4jT+79Yj53BO8IkeFmt5Ezu88wlXSXwe9SvWV6c8eEPKbkHHFrSiXKFFpS8MeLx37ZiLxdQ/Tp
+88OMxff45SdZwExDTJ66KZLyoN6iOnyDrt651z5BFy/kP1BLAwQUAAAACAD1cTpUnrMX088AAAA3
+AgAAJAAcAG5pbGZvMzU5LXB5dXBwZzJfMi9weXVwcGd0ZXN0Ml8yLmxvZ1VUCQADfUnxYVxJ8WF1
+eAsAAQR6HGlZBADh9QV1kU0OgjAUhPc9xRg3umkAf0B2JCAxqBDEA2iCQKLQIJq49wyeQK/gBXox
+qW40tm/VN/PNvEVJtx0EYRx7QYI5v60SB+so8mfTxIshXELEDhjUoDrd2BiBVfxeZvTH2MoNQ5Uw
+JAmhDiSBjy7nhwp+qOBHUnWsaBkrWkwFbyp4C3Legpyf2NC1f1nXFLr+3ULen7paLxYOopBfl75I
+aRQ9U8M2zfnzfOx/IPcEfq/B6nRfHIqyfTfwQzdoQy4YfyC6NHlVnhjLil0jbnUIQF5QSwMEFAAA
+AAgA9XE6VENawZV4AAAAlAAAABsAHABuaWxmbzM1OS1weXVwcGcyXzIvaW5mby50eHRVVAkAA31J
+8WF9SfFhdXgLAAEEehxpWQQA4fUFRcxBDoMgEEDRPafgArTMCBi4jEEYLCkqUVl4+8qq2/+TF/1F
+jnOUiEKCQMNBOdBOAWsnHc/ackn7oC1LuRAPHwpfik9vtS45XRO+6s32Iy9584WvUZ9t5cmPNKI0
+VhrtwcvZmyRVsJbUEMMMf1bUu0s44bsjHfsBUEsBAh4DFAAAAAgA9XE6VE9500olAwAAOgwAABoA
+GAAAAAAAAQAAAKSBAAAAAG5pbGZvMzU5LXB5dXBwZzJfMi9vcmlnLnB5VVQFAAN9SfFhdXgLAAEE
+ehxpWQQA4fUFUEsBAh4DFAAAAAgA9XE6VJ6zF9PPAAAANwIAACQAGAAAAAAAAQAAAKSBeQMAAG5p
+bGZvMzU5LXB5dXBwZzJfMi9weXVwcGd0ZXN0Ml8yLmxvZ1VUBQADfUnxYXV4CwABBHocaVkEAOH1
+BVBLAQIeAxQAAAAIAPVxOlRDWsGVeAAAAJQAAAAbABgAAAAAAAEAAACkgaYEAABuaWxmbzM1OS1w
+eXVwcGcyXzIvaW5mby50eHRVVAUAA31J8WF1eAsAAQR6HGlZBADh9QVQSwUGAAAAAAMAAwArAQAA
+cwUAAAAA
\ No newline at end of file
--- /dev/null
+# Uppgift 3
+
+def replace_periods_with_newlines(string_value):
+ s = ""
+ for char in string_value:
+ if char == '.': s += '\n'
+ else: s += char
+ return s
+
+def replace_char_in_string(original_string, search_character, replacement):
+ s = ""
+ for char in original_string:
+ if char == search_character: s += replacement
+ else: s += char
+ return s
+
+def reverse_string_while(string_value):
+ i = len(string_value) - 1
+ s = ""
+ while i > -1:
+ s += string_value[i]
+ return s
+
+def reverse_string_for(string_value):
+ s = ""
+ for char in string_value:
+ s = char + s
+
+def get_five_first(value_list):
+ myList = []
+ for elm in value_list:
+ myList.append(elm)
+ if len(myList) == 5: break
+ return myList
+
+def get_nfirst(value_list, n):
+ myList = []
+ for elm in value_list:
+ myList.append(elm)
+ if len(myList) == n: break
+ return myList
+
+def get_all_less_than(values, cutoff):
+ return [elm for elm in values if elm < cutoff]
+
+def get_all_even(values):
+ return [elm for elm in values if not elm % 2]
+
+def get_all_divisible(values, divisor):
+ return [elm for elm in values if not elm % divisor]
+
+def multiply_for_each(values, multiplier):
+ for i, elm in enumerate(values):
+ values[i] = elm * multiplier
+ return values
+
+def insert_at_asc_place(values, new_value):
+ mid = len(values) // 2
+ newList = values.copy()
+ idx = mid
+ while True:
+ idx = idx - mid if new_value < newList[mid] else idx + mid
+ newList = newList[slice(0, mid, 1) if new_value < newList[mid] else slice(mid, len(values), 1)]
+ mid = len(newList) // 2
+ if mid == 0:
+ values.insert(idx, newList[0])
+ break
+ return values
+
+print(insert_at_asc_place([1,2,3,4,6,7], 2))
\ No newline at end of file
+++ /dev/null
-
-def binary_search(key: int, srt_list: list, carry=0):
- length = len(srt_list)
- idx = length // 2
-
- if key > srt_list[idx]:
- return binary_search(key, srt_list[idx:], carry=carry+idx)
- elif key < srt_list[idx]:
- return binary_search(key, srt_list[:idx], carry=carry)
- else:
- return carry + idx
-
-
-def this(keuy: int):
-
- return keuy
-
-
-if __name__ == "__main__":
- myList = [12, 45, 345, 345, 234, 13, 1, 5]
- myList.sort()
- print(myList)
- print(binary_search(345, myList))
+++ /dev/null
-from uppgift_1 import subtract
-
-print(subtract(2,4))