Forum / Grundlagen des Programmierens / Sammlung aller Fragen des 1.Kolloquiums

Sammlung aller Fragen des 1.Kolloquiums

Hallo!

Bitte kann jeder die Aufgaben vom 1.Kolloquium hier in seinen eigenen Worten schreiben? Das würde enorm zum Bestehen der Qualität von Studify beitragen!

Danke und LG

Bernhard +18

Was macht der Befehl, wie bedienen, welche Klammern etc: a) s.pop() b)5/19 versus 5//19 c) wie ist eine Liste richtig definiert, welche klammern d) Was gibt der Befehl print a*b aus?

[SIZE=4]Antworten: b) rundet auf ganzzahlen. 7/3. =2.333 --- 7//3.=2.0

A: Schreiben Sie eine Funktion nsum, die als Parameter eine Zahl bekommt und als Rückgabetyp int hat. Die Funktion solle alle Zahlen von 1 bis zu der Zahl addieren. Falls die Zahl kleiner Null sein sollte, soll der Rückgabewert -1 sein.

B: Schreiben Sie eine Fkt addiererstring (), die als Parameter eine liste mit strings erhält und als Ausgabe den zusammengefügten string retournieren soll.

C: definiere eine Funktion, die als Parameter einen string bekommt und die als rückgabewert den gleichen string ohne dem Buchstaben "e" zurückgibt

D: Schreiben Sie eine Fkt, die eine Liste aus Strings als Parameter erhält und die Länge des kürzesten Elements dieser liste zurückgibt

E: Schreiben Sie eine Fkt, die als Parameter einmal einen String erhält und zweitens eine Zahl. Der Rückgabewert soll der String sein und zwar so oft (so viel-fach) wie die Zahl.

F: Schreiben Sie eine Funktion, die aus einer Liste den kleinsten Wert löscht.

[SIZE=4]Lösungen: siehe Anhang, ihr könnt meine Lösungen, da ich sie in ein Textdokument getan hab kopieren und in Spyder einfügen. (Die Einrückungen sind dann schon da)

Viele Informationen findet man auch in der Programmieren Facebook Gruppe von diesem und/oder letztem Jahr. Ich find aber, dass es besser und netter gegenüber denen, die nächstes Jahr programmieren, wäre, ins Studify zu schreiben. Bis man sich die Facebook Gruppe aus letzten Jahr auf Facebook rausgsucht hat und ob man dann auch noch einfach so Mitglied werden kann...

Jaschar ±0

def nsum(a): summ=0 if a<0: return -1 for i in range(1,a+1): summ +=i return summ #print nsum(6)

ab =[a","b","c] def addstring (liste): ausgabe ="" for i in range(len(liste)): ausgabe += liste[i] return ausgabe

#print addstring(ab)

abc ="eeeeaaaaadaee"

def losche(string): ausgabe="" for i in range(len(string)): if string[i]=="e": ausgabe+=string[i].replace("e","") else: ausgabe+=string[i] return ausgabe

#print losche(abc)

def kurz(liste): ausgabe = liste[0] for i in range(1,len(liste)): if len(ausgabe)> len(liste[i]): ausgabe = liste[i] return ausgabe

y=[asdasd","asdadasdasd] #print kurz(y)

Jaschar ±0

def loschklein(liste): ausgabe = liste[0] for i in range(len(liste)): if len(ausgabe)> len(liste[i]): ausgabe = liste[i]

liste.remove(ausgabe)
    
return liste

print loschklein(y)

Lösung aller Beispiele

Christoph ±0
Meine Lösungen (keine Garantie)

Hoffe die passen so lg johnny

Lukas ±0
Weitere, alternative Lösungen zu A bis F

Hab alle erfolgreich getestet. Bei Fehlern: Bitte antworten.

Paul ±0
Weitere Angaben + Lösung

Aufgabe 1:

  1. Schreiben Sie eine Funktion 'cutoff', welcher ein String und eine Integerzahl als Argument uebergeben werden. Die Funktion retourniert 1 wenn die Laenge des Strings groesser ist als die gegebene Integerzahl, -1 wenn kleiner, und 0 wenn genau gleich.

Aufgabe 2: Schreiben Sie eine Funktion 'hoch', die als Parameter eine Liste und eine Zahl N bekommt, und eine Liste retourniert, deren Eintraege der jeweilige Eintrag der Eingabeliste zur Potenz N ist.

patrick ±0

beispiel 1: erstellen sie eine funktion summe() welche als eingabeparameter die 2 integer zahlen m und n hat. als rückgabe soll die funktion eine integer summe liefern welche alle zahlen zwischen m und n die ohne rest durch 8 dividierbar sind addiert.

beispiel 2: erstellen sie eine funktion laengen() welche als eingabeparameter eine liste mit strings hat und eine liste zurückgibt welche die einzelnen buchstabenanzahl der strings in einer Liste zurückgibt.

burak ±0

beispiel 1: erstellen sie eine funktion summe() welche als eingabeparameter die 2 integer zahlen m und n hat. als rückgabe soll die funktion eine integer summe liefern welche alle zahlen zwischen m und n die ohne rest durch 8 dividierbar sind addiert.

Könnte wer das Bsp bitte lösen??

Philipp +1

Müsste so stimmen!

def summe(m,n): m = int(m) n = int(n) Liste =[]

for i in range(m, n+1, 1):
    if i % 8 == 0:
        Liste.append(i)

Result = sum(Liste)

#print Liste    
return Result    

print summe(1, 256)

burak +1

def summe(m,n): summe=0 for i in range(m+1,n): if i % 8 == 0:
summe = summe+i print summe

summe(6,17)

Diese Version funktioniert auch :)

Christoph ±0

Hat wer einen Link für die FB Gruppe vom letzten Jahr? Kann sie leider nicht finden.

Günter +2

Muss man das Skriptum für das Kolloquium ausdrucken, oder kann man es auch online am PC durchstöbern? Kann man google benutzen? Kann man womöglich sogar "schummeln", in dem man mit gewissen Foren hantiert?

Ahmed ±0

Was muss man vom skript können? das gesamte oder nur bis zu einem gewissen kapitel?

Martin ±0

Leute ich hab schon die mündlich überlieferte Angabe eines der Tests heute am 25.04, vielleicht kann es ja jemand schon lösen:

  1. Eine Funktion definieren, welche einen String übergeben bekommt. Dieser soll dann durchsucht werden, ob er große und kleine Bs enthält, wenn ja, sollen dann die Bs(B bzw. b) durch die Zahlen (1 bzw. 3) ersetzt werden, und als neuen String ausgegeben werden.
  2. Eine funktion bekommt eine Liste übergeben, und soll dann ein Dictionary ausgeben, mit dem Inhalt und wie oft er vorkommt als value: z.B. Liste = [Banane", "Apfel", "Cocos", "Apfel] def dicmachen(Liste): ..... neuesDic = {"Banane" : 1, "Apfel" : 2, "Cocos" : 1}