Bonuspunkte berechnen mit Numpy?v

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
donutdrake
User
Beiträge: 14
Registriert: Dienstag 20. November 2018, 07:54

Guten Morgen,

ich bin neu hier und beschäftige mich seit kurzem mit der Informatik bzw. mit dem Programm.
Studiere momentan Medientechnik im 1.Semester und habe bisschen Probleme kleine Codes zu entwickeln, da ich keinerlei Kenntnisse dort habe und trotzdem bisschen Interesse geweckt habe.

Ich habe eine Hausaufgabe bekommen und es handelt sich hierbei, ein Code zu entwickeln, der die Bonuspunkte über das Semester berechnet.

Es gelten folgende Richtlinien:
• 100 Punkte pro Aufgabenblatt
• Es gibt 12 Übungsblätter - Maximal 1200 Punkte
• Sie benötigen mindestens 25 Punkte pro Blatt, da das gesamte Blatt sonst als nicht
bestanden gilt (0 Punkte)
• Die erreichte Prozentzahl aus allen Blättern wird auf 15 Gesamtpunkte umgerechnet
• Die Teilnahme an der Übung erzielt somit max. 15 Punkte
• Klausurzulassungsbeschränkung: 5 Punkte
• Alle Punkte mehr als 5 sind demnach Zusatzpunkte für die Klausur
• Hinweis: Wer alle Punkte erreicht erhält 10 Zusatzpunkte in der Klausur
Beispiel: Wer 10 von 15 Punkten erreicht erhält 5 Zusatzpunkte für die Klausur

Ich hätte gedacht, dass man als Ansatz Numpy verwendet.

Code: Alles auswählen

import numpy as np

Code: Alles auswählen

def Punkte(x)

Code: Alles auswählen

x =np.arrance(0, 100)

Code: Alles auswählen

def Übungsblätter(y)
oder def maxPunkte(y), hätte ich gedacht

Code: Alles auswählen

n =25

Code: Alles auswählen

if x:y <= n
, da man min. 25 Punkte pro Blatt benötigt um zu bestehen

Code: Alles auswählen

print(Die benötigte Punkte wurden nicht erreicht)
So hätte ich es als Ansatz gemacht, aber mein Bauchgefül sagt, dass der Code komplett falsch ist oder bisschen ansatzweise richtig ist... :oops:

Hiermit bedanke ich mich und wünsche euch einen schönen Vormittag. :oops:
Bolitho
User
Beiträge: 219
Registriert: Donnerstag 21. Juli 2011, 07:01
Wohnort: Stade / Hamburg
Kontaktdaten:

zerleg die Richtlinien mal in ganz kleine Arbeitsanweisungen. Beispiel: Abfrage, wie viele Punkte auf diesem Blatt erreicht wurden
Wenn du die Bauteile hast können die Python-Code übersetzt werden

Code: Alles auswählen

punkte = input("Wie viele Punkte wurden auf diesem Blatt erreicht? ")

# oder auch:
def punkte_ermitteln():
   return input("Wie viele Punkte wurden auf diesem Blatt erreicht?")

punkte = punkte_ermitteln() 

Ob wir überhaupt numpy sinnvoll einsetzen können, sehen wir später.
Benutzeravatar
__blackjack__
User
Beiträge: 13079
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@donutdrake: Also mir sind diese paar ”Python-Einzeiler” die teilweise nicht einmal am Compiler vorbeikommen irgendwie zu wenig um das „Ansatz“ zu nennen. Mach doch mal einen tatsächlichen Ansatz. Erst einmal komplett ohne Code einfach die nötige Mathematik, denn eigentlich sind das ja Matheaufgaben, mit gegeben, gesucht, Formeln die man dafür braucht und entsprechend kombiniert und nach dem was man sucht auflöst. Und dann kann man in Worten beschrieben wie man das ausrechnen würde, so das ein anderer Mensch das als Anleitung hernehmen könnte um die Aufgabe mit Papier und Stift zu lösen. Wenn man das hat, sollte man genug Informationen haben um das in Code für den Rechner zu übersetzen, das der die Arbeitsschritte durchführt und das Ergebnis ausrechnet.

Zu den (kaputten) Codeteilen würde ich noch auf den Style Guide for Python Code hinweisen. Insbesondere wegen der Namenskonventionen hinweisen. Zusätzlich zu dem was dort steht: Funktionen werden üblicherweise nach der Tätigkeit benannt die sie ausführen. `Punkte`, `Übungsblätter`, und `maxPunkte` sind also keine guten Funktionsnamen, da sie keine Tätigkeiten beschreiben. Umlaute würde ich auch nicht in Namen schreiben, auch wenn das theoretisch technisch möglich ist. Zum einen gibt es dann doch immer wieder irgendwelche Werkzeuge die damit nicht klar kommen (Stylechecker die nicht berücksichtigen das noch etwas anderes als ASCII-Zeichen in Namen vorkommen können, beispielsweise), und zum anderen ist englisch als Sprache in der Regel sinnvoller weil auch die Sprachelemente selbst und so ziemlich alle Module und Bibliotheken in ”englischem Python” abgefasst sind.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
donutdrake
User
Beiträge: 14
Registriert: Dienstag 20. November 2018, 07:54

__blackjack__ hat geschrieben: Dienstag 20. November 2018, 15:39 @donutdrake: Also mir sind diese paar ”Python-Einzeiler” die teilweise nicht einmal am Compiler vorbeikommen irgendwie zu wenig um das „Ansatz“ zu nennen. Mach doch mal einen tatsächlichen Ansatz. Erst einmal komplett ohne Code einfach die nötige Mathematik, denn eigentlich sind das ja Matheaufgaben, mit gegeben, gesucht, Formeln die man dafür braucht und entsprechend kombiniert und nach dem was man sucht auflöst. Und dann kann man in Worten beschrieben wie man das ausrechnen würde, so das ein anderer Mensch das als Anleitung hernehmen könnte um die Aufgabe mit Papier und Stift zu lösen. Wenn man das hat, sollte man genug Informationen haben um das in Code für den Rechner zu übersetzen, das der die Arbeitsschritte durchführt und das Ergebnis ausrechnet.

Zu den (kaputten) Codeteilen würde ich noch auf den Style Guide for Python Code hinweisen. Insbesondere wegen der Namenskonventionen hinweisen. Zusätzlich zu dem was dort steht: Funktionen werden üblicherweise nach der Tätigkeit benannt die sie ausführen. `Punkte`, `Übungsblätter`, und `maxPunkte` sind also keine guten Funktionsnamen, da sie keine Tätigkeiten beschreiben. Umlaute würde ich auch nicht in Namen schreiben, auch wenn das theoretisch technisch möglich ist. Zum einen gibt es dann doch immer wieder irgendwelche Werkzeuge die damit nicht klar kommen (Stylechecker die nicht berücksichtigen das noch etwas anderes als ASCII-Zeichen in Namen vorkommen können, beispielsweise), und zum anderen ist englisch als Sprache in der Regel sinnvoller weil auch die Sprachelemente selbst und so ziemlich alle Module und Bibliotheken in ”englischem Python” abgefasst sind.
Guten Abend, @_blackjack_,
danke für die ausführliche Antwort und für die Tipps.
Als Quereinsteiger sieht die Aufgabe erstmals umfangreich aus, aber ich werde mich als erstes mit ein Blatt Papier die nötigen Bedingungen aufzuschreiben.
Notfalls wende ich mich hier im Forum oder frage meine Dozenten nach, falls ich Probleme habe.
Und danke für den Link.

Wünsche dir ein schönen Abend :)
donutdrake
User
Beiträge: 14
Registriert: Dienstag 20. November 2018, 07:54

Bolitho hat geschrieben: Dienstag 20. November 2018, 15:28 zerleg die Richtlinien mal in ganz kleine Arbeitsanweisungen. Beispiel: Abfrage, wie viele Punkte auf diesem Blatt erreicht wurden
Wenn du die Bauteile hast können die Python-Code übersetzt werden

Code: Alles auswählen

punkte = input("Wie viele Punkte wurden auf diesem Blatt erreicht? ")

# oder auch:
def punkte_ermitteln():
   return input("Wie viele Punkte wurden auf diesem Blatt erreicht?")

punkte = punkte_ermitteln() 



Ob wir überhaupt numpy sinnvoll einsetzen können, sehen wir später.
Hi Bolitho ,

danke für den Antwort, habe erstmals gedacht, dass man Numpy nicht braucht.
In den Übungen haben wir oft mit Numpy und def von Funktionen nur geübt.

Schönen Abend noch, :)
Antworten