Aufgabe 3-1
im Homeverzeichnis:
mkdir Übungsblatt3 # erstellt einen Ordner mit dem Namen Übungsblatt3
Aufgabe 3-2
im Homeverzeichnis:
cd Übungsblatt3 #wechselt in das neu erstellte Verzeichnis Übungsblatt3
1. Möglichkeit:
lynx -dump https://www.freitag.de/autoren/der-freitag/google-ganz-verstehen > artikel.txt
#der Inhalt der Website wird in der Datei artikel.txt gespeichert
2.Möglichkeit:
wget "https://www.freitag.de/autoren/der-freitag/google-ganz-verstehen" -O google.html
#die die Website wird im html-Format gespeichert
3.Möglichkeit:
Text von der Website in einen Texteditor kopieren und speichern
Aufgabe 3-3
man head
man tail
man wc
#ufgabe 3-4
head -3 artikel.txt
#head alleine gibt die ersten 10 Zeilen eines Dokuments auf der Konsole aus
#head -n gibt die ersten n Zeilen auf der Konsole aus
Aufgabe 3-5
tail -3 artikel.txt
#tail alleine gibt die letzten 10 Zeilen eines Dokuments auf der Konsole aus
#tail -n gibt die letzen n Zeilen eines Dokuments auf der Konsole aus
Aufgabe 3-6
wc -l -w artikel.txt
#wc alleine gibt die Anzahl der Zeilen, Wörter und Bytes aus
#wc -l(lines) -w(words) gibt nur die Anzahl der Zeilen und Wörter aus
Aufgabe 3-7
cp artikel.txt text_2.txt
#cp kopiert die Datei und speichert sie unter dem Zielnamen ab
Aufgabe 3-8
head -3 text_2.txt > text_anfang.txt
#head -3 gibt die ersten 3 Zeilen der Datei auf der Konsole aus
#der redirecting operator > leitet die Ausgabe von head in die Zieldateiatei um und speichert sie dort
##Aufgabe 3-9
tail -3 text_2.txt > text_ende.txt
#tail -3 gibt die letzten 3 Zeilen der Datei auf der Konsole aus
#der redirecting operator > leitet die Ausgabe von tail in die Zieldateiatei um und speichert sie dort
Aufgabe 3-10
#!/usr/bin/python3
zahl1 = int(input('Geben Sie die erste Zahl ein\n'))
#input() liest vom Terminal ein; innerhalb der Klammern steht, was als Eingabeaufforderung auf dem Terminal ausgegeben wird
#input() liefert standardmäßig einen String zurück; int(input()) konvertiert den Datentypen zu Integer
#der Input wird in der Variablen zahl1 gespeichert
zahl2 = int(input('Geben Sie die zweite Zahl ein\n'))
#siehe oben, hier zahl2
zahl3 = int(input('Geben Sie die dritte Zahl ein\n'))
#siehe oben, hier zahl3
mittel = (zahl1+zahl2+zahl3)/3
#neue Variable mittel
#die drei gespeicherten Integer werden addiert (+) und anschließend durch ihre Anzahl geteilt (/3)
print('Der Mittelwert ist:', mittel)
#Ausgabe eines Strings und der Variablen "mittel" auf der Konsole
#es gibt zwei Argumente getrennt durch Komma; dadurch wird automatisch eine Leerstelle zwischen den Argumenten ausgegeben
Aufgabe 3-11
1.Möglichkeit:
#!/usr/bin/python3
vier_faku = 4*3*2
#die Fakultät von 4 wird berechnet und in der Variable vier_faku gespeichert
#*1 wird nicht benötigt, da es das Ergebnis nicht beeinflusst
print ('Vier Fakultät ist:', vier_faku)
#Ausgabe eines Strings und der Variablen "vier_faku" auf der Konsole
2. Möglichkeit
#!usr/bin/python
zahl = int(input('Bitte geben Sie die Zahl ein, von welcher die Fakultät berechnet werden soll\n'))
#Einlesen einer Zahl über die Konsole und Umwawndlung in Datentyp Integer (s.o.)
faku = 1
#die Variable faku wird erstellt und auf 1 gesetzt
for i in range(2,zahl+1):
faku = faku*i
#range: Fakultät 1=1, keine Berechnung notwendig (s.o.), zahl+1 -> bis zur eingegebenen Zahl
#faku wird mit jedem Schleifendurchlauf überschrieben und mit i multipliziert bis zum Ende der range
print('Die Fakultät von', zahl, 'beträgt', faku)
#Ausgabe eines Strings und der Variablen "zahl" und "faku" auf der Konsole
Aufgabe 3-12
a)
erg = 4, Typ: int
b)
erg = 54, Typ: string
c)
erg = Hallo5, Typ: string
d)
erg = 3.0, Typ: float
e)
Die Variablen sind nicht vom selben Typ und können daher nicht addiert werden.
Aufgabe 3-13
#!/usr/bin/python3
zahlen = []
#Um direkt die eingelesenen Zahlen in einer Liste speichern zu können, leere Liste anlegen
zahlen.append(int(input('Geben Sie die erste Zahl ein\n')))
#liste.append() hängt das Argument an eine bestehende Liste an ("liste" steht für Variablennamen)
#Eingabe wird vom Terminal eingelesen und in int konvertiert
#Da die Liste leer war, ist die erste Zahl jetzt unter Index 0 gespeichert
zahlen.append(int(input('Geben Sie die zweite Zahl ein\n')))
#dasselbe Verfahren wie bei der ersten Zahl;
#append() hängt an bestehende Liste an, also ist die zweite Zahl unter Index 1 gespeichert
zahlen.append(int(input('Geben Sie die dritte Zahl ein\n')))
#die dritte Zahl wird mit Index 2 gespeichert
mittel = (zahlen[0]+zahlen[1]+zahlen[2])/3
#Definieren einer neuen Variable "mittel"
#Wir greifen auf die Werte zu, die unter Index 0, 1 und 2 in der Liste gespeichert sind, addieren sie und teilen sie durch 3
print('Der Mittelwert der drei Zahlen ist', mittel)
#Ausgabe eines Strings und der Variablen "mittel" auf der Konsole
Aufgabe 3-14
a)
1.Möglichkeit:
#!/usr/bin/python3
zeile = input('Geben Sie eine Textzeile ein\n')
#eine Zeile wird vom Terminal eingelesen und in der Variable "zeile" gespeichert
i = 0
#eine neue Variable i wird deklariert und auf 0 gesetzt
while (i<5):
#solange i kleiner als 5 ist, wird der folgende Codeblock ausgeführt:
print(zeile, end='')
#der in zeile gespeicherte String wird ausgegeben, und zwar ohne newline
#end='' (leerer String) bedeutet, dass nach dem Printbefehl kein Newline folgt
i = i+1
#i wird um eins erhöht
#solange i<5 startet die while-Schleife von vorn
print('\n')
#am Ende ein einzelnes Newline ausgegeben
#sonst bleibt die Eingabeaufforderung des Terminals in der ausgegebenen Zeile stehen
2.Möglichkeit
#!/usr/bin/python3
zeile = input('Geben Sie eine Textzeile ein\n')
print(zeile*5)
#gibt die Zeile 5 mal konkateniert aus
b)
1.Möglichkeit
#!/usr/bin/python3
zeile = input('Geben Sie eine Textzeile ein\n')
#eine Zeile wird eingelesen und in der Variable zeile gespeichert
i = 0
#eine neue Variable i wird deklariert und auf 0 gesetzt
while (i<5):
#solange i kleiner als 5 ist, wird der folgende Codeblock ausgeführt:
print(zeile)
#der in zeile gespeicherte String wird ausgegeben, standardmäßig mit Newline am Ende
i = i+1
#i wird um eins erhöht
#solange i<5 startet die while-Schleife von vorn
2.Möglichkeit:
#!/usr/bin/python3
zeile = input('Geben Sie eine Textzeile ein\n')
zeile += '\n'
#An den eingelesenen String wird ein Newline angehängt
print(zeile*5)
#gibt die Zeile 5 mal konkateniert aus (jetzt mit Newline)
Aufgabe 3-15
#!/usr/bin/python3
i = 5
#eine neue Variable i wird deklariert und auf 5 gesetzt
while(i>=0):
#solange i größer oder gleich 0 ist, wird der folgende Codeblock ausgeführt:
j = i*i
#eine neue Variable namens j wird deklariert und auf das Quadrat von i gesetzt
print(i)
#i wird ausgegeben
print(j)
#j wird ausgegeben
i = i-1
#i wird um eins verringert, und die while Schleife beginnt von neuem
for-Variante:
for i in range(5,-1,-1):
#die for-Schleife startet bei 5
#die Schrittweite ist -1, also wird rückwärts gezählt
#das Ende der range ist -1, also ist die letzte Zahl in der Schleife die 0
j = i*i
print(i)
print(j)
#Das Programm gibt alle Zahlen von 5 bis 0 zusammen mit ihrer Potenz aus