Seite 1 von 1

Bandmatrix variabel definieren

Verfasst: Samstag 16. Mai 2009, 20:06
von Sternchen84
Hallo zusammen,

mir fällt es sehr schwer zu programmieren und irgendwie verstehe ich die Schleifen noch nicht so ganz.
Ich mächte eine Matrix programmieren die mir auf der Diagonalen 2en auswirft, auf den beiden Nebendiagonalen jeweils -1, ansonsten überall 0en (eine Bandmatrix).
Dabei muss die Größe der Matrix frei wählbar bleiben, damit man unterschiedliche Größen wählen kann.
Ich habe mir das so gedacht: (angenommen n=5)

Code: Alles auswählen

from numpy import *
n = 5
A = zeros((n,n), dtype=int)
for i = 1 to n
    for j = 1 to n
        a(i,j) = 0
            while j = i:
                 a(i,j) = 2
            while j = i - 1:
                 a(i,j) = -1
            while j = i + 1:
                 a(i,j) = -1
                 end
             end
         end
     end
     
print A
und bekomme den Fehler:
in Zeile 4:
for i = 1 to n
^
SyntaxError: invalid syntax
Ich arbeite mit easyeclipse ( von der Uni empfohlen)

Wahrscheinlich sieht das Ganze für jemanden der Programmieren kann, sehr schaurig aus, abe rich muss es halt versuchen. :-)

Vielen Dank schonmal.

Grüße
Hedda

Verfasst: Samstag 16. Mai 2009, 20:14
von BlackJack
@Sternchen84: Vielleicht solltest Du mal das Tutorial aus der Python-Dokumentation durcharbeiten und dann auch *Python-Syntax* verwenden und nicht etwas das Python entfernt ähnlich sieht!

Verfasst: Samstag 16. Mai 2009, 20:49
von Sternchen84
Das heißt ich sollte nicht mit easy eclipse arbeiten oder ist es nicht ok weil ich den Fehler nicht im Pythoncode angegeben habe?
Ich habe

Code: Alles auswählen

 for i = 1 to n
verwendet weil ich dachte, damit durchläuft er die Zeilen und mit j die Spalten.
Unsere Dozentin hat das in einem Pseudocode in der VL verwendet.
Ich habe wirklich nicht viel Ahnung vom Programmieren und brauche es jetzt aber für einen kleinen Teil der VL Numerik.
Ich habe das Tutorial schon mal grob angesehen aber aber gedacht ich kann das wohl verwenden, das es in der VL verwendet wurde.

Verfasst: Samstag 16. Mai 2009, 20:56
von derdon
Da steht wie man for-Schleifen in Python benutzt: http://docs.python.org/tutorial/control ... statements

Verfasst: Samstag 16. Mai 2009, 22:08
von Leonidas
Sternchen84 hat geschrieben:Unsere Dozentin hat das in einem Pseudocode in der VL verwendet.
Schon mal überlegt warum Pseudocode so heißt und warum Python Python und nicht Pseudocode heißt?

Verfasst: Samstag 16. Mai 2009, 22:52
von HerrHagen
Ein Programm in Pseudocode ist geeignet um von Menschen gelesen zu werden, aber nicht geeignet um von einem Computer ausgeführt zu werden. Pseudocode ist also insbesondere keine Programmiersprache.
http://de.wikipedia.org/wiki/Pseudocode