Compare commits

...

10 Commits

Author SHA1 Message Date
452659706e new file: "3. \303\234bungen/12.09.2022/Problem_48.py"
new file:   "3. \303\234bungen/12.09.2022/Problem_48_home.py"
	new file:   output.txt
2022-09-13 12:14:13 +02:00
1fa3869c6c Hop,hop,hop 2022-06-23 14:48:48 +02:00
5368be695f INFO 2022-06-23 14:34:56 +02:00
9e928bbec7 SelectionSort 2022-06-16 14:26:56 +02:00
9f5acc3f58 Infonononononononono 2022-05-19 14:32:52 +02:00
1c7f6684dc EEEEE 2022-05-19 12:39:59 +02:00
cf658c28dd Nizza 2022-04-28 14:40:33 +02:00
c428658174 float 2022-04-08 14:16:29 +02:00
56fe3621c2 Update 2 2022-04-07 16:16:58 +02:00
b9843e5485 Improvement 2022-04-07 16:08:19 +02:00
25 changed files with 331 additions and 18 deletions

View File

@ -0,0 +1,34 @@
punkte=0
#Frage 1
korrekt="c"
print("Welchees ist die größte Wüste")
print("a-Gobi\nb-Sahra\nc-Antarktis\nd-Arktis")
antwort = str(input("Ihre Antwort:"))
#str sthet für String, also eine Zeichenkette aus einem oder mehreren Buchstaben
if antwort==korrekt:
print ('Die Antowrt: "%s" ist richtig.'%(antwort))
punkte=punkte+1
print("Sie haben jetzt %sPunkte."%(punkte))
else:
print ('Die Antwort: "%s" ist falsch.'%(antwort))
print("Sie haben jetzt %sPunkte."%(punkte))
#Frage 2
korrekt="c"
print("")
print("a-\nb-\nc-\nd-")
antwort = str(input("Ihre Antwort:"))
#str sthet für String, also eine Zeichenkette aus einem oder mehreren Buchstaben
if antwort==korrekt:
print ('Die Antowrt: "%s" ist richtig.'%(antwort))
punkte=punkte+1
print("Sie haben jetzt %sPunkte."%(punkte))
else:
print ('Die Antwort: "%s" ist falsch.'%(antwort))
print("Sie haben jetzt %sPunkte."%(punkte))

View File

@ -0,0 +1,14 @@
# Make a programm which asks Quiz Questions, which are stored in a database
import sqlite3
punkte=0
i=0
con = sqlite3.connect('questions.db')
cur = con.cursor()
# Fetch Questions
while(True):
i+1
question=cur.execute("SELECT QUESTION FROM QUESTIONS WHERE NUMBER is %s"%(i))
print(question)
break
# @Philipp: fortsetzen

Binary file not shown.

View File

@ -0,0 +1,19 @@
# Programm, welches die Funktion(Programmierung) in Python einführt.
def summe(summand1,summand2): #Funktion Summe
return summand1+summand2
def potenz(basis,exponent): # Funktion Potenz
ergebnis=1
for i in range(exponent):
ergebnis=ergebnis*basis
return ergebnis
# Beginn des eigentlichen Hauptprogramms
print(summe(3,5))
print(summe(233,87))
print(potenz(2,3))

View File

@ -0,0 +1,33 @@
# Programm, welches das Sortierverfahren Bubble-Sort mit hilfe eines Aarays durchführt.
array=[] # Leeren Array erstellen
# Nutzer fragen, wie lang der Array sein soll
arraylenght=int(input("Wie lang soll die Zahlenliste sein? "))
# Zahlen dem Array hinzufügen
for i in range(arraylenght):
neue_nummer=float(input("Bitte Nummer eingeben: "))
array.append(neue_nummer)
# Verarbeitung
'''
# 1. Version
if array[0]>array[1]: #Tausch, falls vordere Zahl größer
h=array[0] #Ringtausch
array[0]=array[1]
array[1]=h
'''
# 2. Version
for j in range(len(array)-1):
for i in range(len(array)-1):
if array[i]>array[i+1]: #Tausch, falls vordere Zahl größer
h=array[i] #Ringtausch
array[i]=array[i+1]
array[i+1]=h
# Ausgabe
print("Folgende Reihenfolge ergibt sich für %s Zahlen:" %(len(array)))
for i in range(len(array)):
print (array[i])

View File

@ -22,6 +22,7 @@ def admin_mode():
print("1. Add Product")
print("2. Change Price")
print("3. Delete Product")
print("4. Quit Admin Mode")
# Ask for the user input
admin_input=input("Please choose an option: ")
# Check if the input is a number
@ -120,7 +121,7 @@ def normal_mode():
product_price=c.execute("SELECT price FROM products WHERE id=?", (int(product_id),)).fetchone()[0]
# Ask the amount of the product
product_amount=int(input("Bitte Anzahl des Produktes Eingeben: "))
sum_of_price=product_price*product_amount
sum_of_price=round(product_price*product_amount,2)
# Print the price of the sum
print("Summe:%s" % sum_of_price)
# Ask if the user wants to continue
@ -136,7 +137,7 @@ def payment(sum_of_price):
money_in_machine=input("Bitte Geld eingeben: ")
# Check if the money is a number
try:
money_in_machine=int(money_in_machine)
money_in_machine=float(money_in_machine)
except ValueError:
print("Bitte geben Sie eine Nummer ein")
return
@ -151,45 +152,59 @@ def payment(sum_of_price):
rest_cent=rest_euro*100
# 10 Euro
rest_euro_10=rest_cent//10000
rest_euro_10=rest_cent//1000
rest_cent=rest_cent-rest_euro_10*10000
# 5 Euro
rest_euro_5=rest_cent//5000
rest_euro_5=rest_cent//500
rest_cent=rest_cent-rest_euro_5*5000
# 2 Euro
rest_euro_2=rest_cent//2000
rest_euro_2=rest_cent//200
rest_cent=rest_cent-rest_euro_2*2000
# 1 Euro
rest_euro_1=rest_cent//1000
rest_euro_1=rest_cent//100
rest_cent=rest_cent-rest_euro_1*1000
# 50 Cent
rest_cent_50=rest_cent//500
rest_cent_50=rest_cent//50
rest_cent=rest_cent-rest_cent_50*500
# 20 Cent
rest_cent_20=rest_cent//200
rest_cent_20=rest_cent//20
rest_cent=rest_cent-rest_cent_20*200
# 10 Cent
rest_cent_10=rest_cent//100
rest_cent_10=rest_cent//10
rest_cent=rest_cent-rest_cent_10*100
# 5 Cent
rest_cent_5=rest_cent//50
rest_cent_5=rest_cent//5
rest_cent=rest_cent-rest_cent_5*50
print ("10 Euro: %s" % rest_euro_10)
print ("5 Euro: %s" % rest_euro_5)
print ("2 Euro: %s" % rest_euro_2)
print ("1 Euro: %s" % rest_euro_1)
print ("50 Cent: %s" % rest_cent_50)
print ("20 Cent: %s" % rest_cent_20)
print ("10 Cent: %s" % rest_cent_10)
print ("5 Cent: %s" % rest_cent_5)
# 1 Cent
rest_cent_1=rest_cent//1
rest_cent=rest_cent-rest_cent_1*1
if rest_euro_10 >=1:
print ("Sie bekommen %smal 10€" % rest_euro_10)
if rest_euro_5 >=1:
print ("Sie bekommen %smal 5€" % rest_euro_5)
if rest_euro_2 >=1:
print ("Sie bekommen %smal 2€" % rest_euro_2)
if rest_euro_1 >=1:
print ("Sie bekommen %smal 1€" % rest_euro_1)
if rest_cent_50 >=1:
print ("Sie bekommen %smal 50 Cent:" % rest_cent_50)
if rest_cent_20 >=1:
print ("Sie bekommen %smal 20 Cent:" % rest_cent_20)
if rest_cent_10 >=1:
print ("Sie bekommen %smal 10 Cent:" % rest_cent_10)
if rest_cent_5 >=1:
print ("Sie bekommen %smal 5 Cent:" % rest_cent_5)
if rest_cent_1 >=1:
print("Sie bekommen %smal 1 Cent" % rest_cent_1)
normal_mode()

View File

@ -0,0 +1,20 @@
# Programm, welches das Problem "48" bearbeitet
# also überprüft, ob der Nachfolger einer zahl
# und der Nachfolger der Hälfte der Zahl jeweils Quadratzahlen sind
def ist_Quadratzahl(n):
if (n**(1/2)== int(n**(1/2))):
return True
else:
return False
# Hier ist normales Programm
i=1
while True:
if ist_Quadratzahl(i+1) and ist_Quadratzahl(i/2+1):
print(i)
i+=1

View File

@ -0,0 +1,34 @@
# Programm, welches das Problem "48" bearbeitet
# also überprüft, ob der Nachfolger einer zahl
# und der Nachfolger der Hälfte der Zahl jeweils Quadratzahlen sind
import logging
logging.basicConfig(filename='output.txt', level=logging.DEBUG, format='%(asctime)s: %(message)s')
def ist_Quadratzahl(n):
if (n**(1/2)== int(n**(1/2))):
return True
else:
return False
'''
# Hier ist normales Programm
i=1
while True:
if i%2==0:
if ist_Quadratzahl(i+1) and ist_Quadratzahl(i/2+1):
#print(i)
logging.debug(i)
i+=1
'''
i=2
while True:
iq = i**2
if (iq-1) % 2 == 0:
if ist_Quadratzahl((iq+1)/2):
logging.debug(iq-1)
i+=1

View File

@ -0,0 +1,9 @@
data=[9,5,1,4,3]
for step in range (1, len(data)):
key=data[step]
j=step-1
while j>=0 and key < data[j]:
data[j+1]=data[j]
j=j-1
data[j+1]=key
print(data)

View File

@ -0,0 +1,14 @@
# Wiederholung Array/Feld
zahlen=[4,6,3,9,12,1,8] # Array wird erzeugt, hat bereits 7 Elemente
# Tausch zweier Werte aus dem Array (4 und 6)
zahlen[0],zahlen[1]=zahlen[1],zahlen[0]
print(zahlen)
''' # Summe des Arrays
summe=0
for i in range(7):
summe=summe+zahlen[i]
print(summe)
'''

View File

@ -0,0 +1,31 @@
# Make a programm which asks the user for an input and then sorts the input of the user
# First ask the user how long he want the Array to be
array_length=int(input("Wie viele Zahlen sollen sortiert werden"))
# Second make an array
array=[]
# Third ask the user for number input
for i in range(array_length):
number=float(input("Bitte mir einfach eine Zahl geben"))
# Now append that number to the array
array.append(number)
# Now sort the numbers with the help of insertion sort
def insertionSort(array):
# Traverse through 1 to len(arr)
for i in range(1, len(array)):
key = array[i]
# Move elements of arr[0..i-1], that are
# greater than key, to one position ahead
# of their current position
j = i-1
while j >=0 and key < array[j] :
array[j+1] = array[j]
j -= 1
array[j+1] = key
insertionSort(array)
# print finished array
for i in range(len(array)):
print(array[i])

View File

@ -0,0 +1,23 @@
# Make a programm which asks the user for an input and then sorts the input of the user
# First ask the user how long he want the Array to be
array_length=int(input("Wie viele Zahlen sollen sortiert werden"))
# Second make an array
array=[]
# Third ask the user for number input
for i in range(array_length):
number=float(input("Bitte mir einfach eine Zahl geben"))
# Now append that number to the array
array.append(number)
# Now sort them with the Help of the selection sort algorithm
for i in range(len(array)):
min_= i
for j in range(i+1, len(array)):
if array[min_] > array[j]:
min_ = j
#swap
array[i], array[min_] = array[min_], array[i]
# main
for i in range(len(array)):
print(array[i])

View File

@ -0,0 +1,2 @@
# Neuer Datentyp:
str steht für String, also eine Zeichenkette asu einem oder mehreren Buchstaben

1
4. Theorie/Funktionen.md Normal file
View File

@ -0,0 +1 @@
# Funktionen in Python

View File

@ -0,0 +1 @@
<mxfile host="app.diagrams.net" modified="2022-05-05T12:35:58.899Z" agent="5.0 (Windows)" etag="9hpcv2ziGHfhq2m_BAw5" version="18.0.0" type="device"><diagram id="oKeNR1mCrY6Sv_lApMwD" name="Page-1">7VhNc9owEP01nmkPyVg2NnAMDm0O6bQdpmmTm7A3tlphUSGHj1/flSVjO4SEzjTgzPRipCftaiW99zA4fjRbfZR0nn0SCXDHc5OV4186ntcnAT41sLZA3zdAKlliIFIDE7YBC7oWLVgCi9ZEJQRXbN4GY5HnEKsWRqUUy/a0e8Hbq85pCjvAJKZ8F/3OEpUZdOD1a/wKWJpVK5NwaEZmtJpsd7LIaCKWDcgfO34khVCmNVtFwPXZVedi4j7sGd0WJiFXhwTc3PCrO5583oyKr9++FHwDw8mZ3cYD5YXdsOOFHPONEvaAzVQ3b0CmHFic4czNki3iDHJ9peUT5EKVjSkwg9zRjOuGyYMFNVI9kT2huY4yK+BVey6ud08zWSZbMsDnqJhOuW5MhFRVjql8nPXxWuWxq3V1l5Dg1dou5slEKnLKxzU6kqLIE9AH5mKvnnMtxBxBguBPUGpteUoLJRDK1IzbUVgx9UOHnwe2d2uT6fblqtlZV51cyXUjSHdvq3y6U4eVvSrO7E9vai8jLLQQhYzhGRpUyqIyBfXMvHDLW9Q7iBlgPRgngVPFHtp1UKu8dDuvJic2LD//gqtkh6sXUtK1E4wCHweiofaaaOgipyPfxdlRr0+c4HKHB+1bXmZMwWROywNaoom1b9QuClLB6vlz3j0XG9AjPRNiPTDoW0tY1o5CgtBgWcNNQveVjnJ4iOxzJ/Kdi16cocC1LMccZnrHum6Z4EdeaIXS0gtKmUpUsGJpKVSFZcDBJsCMoUgrcaaPW0PXDBfXLGd5Cve6oFGUqvP/FvDPLSA80AIGp7SAcK8FVPe/mJd8rK88/F2Ikio0/pWWl3sWCy6k41/ostPpOxLgKwnW43pBsG28N5yywRWfGkazpZtZseLbW/CfXu/U/kPIzqEcU5lNXW5V+oIySVOXDZm+vjIHByqTuE+z4DjSHHRCmnt1eYwSjPTNa8ieQjrtC753cl/wu/ONTQ7zhUff2O7xfKH6ifyyMXgnfW13T+wMRnNvwx864gye63bNGbxOsOik/DnuKk8ws2Mq0kLZU0jH9POab9zYrf9ELMca/8T64z8=</diagram></mxfile>

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

View File

@ -0,0 +1 @@
<mxfile host="app.diagrams.net" modified="2022-05-12T12:23:06.951Z" agent="5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/101.0.4951.54 Safari/537.36 Edg/101.0.1210.39" etag="UWRpgpNDgZNYL8Qyb3L_" version="17.2.1" type="device"><diagram id="FDAoAFaqsUSTd0yCK2Pk" name="Page-1">7Vvfk5sqFP5rfOyOgMbkceNu24feuZ3u3N7bvmTYSIx3VDJINsn+9YWAUaOmdn8Esu1T5AgI5/B953AgDgqz7QeGV8u/aERSB7rR1kE3DoRg7I7Fj5TslMT3oBLELIl0pUpwlzwSLXS1dJ1EpGhU5JSmPFk1hXOa52TOGzLMGN00qy1o2vzqCsekJbib47Qt/TeJ+FJJxzCo5B9JEi/LL4PRRL3JcFlZz6RY4ohuaiJ066CQUcrVU7YNSSqVV+pFtXvf8/YwMEZyPqTBP1+DL+zLPF6zxYyEQfj3ZvP9na96ecDpWk84JfyRC41D9zYlmewbupuERfJbyYMYrJoM35UaIpFQmC5Sxpc0pjlObyvplNF1HhE5DFeUqjqfKF0JIRDC/wnnO219vOZUiJY8S/Vbsk34f7L5la9L32pvbra6531hVxZyzna1RrL4rf6uarYvle3U/OSkevWsRQVdszk5odxyvWIWE36inndYDQJGhGZEjEe0YyTFPHlojgPr9Rwf6lUmFw/a6r+wAkBrBQjY4J3jT6GPHBh6rqgRQjHG0J+48nEMHP+mtQyaRt4sE07uVnivn42ghqZB9TcJ42R7Ws1ttegGcKJxtalgKehGyZY1SI7c19LcxCwW4JPAEJhCAxyIBjA2CYcDWxsyanBRDDfYpoFRm7Y5rsPLjVIxg+k9E0+xfOr3dp/wvYhyGgbEaRLn4nkuuiJMCCS3JSKMuNYvsiSK1FohRfKI7/f9SWusaJLz/Yz9qeTVE+SoYxzduIos6pY7sah7qdS9cj3V02B76L4+y8FXHXl6QDrW85rt6WJREN6y5mE8zzBwtw+DQqXKfUnPZYHP8mFTQV0uDJ7VhXkX48JekLXQUNZCRgOz0W/OWqAnLtbdvxNuDz6Ptl6fmYD/J5x4BWBCk8BE3d4GHLZMwvFZ4GyAbc7Ga+lNbiVNqwnZpqY27bcpJI+uZW5LUneKiyKZC10UAja8La5pq6nakiRAjSGqBMvPOKLBEBVh2MMRPc6jZla/w6ql7JmBMJo0FxXwjlaLmqZuVU/aHUfUXvfqLPtRamj181LuK+hYiyOcSRTu447PbyfaGJ1kCfcKId/2YGNyLuZ4Igs8hXFekDm8gczRE1z8YY5fCnzdfuqI3xh1TE5Sh9ineCAYN4xRZt3t5RKEOm1j90GPsdw2GJoIRT2ZuDOlFHoSZWAmU2U+RFbsW8ZHDGg8IkcdftR6LEBjWBgaoZvFAhq3sHAnrJTIpSvE1xIXMtO2ISwiuXh4XBc4y0gek4UTImcaxm/EfaGegKeWZ/Pg5ML8F+jL0sz2eRorMjSedUQ3ukCiM+f0g6FE17MMzuT025t4dTqmnL4lJ2PH2x7zWLjIzL05rz++CDCgNhh+V6/v/8zre3AUXJrXbwd1muuAvgtgAdd5vm1cB18LFXZHDsZuTQ3NFkCjFxDKYR6DaabuGIgo2o6boMcneBbgqWfzMSvEIhea2W9AYKhPi+UhaGjVPSV4lIJBow6NTs4ajRm9qHRpR6TuRfALah8RVBcpSnxYgAbgNtFg/ooAMnvz/CloAObQMPRvGIbR0P9HDKt8g4/OhwZRrP4fpfYI1b/M0O0P</diagram></mxfile>

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

12
4. Theorie/Quicksort.md Normal file
View File

@ -0,0 +1,12 @@
# Quicksort
- Pivoelement muss zuerst bestimmt werden, idealerweise der Median (Median: nicht ohne Sortierung bestimmbar)
- Prinzip: Teile und herrsche
## Beipiel:
253 401 24 590 281
253 24 281 401 590
\\\\
- Elemente werden mit Pivoelement verglichen und avor oder dahinter einsortiert
- Vorgang wird wiederholt, bis nur einelemntigre Teilmengen über sind (Rekursion)
## Übung:
58 12 3 7 62
3 7 12 58 62

View File

@ -0,0 +1 @@
<mxfile host="app.diagrams.net" modified="2022-05-05T12:25:59.185Z" agent="5.0 (Windows)" etag="zLYe7e7hk7v4KPXEtLL9" version="18.0.0" type="device"><diagram id="_qOt0WykFTrCSzvU5MhP" name="Page-1">7VlNc5swEP01zLSHdCwwNj7GOGkPTtsZT6fNUQYZ1AByhIjt/PquQOIj/iJNXDxNcvBoV1qt2H3vIceG5cbrzxwvwxvmk8gwe/7asCaGaQ6RDZ/SsVGOoVU4Ak79woUqx4w+EuXsKW9GfZI2FgrGIkGXTafHkoR4ouHDnLNVc9mCRc2sSxyQLcfMw9G29yf1RVh4HXNY+b8QGoQ6MxqMipkY68XqSdIQ+2xVc1lXhuVyxkQxitcuiWTtdF2KuOs9s+XBOElEmwBnzMffvy2/ZnT1o7+mk+n03rpQzXjAUaYe2DAHEew39ukDDAM5TDMvJLDqhiY0zmIYZYkvowgXOEuLSR035zpMe+BItc127A/9hXpRIWFCILxHeCpIAoOZgGcg+zbKqyo2ulXEh84pk3ERsoAlOLqqvGPO4OBE1qMHVrVmytgSnAicv4kQGwVDnAkGrlDEkZolayp+yfBPtrJu1WZyPFnXjY02EsE3tSBp3ur9pFGF5ZaOK55PPtTehitXyjLukQNd1sTBPCDiwDqzhCXQmbCYwHkgjpMIC/rQPAdWxArKdRX2YKDg9wwooi0oXnKON4Y9dgBc7lB+AFxdlH84hj3ZQkCzv6uQCjJb4rw0K1CnZi9VOsAwWR+u8HZFVIBlK24rcbMGyl5VUoE0/8OaTOh1r15E+zl89nFasDrOSuplSQq8oLIqkoBTCkx8GbsLrVgY0LyxG+R5KUlzzhcpVcJGvpAmj1n7pO9K0FIJzJZK0O9SCcy9SqD7ny5x0mj54D5jOVSwdxfkzb3wWMS4YV3KYwfzD8iWugGGadvl4GOBKRWs8VQs/OtM9QRHMuWilstbXdVKjBfJm9DfSYbmwjNTRdPqWhWHnSpEXR9KtTiiEKiuDzW5OL1C9FsqxKBLheifgUJIxu4hoFvdWF7hohLhOYnG5bHd4tSwjXWd/52GtQh1zdrR+bzXUTvWPnmv946wdsESUevmaNTo5quwedCSzU6XbB7svbSe9u3bjWZISdgrHPpCcOAacBopeQK+F0kJGp6blCC0Vbd3LXmuljgttQT1dqPj34iJ8/bEJFeNA1eR/0pMuv82odXszUEsv9buBlJ3EFvQKKr5F45HPE8WR3B2R2ozc8fu273TgPKU//gDs/qRIJ+r/dJiXf0B</diagram></mxfile>

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

BIN
4. Theorie/Thumbs.db Normal file

Binary file not shown.

View File

@ -0,0 +1,26 @@
from array import array
import numbers
import statistics
array=[]
def add_items_to_array():
print("Operations:\n1.Add numbers\n2.That are all numbers\n3.Exit\nThere are %s Elements in the array" %(len(array)))
operation=int(input("Operation:"))
if operation == 1:
numbers_to_add=float(input("Number:"))
array.append(numbers_to_add)
add_items_to_array()
elif operation == 2:
get_median()
elif operation == 3:
exit()
else:
print("Input the right operation")
add_items_to_array()
def get_median():
median_item=statistics.median(array)
print(median_item)
exit()
add_items_to_array()

23
output.txt Normal file
View File

@ -0,0 +1,23 @@
2022-09-13 11:23:33,129: 48
2022-09-13 11:23:33,129: 1680
2022-09-13 11:23:33,129: 57120
2022-09-13 11:23:33,130: 1940448
2022-09-13 11:23:33,135: 65918160
2022-09-13 11:23:33,159: 2239277040
2022-09-13 11:23:33,306: 76069501248
2022-09-13 11:23:34,146: 2584123765440
2022-09-13 11:23:39,077: 87784138523760
2022-09-13 11:24:07,549: 2982076586042448
2022-09-13 11:32:51,334: 48
2022-09-13 11:32:51,334: 1680
2022-09-13 11:32:51,335: 57120
2022-09-13 11:32:51,336: 1940448
2022-09-13 11:32:51,341: 65918160
2022-09-13 11:32:51,366: 2239277040
2022-09-13 11:32:51,506: 76069501248
2022-09-13 11:32:52,320: 2584123765440
2022-09-13 11:32:57,098: 87784138523760
2022-09-13 11:33:24,936: 2982076586042448
2022-09-13 11:34:14,228: 17380816062160328
2022-09-13 11:35:05,575: 43707861882448008
2022-09-13 11:35:26,777: 58106601358565880