lehrkraefte:sbt:informatik:glf22:python:little-programming-tasks

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
lehrkraefte:sbt:informatik:glf22:python:little-programming-tasks [2022/12/09 08:56]
Karlheinz Schubert [Was für eine Note muss ich schreiben, damit ich über einen Schnitt von x.y komme?]
lehrkraefte:sbt:informatik:glf22:python:little-programming-tasks [2022/12/09 11:43]
Karlheinz Schubert [Vokabeltrainer]
Line 40: Line 40:
 </code> </code>
 </hidden> </hidden>
- 
- 
 ---- ----
 <hidden Expertenaufgabe> <hidden Expertenaufgabe>
Line 59: Line 57:
   * Ergänze das Programm so, dass du nach dem Dateinamen gefragt wirst und beliebig viele Dateien nacheinander verschlüsseln kannst.   * Ergänze das Programm so, dass du nach dem Dateinamen gefragt wirst und beliebig viele Dateien nacheinander verschlüsseln kannst.
 </hidden> </hidden>
- 
- 
 </WRAP> </WRAP>
  
Line 70: Line 66:
   - Verbessere das Programm so, dass du zusätzlich eingeben kannst, wieviele Tests noch anstehen, also wie viele Noten du noch bekommen kannst.   - Verbessere das Programm so, dass du zusätzlich eingeben kannst, wieviele Tests noch anstehen, also wie viele Noten du noch bekommen kannst.
  
 +<hidden Hinweis1>
 +<code python>
 +while True:
 +    Eingabe = input('Gewünschter Schnitt: ')
 +    if len(Eingabe) == 0:
 +        break
 +    # Umwandlung der Texteingabe in eine Dezimalzahl:
 +    WunschNote = float(Eingabe)
 +</code>
 +</hidden>
 +
 +<hidden Hinweis2>
 +<code python>
 +Noten = [4.5, 5, 3.75, 5.5]
 +Durchschnitt_ungerundet = sum(Noten)/len(Noten)
 +Durchschnitt = round(sum(Noten)/len(Noten), 2)
 +</code>
 +</hidden>
 </WRAP> </WRAP>
  
Line 79: Line 93:
     Vokabeln = [     Vokabeln = [
        "lesen","read",         "lesen","read", 
-       "Apfel","Alple",+       "Apfel","apple",
        "geben","give"        "geben","give"
     ]     ]
Line 95: Line 109:
 <hidden Hinweis2> <hidden Hinweis2>
 <code python> <code python>
-Antwort = input(f'Übersetzte "{Vokabel}": ')+Antwort = input(f'Übersetze "{Vokabel}": ')
 </code> </code>
 </hidden> </hidden>
 +----
 <hidden Expertenaufgabe1> <hidden Expertenaufgabe1>
   * Baue das Programm so um, dass du die Übersetzungsrichtung wählen kannst.   * Baue das Programm so um, dass du die Übersetzungsrichtung wählen kannst.
Line 106: Line 121:
 <hidden Expertenaufgabe2> <hidden Expertenaufgabe2>
   * Erweitere das Programm so, dass du es für mehr als zwei Sprachen verwenden kannst.    * Erweitere das Programm so, dass du es für mehr als zwei Sprachen verwenden kannst. 
 +</hidden>
 +<hidden Lösung>
 +<code python>
 +"""
 +Vokabeltrainer
 +"""
 +from random import randint
 +
 +Vokabeln = [
 +    'lesen', 'read',
 +    'Apfel', 'apple',
 +    'geben', 'give',
 +    'lächeln', 'smile',
 +    'rennen', 'run'
 +]
 +Richtige = []
 +Zaehler_richtig = 0
 +Zaehler_falsch = 0
 +while True:
 +    Mode = input('de - Deutsch -> Englisch\ned - Englisch -> Deutsch: ')
 +    if Mode == 'ed' or Mode == 'de':
 +        break
 +    print('Unbekannter Mode, versuche es noch einmal!')
 +
 +while True:
 +    index = randint(0, len(Vokabeln)//2 - 1)
 +    #print(f'{index} of {len(Vokabeln)//2 - 1}')
 +    if index in Richtige:
 +        if len(Richtige)==len(Vokabeln)//2:
 +            break
 +        continue
 +    deutsch = Vokabeln[2*index]
 +    englisch = Vokabeln[2*index+1]
 +    if Mode == 'de':
 +        Frage = deutsch
 +        Antwort = englisch
 +    else:
 +        Frage = englisch
 +        Antwort = deutsch
 +    Test = input(f'Übersetze "{Frage}" ▶ ')
 +    if len(Test) == 0:
 +        break
 +    if Antwort == Test:
 +        print('richtig')
 +        Zaehler_richtig += 1
 +        Richtige.append(index)
 +    else:
 +        print('falsch')
 +        Zaehler_falsch += 1
 +
 +print(f'Du hattest {Zaehler_richtig} richtige und {Zaehler_falsch} falsche {"Antwort" if Zaehler_falsch==1 else "Antworten"}.')
 +print('fertig')
 +
 +</code>
 </hidden> </hidden>
 </WRAP> </WRAP>
  • lehrkraefte/sbt/informatik/glf22/python/little-programming-tasks.txt
  • Last modified: 2022/12/09 22:45
  • by Karlheinz Schubert