Formel programmieren

mit matplotlib, NumPy, pandas, SciPy, SymPy und weiteren mathematischen Programmbibliotheken.
Antworten
KatharinaK
User
Beiträge: 1
Registriert: Mittwoch 6. Mai 2020, 15:55

Hallo, bitte könnt ihr mir helfen folgende Formel zu programmieren?

u1 = 2 # Achtung 1 ist hier der Index von u, also tiefgestellt
un = un-1/(n-1) # Achtung bei u ist n der Index, also tiefgestellt
für n = 2, 3, 4, …, 30
die un sollen in eine Liste geschrieben werden # Achtung bei u ist n der Index, also tiefgestellt

Vielen Dank für eure Hilfe!
NPC
User
Beiträge: 54
Registriert: Dienstag 8. Januar 2019, 17:51

Hallo KatharinaK,

zuerst musst du einmal versuchen herraus zu filter, was du wann wie tun musst.
Ich finde gut sieht man das immer dann, wenn man das einmal selbst durchspielt:

Ein Beispiel:
Größte Zahl der Liste [1, 11, 3, 7, 9, 10, -3, 2]
Was tue ich um die größte Zahl zu ermitteln?
Ich merke mir das erste Element und vergleiche es mit dem zweiten. Das größere von den beiden merke ich mir als nächstes.
Anschließend gehe ich zum nächsten Element und vergleiche dies wieder mit meinem gemerkten.
...

Daraus lässt sich dann der algorithmus entwickeln:

Code: Alles auswählen

def find_max(liste):
   temp = liste[0] # erste element merken
   for element in liste[1:]: # alle bis auf das erste durchgehen
	   if element > temp: # wenn element > temp
		   temp = elemet  # hier merke ich mir effektiv das Größere
   return temp
So, dieses Schema sollen wir nun auf dein Problem anwenden.
Versuche ersteinmal zu beschreiben was du wie tust.
Wenn dus hast, gib bescheid :)
(Ich hoffe du meintest das so mit helfen)
Zuletzt geändert von NPC am Mittwoch 6. Mai 2020, 16:53, insgesamt 1-mal geändert.
Benutzeravatar
kbr
User
Beiträge: 1487
Registriert: Mittwoch 15. Oktober 2008, 09:27

Das ist eigentlich eine schöne Aufgabe, da man hier eine Funktionserstellung mit Rekursion, Schleifen und Listen kombinieren kann, um hinterher zu überlegen, welche Optimierungsmöglichkeiten bestehen könnten.

Das sieht auch schwer nach einer Hausaufgabe aus. Was habt ihr denn schon gehabt, welchen Ansatz hast Du schon, und wo klemmt es genau?
Sirius3
User
Beiträge: 17748
Registriert: Sonntag 21. Oktober 2012, 17:20

Und was hast Du Dir schon für Gedanken gemacht? Beim Programmieren schreibt man keine tiefgestellten Indizes, wie in der Mathematik, sondern benutzt einfach `u` und schreibt sich die Ergebnisse in eine Liste.
Benutzeravatar
__blackjack__
User
Beiträge: 13100
Registriert: Samstag 2. Juni 2018, 10:21
Wohnort: 127.0.0.1
Kontaktdaten:

@KatharinaK: Deine Beschreibung ist irreführend, denn wenn nur `n` der Index ist, wäre das ja:

u₁ = 2
uₙ = uₙ-1/(n-1)
für n = 2, 3, 4, …, 30

Aber ich vermute mal ganz stark es ist das hier gemeint:

u₁ = 2
uₙ = uₙ₋₁/(n-1)
für n = 2, 3, 4, …, 30
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman
Antworten