• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] Skript das Prozente in Punkte fuer Noten umrechnet

Catull

Hacker
Hallo,

sorry fuer den etwas konfusen Titel
Was ich versuche ist, ein Shellscript zu schreiben, das folgendes macht:

1) Eingabe eines numerischen Wertes (Erreichbare Höchstpunktzahl)
2) Umrechnung der Hoechstpunktzahl in Noten nach einem prozentualen Schluessel
Code:
   - %       Note
==================
     96        1
     85        2
     70        3
     50        4
     28        5
 darunter      6
3) Ausgabe des Ergebnisses in dieser Art:

Gesamtpunkte 19
Note 1 => 19-18 Punkte
Note 2 => 17-16 Punkte
Note 3 => 15- 13 Punkte
Note 4 => 12-9 Punkte
Note 5 => 8- 5 Punkte
Note 6 => 4-0 Punkte

Kann jemand mit Interesse und uebriger Zeit helfen :wink:

Besten Dank
 
A

Anonymous

Gast
Wir könnten dir sicherlich ein fertiges Script schreiben, und was hättest du dabei gelernt? Nur eines: man muss nur immer einen Dummen finden.

Also jetzt nicht falsch verstehen, wir helfen gerne, aber versuche es erst mal selbst und poste uns dann was du probiert hast auch wenn es nicht funktioniert, dann werden wir dir gerne Ratschläge geben und dir Hilfestellung über Hürden und Hinternisse geben. Hier im Forum wurden schon mit der Bash die verschiedensten Sachen in diese Richtung gemacht, wenn du ein bisschen suchst, dann findest du bestimmt etwas was du benutzen kannst.
Siehe auch die Manpage der bash zB den Abschnitt "ARITHMETIC EVALUATION" und solche Befehle wie test case if


robi
 
OP
C

Catull

Hacker
robi schrieb:
Wir könnten dir sicherlich ein fertiges Script schreiben, und was hättest du dabei gelernt? Nur eines: man muss nur immer einen Dummen finden. i
Eigentlich wollte ich einen Schlauen finden ;)

robi schrieb:
Also jetzt nicht falsch verstehen, wir helfen gerne, aber versuche es erst mal selbst und poste uns dann was du probiert hasti
Keine Angst, ich weiss, dass dies ein aeusserst hilfsbereites Forum ist. Auch hast du damit Recht, dass mein Lerneffekt bei einem bereitgestellten Skript gering ist. Fakt bei mir ist, dass ich im Moment nicht die Zeit habe, mich in die Sache "reinzuknien". Ich hatte daher auf die "gebratene Taube Loesung" gehofft.
Na ja, es sit auch nicht soooo dringend. Mal sehen, vielleicht komme ich spaeter darauf zurueck und fuchs mich ein.
Danke jedenfalls fuer die Hinweise.
 

abgdf

Guru
Code:
#!/usr/bin/env python
# -*- coding: utf-8 -*-

b = raw_input("\nErreichbare Höchstpunktzahl: ")

print
print "Gesamtpunkte " + b

a = [96, 85, 70, 50, 28, 0]
c = []
c.append(b)

for i in a:
    d = int(float(b)*float(i)/100.)
    c.append(d)
    c.append(d-1)

c.pop()

for i in range(0, len(c), 2):
    print "Note " + str(i/2+1) +" => " + str(c[i]) + "-" + str(c[i+1]) + " Punkte"

print

Jetzt komm' ich mir doch irgendwie dumm vor ...

Viele Grüße
 
OP
C

Catull

Hacker
abgdf schrieb:
Jetzt komm' ich mir doch irgendwie dumm vor ...
Danke!
Funktioniert ausgezeichnet.
Habe dadurch immerhin selbsttaetig gelernt, wie ich python scripte abspeicher und aufrufe. Auch traue ich mir zu, dein Skript zu modifizieren. Also, du hast durchaus Licht in die Welt gebracht und nicht nur Faulheit unterstuetzt. :lol: .
Nochmals Dank fuer die Muehe.
 
Oben