summaryrefslogtreecommitdiff
path: root/01_pythonintro.py
blob: d27aa85a0b8207bcb53acb80bb013cdb8270fd16 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
#!/usr/bin/python3
# -*- coding: utf-8 -*-


print("Hallo Welt!")


# TODO Aufgabe 2

'''
Erzeugen Sie eine Liste mit den Werten 1 bis 20
'''
#
# ???
#


'''
Quadrieren Sie alle ungeraden Elemente (die geraden bleiben unverändert)
'''
#
# ???
#


'''
Lesen Sie Zahlen vom Keyboard ein, bis insgesamt vier Zahlen eingelesen wurden und sortieren Sie diese aufsteigend
'''
#
# ???
#



# TODO Aufgabe 3

'''
Schreiben Sie für das Quadrieren einer Liste eine separate Funktion
'''
#
# ???
#


'''
Schreiben Sie eine rekursive Funktion, die die Summe aller Elemente einer Liste berechnet
'''
#
# ???
#


'''
Berechnen Sie den arithmetischen Mittelwert aller Elemente einer Liste (nutzen Sie dabei die bereits in Python existierende Summenfunktion `sum(list)`)
'''
#
# ???
#



# TODO Aufgabe 4

'''
Implementieren Sie eine einfache Klasse Vec2 die einen 2-dimensionalen Vektor repräsentieren soll. Die Klasse soll folgende Eigenschaften haben

- Zwei Variablen x und y um die Werte des Vektors zu speichern. Diese sollen über einen Konstruktor __init__(self, x, y) (mit zwei Unterstrichen vor und nach dem init jeweils) initialisiert werden können.
- Eine Klassenfunktion __str__(self), die die Werte des Vektors in geeigneter Form als String zurückgibt
- Eine Klassenfunktion length(self), die die euklidische Länge des Vektors zurückgibt
- Eine Klassenfunktion add(self, rhs), die die komponentenweise Addition von zwei Vektoren durchführt und einen neuen Vektor zurückgibt.
- Eine globale Klassenvariable gid und eine lokale Klassenvariable id, die genutzt werden, um jedem erzeugten Vektor eine eigene ID zuzuweisen.
- Testen Sie Ihre Implementation mit Beispielen.
'''

from math import sqrt

# Vec2-Klasse
#
# ???
#

# Vec2 Demo
#
# ???
#