====== Challenges ====== Es gibt zwei Dateien: * {{ :lehrkraefte:blc:informatik:ffprg1-2019:challenge.py |challenge.py}} Enthält Aufgaben und Funktionsrümpfe * {{ :lehrkraefte:blc:informatik:ffprg1-2019:checker.py |checker.py}} Überprüft die Funktionen für einige Fälle ===== Vorgehen ===== * Legen Sie einen Ordner 'challenge' an und kopieren Sie die beiden Dateien von oben in diesen Ordner. * Starten Sie TigerJython (evtl. auf die [[http://www.tjgroup.ch/index.php?site=download|neuste Version]] updaten, [[https://fginfo.ksbg.ch/~ivo/tigerjython/|interner Link]]). * Öffnen Sie mit TigerJython die beiden Dateien challenge.py und checker.py * Führen Sie checker.py aus. Dabei muss für jede Challenge das Resultat erscheinen (1. Challenge OK, alle 6 anderen FAIL) * Studieren Sie die Datei challenge.py. * Beginnen Sie mit der Lösung der Challenge Ihrer Wahl. Stellen Sie Fragen bei technischen Problemen. ===== Lösungsvorschläge ===== ==== hello ==== # Autor: Ivo Bloechliger def hello(): print("Hello world") ==== hifive ==== # mirco def hifive(n): for i in range(n): print('Hi!') print('Five') ==== rampe ==== # mirco def rampe(n): for i in range(n): print((i+1)*'#') ==== tree ==== # mirco def tree(n): for i in range(n): print((n-1-i)*' '+(1+2*i)*'^') print((n-1)*' '+'|') ==== teiler ==== # mirco def teiler(n): for i in range(n): if i!=0: if n%i==0 : print(i) print(n) ==== prim ==== # mirco def prim(n): x=0 for i in range(n): if i!=0 and i!=1: if n%i==0: x=1 if n==0 or n==1: x=1 if x==1: print(str(n)+' nicht prim') if x!=1: print(str(n)+' prim') ==== grid ==== # mirco def grid(x,y): for i in range(y): print(x*'+---'+'+') print(x*'| '+'|') print(x*'+---'+'+')