summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGustav Sörnäs <gusso230@student.liu.se>2020-01-22 14:43:35 +0100
committerGustav Sörnäs <gusso230@student.liu.se>2020-01-22 14:43:35 +0100
commit6319633122e8cc12786361a71b942381f80f9f0a (patch)
tree38993b3895a31729906a86168e9590b07fc3f930
downloadtdde44-6319633122e8cc12786361a71b942381f80f9f0a.tar.gz
Do lab1
-rw-r--r--labb1/mitt_skript.sh116
-rw-r--r--labb1/pythonskript.py45
-rw-r--r--upg1.py148
3 files changed, 309 insertions, 0 deletions
diff --git a/labb1/mitt_skript.sh b/labb1/mitt_skript.sh
new file mode 100644
index 0000000..89f6ee5
--- /dev/null
+++ b/labb1/mitt_skript.sh
@@ -0,0 +1,116 @@
+#!/bin/bash
+
+# Rader som börjar med ett # tolkas som kommentarer
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+#hPYQbWI2Hk1Sf7WlA7uHm6B4JTQJrFkJY4YSyBI1HGEYCPZDLV9lhF5gTBeRW5UGgvUIQb0Kkdj5sw
+#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u
+#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5
+#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N
+#hPYQbWI2Hk1Sf7WlA7uHm6B4JTQJrFkJY4YSyBI1HGEYCPZDLV9lhF5gTBeRW5UGgvUIQb0Kkdj5sw
+#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u
+#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5
+#hPYQbWI2Hk1Sf7WlA7uHm6B4JTQJrFkJY4YSyBI1HGEYCPZDLV9lhF5gTBeRW5UGgvUIQb0Kkdj5sw
+#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u
+#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5
+#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N
+#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p
+#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N
+#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p
+#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p
+#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u
+#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5
+#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N
+#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p
+#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u
+#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5
+#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N
+#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p
+#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u
+#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5
+#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N
+#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p
+#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u
+#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5
+#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N
+#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p
+#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u
+#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5
+#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N
+#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p
+#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u
+#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5
+#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N
+#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p
+#qmwfGFvnDeERJxtG30xdd8hKcpCl0dLsn4qbLqaGRVQomGSJRhr69JkKQ13vsN5vDf9cGBh8B5wh8u
+#CgIgzVLeIWjDGp7ngEEERBib8VV8eQeUvgr80Ou1TmaokbXF2PVr1HYnKR74Zkqw6xuPDwSqB1i0T5
+#RKiFLyLXfNWGD3KWUuhN9C6DOMj1KQV7opywE6UaiMWUnsAT8LFgwWJ4ZJBnktxe1iuJx3Jo7cNK5N
+#eVkz6GVz2iQGlEZUrQioGnVyGcFZvZdpHS0N98TDvWFIdvjqiXoo5OU194QHxNdaXLn3OnapVOwW5p
+
+
+# ,_-=(!7(7/zs_.
+# .=' ' .`/,/!(=)Zm.
+# .._,,._.. ,-`- `,\ ` -` -`\\7//WW.
+# ,v=~/.-,-\- -!|V-s.)iT-|s|\-.' `///mK%.
+# v!`i!-.e]-g`bT/i(/[=.Z/m)K(YNYi.. /-]i44M.
+# v`/,`|v]-DvLcfZ/eV/iDLN\D/ZK@%8W[Z.. `/d!Z8m
+# //,c\(2(X/NYNY8]ZZ/bZd\()/\7WY%WKKW) -'|(][%4.
+# ,\\i\c(e)WX@WKKZKDKWMZ8(b5/ZK8]Z7%ffVM, -.Y!bNMi
+# /-iit5N)KWG%%8%%%%W8%ZWM(8YZvD)XN(@. [ \]!/GXW[
+# / ))G8\NMN%W%%%%%%%%%%8KK@WZKYK*ZG5KMi,- vi[NZGM[
+# i\!(44Y8K%8%%%**~YZYZ@%%%%%4KWZ/PKN)ZDZ7 c=//WZK%!
+# ,\v\YtMZW8W%%f`,`.t/bNZZK%%W%%ZXb*K(K5DZ -c\\/KM48
+# -|c5PbM4DDW%f v./c\[tMY8W%PMW%D@KW)Gbf -/(=ZZKM8[
+# 2(N8YXWK85@K -'c|K4/KKK%@ V%@@WD8e~ .//ct)8ZK%8`
+# =)b%]Nd)@KM[ !'\cG!iWYK%%| !M@KZf -c\))ZDKW%`
+# YYKWZGNM4/Pb '-VscP4]b@W% 'Mf` -L\///KM(%W!
+# !KKW4ZK/W7)Z. '/cttbY)DKW% -` .',\v)K(5KW%%f
+# 'W)KWKZZg)Z2/,!/L(-DYYb54% ,,`, -\-/v(((KK5WW%f
+# \M4NDDKZZ(e!/\7vNTtZd)8\Mi!\-,-/i-v((tKNGN%W%%
+# 'M8M88(Zd))///((|D\tDY\\KK-`/-i(=)KtNNN@W%%%@%[
+# !8%@KW5KKN4///s(\Pd!ROBY8/=2(/4ZdzKD%K%%%M8@%%
+# '%%%W%dGNtPK(c\/2\[Z(ttNYZ2NZW8W8K%%%%YKM%M%%.
+# *%%W%GW5@/%!e]_tZdY()v)ZXMZW%W%%%*5Y]K%ZK%8[
+# '*%%%%8%8WK\)[/ZmZ/Zi]!/M%%%%@f\ \Y/NNMK%%!
+# 'VM%%%%W%WN5Z/Gt5/b)((cV@f` - |cZbMKW%%|
+# 'V*M%%%WZ/ZG\t5((+)L\'-,,/ -)X(NWW%%
+# `~`MZ/DZGNZG5(((\, ,t\\Z)KW%@
+# 'M8K%8GN8\5(5///]i!v\K)85W%%f
+# YWWKKKKWZ8G54X/GGMeK@WM8%@
+# !M8%8%48WG@KWYbW%WWW%%%@
+# VM%WKWK%8K%%8WWWW%%%@`
+# ~*%%%%%%W%%%%%%%@~
+# ~*MM%%%%%%@f`
+# '''''
+
+
+echo "Detta är ett bash-skript."
+echo "Varje rad i denna fil kommer tolkas som om en användare hade skrivit den"
+echo "i terminalen."
+echo ""
+echo "Kommandot echo skriver ut strängar."
+
+# UPPGIFT!
+# Lägg till kommandon under denna rad som listar innehållet i din hemkatalog.
+
+ls ~/
+
+
+
+
+
+
+
+# Du har nu hittat rätt fil.
diff --git a/labb1/pythonskript.py b/labb1/pythonskript.py
new file mode 100644
index 0000000..6e0679f
--- /dev/null
+++ b/labb1/pythonskript.py
@@ -0,0 +1,45 @@
+#!/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()
+
diff --git a/upg1.py b/upg1.py
new file mode 100644
index 0000000..d6c7558
--- /dev/null
+++ b/upg1.py
@@ -0,0 +1,148 @@
+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 celsius_to_fahrenheit(value):
+ return value * 9/5 + 32
+
+
+def fahrenheit_to_celsius(value):
+ return (value - 32) * 5/9
+
+
+def pythagoras(x, y):
+ return math.sqrt(x ** 2 + y ** 2)
+
+
+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]
+
+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, a_value):
+ return values + [a_value]
+
+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
+
+import random
+def select_random(values):
+ return random.choice(values)
+
+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 concatenate_strings(select_random(prefixes), select_random(suffixes))
+
+def first_word(s):
+ return s.split(" ")[0]
+
+def join_list(vals):
+ return ":".join(vals)
+
+def remove_spaces(s):
+ return s.rstrip()
+
+def get_characters(s, pos, num_of_chars):
+ return s[pos:pos+num_of_chars]