Mittwoch, 10. Dezember 2014

Aufgaben für 10.12.2014

Aufgaben

Vorschlag für "Augenzählen":

import random
sum=0
cube_1=0
cube_2=0

augenzahlen=[0,0,0,0,0,0,0,0,0,0,0,0]
for i in range(1000):
cube_1=random.randint(1,6)
cube_2=random.randint(1,6)
sum=cube_1+cube_2
augenzahlen[sum-1]=int(augenzahlen[sum-1])+1
print(augenzahlen)
print("Am haeufigsten wurde", augenzahlen.index(max(augenzahlen))+1,"gewuerfelt, und zwar ",max(augenzahlen),"mal.")


(Achtung, die letzte Zeile wird hier verteilt auf zwei Zeilen angezeigt. Für das Programm muss sie aber in einer Zeile sein.)

Vorschlag für "Schaltjahr":

jahr=input("Gib ein Jahr ein:")
jahr=int(jahr)
if jahr%4!=0:
print(jahr, " ist kein Schaltjahr")
else:
if jahr%100==0 and jahr%400==0:
print(jahr, " ist ein Schaltjahr")
if jahr%100==0 and jahr%400!=0 and jahr%4==0:
print(jahr, " ist ein Schaltjahr")

Vorschlag für "Münzenzählen":

betrag= float(input("Gib einen Betrag ein (z.B. 3.56): (Bitte Punkt statt Komma nutzen):"))
zwei_euro=0
ein_euro=0
cent_50=0
cent_20=0
cent_10=0
cent_5=0
cent_2=0
cent_1=0


while round(betrag,2)>0:
betrag=round(betrag,2)
if betrag >=2:
zwei_euro=zwei_euro+1
betrag=betrag-2
continue
if betrag>=1:
ein_euro=ein_euro+1
betrag=betrag-1
continue
if betrag>=0.5:
cent_50=cent_50+1
betrag=betrag-0.50
continue
if betrag>=0.20:
cent_20=cent_20+1
betrag=betrag-0.20
continue
if betrag>=0.1:
cent_10=cent_10+1
betrag=betrag-0.1
continue
if betrag>=0.05:
cent_5=cent_5+1
betrag=betrag-0.05
continue
if betrag>=0.02:
cent_2=cent_2+1
betrag=betrag-0.02
continue
if betrag>=0.01:
cent_1=cent_1+1
betrag=betrag-0.01
print("Es werden",zwei_euro,"mal 2 Euro,",ein_euro,"mal 1 Euro,", cent_50,"mal 50ct,", cent_20,"mal 20ct,", cent_10,"mal 10ct,", cent_5,"mal 5ct,",cent_2,"mal 2ct und",cent_1,"mal 1ct Muenzen benoetigt.")


Mittwoch, 3. Dezember 2014

Uhrzeiten eines Tages ausgeben

Gesucht ist ein Programm, dass alle möglichen Uhrzeiten eines Tages ausgibt. Also von "00:00:00" bis "23:59:59"

Von Hand ist das natürlich uferlos, da es 86400 Möglichkeiten gibt.

Nested loops, also "Schleifen in Schleifen" nehmen uns aber hier viel Arbeit ab.

Hier ist der Code:

Mittwoch, 26. November 2014

1+(1+2)+(1+2+3)+...

sum=0
for i in range (1001):
    for k in range(i+1):
        sum+=k
print (sum)

Mittwoch, 12. November 2014

Primzahlen bis 1000 ausgeben

# Gib alle Primzahlen kleiner als 1000 auf dem Bildschirm aus

is_prime=True
print(1)
print(2)
for i in range(3,1000,2):
    for k in range(2,i):
        if i%k==0:
            is_prime=False
            break
    if is_prime==True:
        print (i)
    is_prime=True

Seite mit Programmieraufgaben

Link

Mittwoch, 5. November 2014

Aufgabe von Project Euler (modifiziert)

Finde die Summe der Ziffern auf dieser Seite: https://projecteuler.net/problem=13

Also 3+7+1+0... usw.

Code:

ziffern=""" Zahlen von dem Link oben""" #Wichtig! 3 Anfuehrungszeichen verwenden

sum=0
zahlen=0
for i in ziffern:
    if i != "\n":
        zahlen+=1
        sum+=int(i)
print (sum)
print(zahlen)

Zahlen von 1 bis 10000, die durch 3 und 7 teilbar sind

# Alle Zahlen, kleiner als 10.000 dir durch 3 und 7 teilbar sind.
zaehler=0
for i in range (10000):
    if i%3==0 and i%7==0:
        print (i) #Fuer grosse Bereiche kann die Ausgabe "auskommentiert" werden um Zeit zu sparen
        zaehler+=1
print (zaehler)

Donnerstag, 9. Oktober 2014

Zahlenraten revers, du denkst dir eine Zahl aus, der Computer errät sie

# Zahlenraten revers
# Der Nutzer denkt sich eine Zahl und der Rechner versucht, sie mit möglichst wenigen Versuchen zu erraten.

obergrenze =100
untergrenze=1
versuch=50
counter=0
schummel=False


print("Denk dir eine Zahl zwischen 1 und 100 aus!")
print("Ist die Zahl (g)rößer oder (k)leiner als 50 oder (s)timmt 50?")
hinweis=input()
while hinweis!="s":
    counter+=1
    if hinweis=="g":
        untergrenze=versuch
    if hinweis=="k":
        obergrenze=versuch
    versuch=int((obergrenze+untergrenze)/2)
    print("Die Zahl liegt also zwischen %i und %i" %(untergrenze, obergrenze))
    print("Ist die Zahl (g)rößer oder (k)leiner als %i oder (s)timmt %i?" % (versuch, versuch))
    hinweis=input()
    if versuch < untergrenze or versuch> obergrenze:
        print("Mit dir spiele ich nicht mehr, du schummelst!")
        schummel=True
        break
if schummel==False:
    print("Die Lösung ist %i, und ich habe %i Versuche benötigt um sie zu erraten" % (versuch, counter))


Zum anschauen und nachvollziehen ist es vielleicht ganz gut, wenn man die Farben hat, daher noch das Bild vom Editor (anklicken zum vergrößern):

Mittwoch, 8. Oktober 2014

Empfehlenswerte Seite für weiter Informationen

Hier noch eine interessante Seite, die dir helfen kann, wenn du manche befehle usw. nicht verstehst.

Python Kurs online (python-kurs.eu)

Stein, Schere, Papier




Hier ist der Code für "Stein, Schere, Papier". Einige Sachen werden noch etwas schwierig für euch sein, aber versucht das Programm zu verstehen.

Damit du nicht in die Versuchung kommt, mit "Kopieren und Einfügen" zu arbeiten, und den Code abtippen mußt, diesmal als Bild :). Wenn du das Bild anklickst, wird es größer.

Nächsten Mittwoch gehe ich den Code mit euch durch.

Mittwoch, 1. Oktober 2014

Zahlenraten

Hier der Code aus dem ersten "richtigen" Termin:
(Bitte nicht kopieren und einfügen, sondern abtippen)


import random
versuche=0
name=input("Wie heisst du?")
print("Rate die Zahl zwischen 1 und 10")
loesung=random.randint(1,10)
while versuche <6:
    zahl=int(input())
    versuche=versuche+1
    if loesung<zahl:
        print("Zu gross")
    if loesung>zahl:
        print("Zu klein")
    if loesung==zahl:
        break
if loesung==zahl:
    print("Gut gemacht, %s. Du hast die Zahl in %i Versuchen erraten" %(name, versuche))
if loesung!=zahl:
    print("Leider hast du es nicht geschafft. Die gesuchte Zahl war %i" % loesung)

Dienstag, 23. September 2014

Benötigte Software für zu Hause

Python 3.4.2 inkl. einem Editor kann man sich (für Windows) hier kostenlos herunterladen:
Python 3.4.1 Windows

Für OS X findet man Python hier:
Python 3.4.1 für Apple

Ein sehr gutes Tool (Werkzeug) um sich den Ablauf eines Programms anzusehen, findet man hier:
http://pythontutor.com/visualize.html
Bei dieser Seite bitte darauf achten, dass Python 3.3 eingestellt ist, einige Befehle bzw. die Schreibweise ist bei Python 2.x manchmal etwas anders.

Das Buch mit dem wir arbeiten, findet man hier:
Schlangengerangel für Kinder
Links auf der Seite findet man die Version für die verschiedenen Betriebssysteme.