Projekt für die Schule

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.
inamarina
User
Beiträge: 6
Registriert: Mittwoch 30. März 2011, 09:04

Mittwoch 30. März 2011, 09:24

schon erledigt, danke an alle
Zuletzt geändert von inamarina am Mittwoch 30. März 2011, 19:13, insgesamt 1-mal geändert.
Dauerbaustelle
User
Beiträge: 996
Registriert: Mittwoch 9. Januar 2008, 13:48

Mittwoch 30. März 2011, 09:31

Hausaufgaben sind dazu da, selbst gemacht zu werden :-) Fang' doch mal was an, und wenn du irgendwo nicht weiterkommst, stelle konkrete Fragen. Niemand wird dir hier deine Schularbeiten machen.
BlackJack

Mittwoch 30. März 2011, 09:34

@inamarina: Was hast Du denn schon an Quelltext? Fang doch erst einmal an Umrechnungsfunktionen für °C in die anderen Temperatureinheiten zu schreiben.
inamarina
User
Beiträge: 6
Registriert: Mittwoch 30. März 2011, 09:04

Mittwoch 30. März 2011, 09:37

:D ich scheitere schon daran, dass ich nicht weiß, wie ich ein Eingabefeld programmieren kann, damit der Benutzer etwas eingeben kann
EyDu
User
Beiträge: 4872
Registriert: Donnerstag 20. Juli 2006, 23:06
Wohnort: Berlin

Mittwoch 30. März 2011, 09:41

Hallo.

Dann solltest du einfach mit dem Tutorial anfangen.
Das Leben ist wie ein Tennisball.
Dauerbaustelle
User
Beiträge: 996
Registriert: Mittwoch 9. Januar 2008, 13:48

Mittwoch 30. März 2011, 09:43

`raw_input` in Python 2.x und `input` in Python 3.x. Ich würde dann vielleicht erstmal mit einem Tutorial anfangen, für Python 3.x siehe http://tutorial.pocoo.org
inamarina
User
Beiträge: 6
Registriert: Mittwoch 30. März 2011, 09:04

Mittwoch 30. März 2011, 09:53

ich hab mir schon viele Tutorials angeschaut und auch gelesen, aber da stand nie wirklich das drin, was mir für das Projekt nützt. Aber dankeschön troztdem
Dauerbaustelle
User
Beiträge: 996
Registriert: Mittwoch 9. Januar 2008, 13:48

Mittwoch 30. März 2011, 09:56

Na ein gewisses Grundwissen brauchst du schon, sonst klappt das nicht :-)

Jetzt hast du ja den Ansatz mit `input` (Python 3).
BlackJack

Mittwoch 30. März 2011, 10:03

@inamarina: Du musst Tutorials nicht nur anschauen und lesen, sondern durcharbeiten. Also die Sachen die da beschrieben werden auch ausprobieren und damit ein wenig herumspielen bis Du sie verstanden hast. Und da stand *immer* etwas drin was Dir für das Projekt etwas nützt -- vorausgesetzt es waren Python-Tutorials. Du musst halt die Grundlagen von Python lernen, wenn Du damit etwas programmieren willst.
Benutzeravatar
hendrikS
User
Beiträge: 420
Registriert: Mittwoch 24. Dezember 2008, 22:44
Wohnort: Leipzig

Mittwoch 30. März 2011, 10:42

Ich würde auch empfehlen mal anzugucken, was ihr im Unterricht dazu gelernt habt. Also ich glaube zumindest nicht, dass der Lehrer eine Hausaufgabe gibt ohne die Grundlagen vemittelt zu haben. In dem Fall wie man Nutzereingaben macht.

Und dann hast Du schon überlegt was Du anzeigst, wenn jemand -1000 eingibt?
inamarina
User
Beiträge: 6
Registriert: Mittwoch 30. März 2011, 09:04

Mittwoch 30. März 2011, 18:53

mein problem ist, dass wir in der Schule nichts darüber gemacht haben und ich so zusagen bei 0 stehe. Wir müssen uns das selber beibringen und bei mir funktioniert gar nichts :(
Dauerbaustelle
User
Beiträge: 996
Registriert: Mittwoch 9. Januar 2008, 13:48

Mittwoch 30. März 2011, 19:10

Dann arbeite doch einfach mal ein Tutorial durch.
Benutzeravatar
Hyperion
Moderator
Beiträge: 7477
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Mittwoch 30. März 2011, 19:15

inamarina hat geschrieben:mein problem ist, dass wir in der Schule nichts darüber gemacht haben
Kann ich nicht glauben! Sollte ich da unrecht haben, so entschuldige bitte, aber die am meisten genutzte Ausrede von Schülern ist seit jeher "haben wir nicht besprochen"... ;-)
inamarina hat geschrieben: und ich so zusagen bei 0 stehe.
Das wiederum glaube ich Dir :mrgreen: SCNR
inamarina hat geschrieben: Wir müssen uns das selber beibringen und bei mir funktioniert gar nichts :(
Welche Schulform und Klasse ist denn das? In welchem Rahmen erfolgt denn die Aufgabe? Eigenes Erarbeiten einer Programmiersprache würde ich jetzt mal ins Informatikstudium ab dem 3. Semester einordnen ;-)
Daher muss doch im Unterricht etwas besprochen worden sein!

So, nun mal wieder konstruktiv: Poste doch mal Deine Ansätze!

Ich würde mir als erstes eine Funktion schreiben, die mir Grad Celsius in Kelvin umwandelt. Diese nimmt als Parameter einen float-Wert in °C entegegen und gibt einen float-Wert mit dem Ergebnis der Berechnung zurück. Die kannst Du z.B. "celsius_to_kelvin()" nennen.

Da Kelvin die physikalische Grundeinheit ist, kannst Du dann im Anschluss eine Funktion "kelvin_to_fahrenheit" schreiben (Theoretisch könntest Du auch von "celsius" ausgehen) . Diese funktioniert letztlich genauso, nur dass die mathematische Berechnung eine andere ist.

Diese Funktionen kannst Du noch in einer Shell entwickeln / testen. Probiere das eben mal mit einigen Zahlen ausprobieren, so wie ich hier in der ipython-Shell:

Code: Alles auswählen

In [2]: celsius_to_kelvin(0)
Out[2]: 273.14999999999998

In [3]: celsius_to_kelvin(10)
Out[3]: 283.14999999999998

In [4]: for value in range(0, 30, 5):
   ...:     print "{0} °C -> {1} °K".format(value, celsius_to_kelvin(value))
   ...:     
   ...:     
0 °C -> 273.15 °K
5 °C -> 278.15 °K
10 °C -> 283.15 °K
15 °C -> 288.15 °K
20 °C -> 293.15 °K
25 °C -> 298.15 °K
(Gemein wie ich bin, fehlt die Funktionsdefinition ;-) )
In [4] siehst Du, wie ich mittels einer Schleife verschiedene Werte ausrechne. Die range()-Funktion generiert mir die Werte. Wie Du siehst, gibt man Start- und Endwert sowie die Schrittweite an. Genau das suchst Du doch auch!

Letztlich fehlt jetzt noch die Abfrage der Start- und Endwerte, sowie die spezielle Formulierung der Umrechnungsfunktionen. Aber raw_input() bzw. input() wurden Dir ja schon genannt.

Also, auf geht's :-)

Edit: Wir hatten dazu übrigens schon mal was hier im Forum - allerdings wird Dir das nicht so viel nutzen, da dort einige eher fortgeschrittene Konzepte zum Tragen kommen.

@all: Der Thread läd fast dazu ein, das ganze mal wieder in anderen Sprachen umzusetzen, gel ;-)
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
Darii
User
Beiträge: 1177
Registriert: Donnerstag 29. November 2007, 17:02

Mittwoch 30. März 2011, 19:27

Hyperion hat geschrieben:

Code: Alles auswählen

In [4]: for value in range(0, 30, 5):
   ...:     print "{0} °C -> {1} °K".format(value, celsius_to_kelvin(value))
   ...:     
   ...:     
0 °C -> 273.15 °K
5 °C -> 278.15 °K
10 °C -> 283.15 °K
15 °C -> 288.15 °K
20 °C -> 293.15 °K
25 °C -> 298.15 °K
Es gibt kein Grad Kelvin. *duck* ;)
Benutzeravatar
Hyperion
Moderator
Beiträge: 7477
Registriert: Freitag 4. August 2006, 14:56
Wohnort: Hamburg
Kontaktdaten:

Mittwoch 30. März 2011, 19:31

Darii hat geschrieben:Es gibt kein Grad Kelvin. *duck* ;)
Laut wikipedia hast Du recht:
wikipedia hat geschrieben: Bis 1967 lautete der Einheitenname Grad Kelvin, das Einheitenzeichen war °K.
Ok, hab ich falsch im Kopf gehabt ;-)

Damit wäre das Hauptproblem des Threads gelöst :mrgreen:
encoding_kapiert = all(verstehen(lesen(info)) for info in (Leonidas Folien, Blog, Folien & Text inkl. Python3, utf-8 everywhere))
assert encoding_kapiert
Antworten