www.vorkurse.de
Ein Projekt von vorhilfe.de
Die Online-Kurse der Vorhilfe

E-Learning leicht gemacht.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Teams · Forum · Wissen · Kurse · Impressum
Forenbaum
^ Forenbaum
Status Mathe-Vorkurse
  Status Organisatorisches
  Status Schule
    Status Wiederholung Algebra
    Status Einführung Analysis
    Status Einführung Analytisc
    Status VK 21: Mathematik 6.
    Status VK 37: Kurvendiskussionen
    Status VK Abivorbereitungen
  Status Universität
    Status Lerngruppe LinAlg
    Status VK 13 Analysis I FH
    Status Algebra 2006
    Status VK 22: Algebra 2007
    Status GruMiHH 06
    Status VK 58: Algebra 1
    Status VK 59: Lineare Algebra
    Status VK 60: Analysis
    Status Wahrscheinlichkeitst

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Mathematica" - Veränderung von Listen etc
Veränderung von Listen etc < Mathematica < Mathe-Software < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Mathematica"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Veränderung von Listen etc: Tipp
Status: (Frage) beantwortet Status 
Datum: 12:48 Mo 27.06.2011
Autor: Paulo26

Aufgabe
ich habe zum Beispiel (2,3,4,5,6). Hierbei handelt es sich um eine Liste.

Ich möchte nun verschiedene Variationen angezeigt bekommen.

2,3,4,5,5 also letztes -1
2,3,4,4,7 also vorletztes -1, letztes +1
2,3,3,6,6 also drittletztes -1, vorletztes +1
2,2,5,5,6 also viertletztes -1, drittletztes +1
1,4,4,5,6 also fünftletztes -1, viertletztes +1 usw.

Dies soll für alle möglich Eingaben Zahlen gelten.

Hallo,
ich benötige mal Eure Hilfe.

Bei der obenen genannten Aufgabe komme ich nicht weiter.

Bis jetzt habe ich mir die Zeile jeweils als Matrix angeben lassen und die benötigten Zahlen verändert. Dies ist aber auf Dauer ziemlich umständlich und aufwendig. Könnt Ihr mir sagen obs irgendwie schneller geht bzw automatisch?

Ich habe diese Frage in keinem Forum auf anderen Internetseiten gestellt.



        
Bezug
Veränderung von Listen etc: Antwort
Status: (Antwort) fertig Status 
Datum: 17:10 Mo 27.06.2011
Autor: Al-Chwarizmi


> ich habe zum Beispiel (2,3,4,5,6). Hierbei handelt es sich
> um eine Liste.
>  
> Ich möchte nun verschiedene Variationen angezeigt
> bekommen.
>  
> 2,3,4,5,5 also letztes -1
>  2,3,4,4,7 also vorletztes -1, letztes +1
>  2,3,3,6,6 also drittletztes -1, vorletztes +1
>  2,2,5,5,6 also viertletztes -1, drittletztes +1
>  1,4,4,5,6 also fünftletztes -1, viertletztes +1 usw.
>  

Hallo Paulo26,

um das Element an der k-ten Stelle um 1 zu vermindern
und das an der (k+1)-ten Stelle um 1 zu erhöhen, habe ich
diesen Befehl entworfen:

change[liste_, k_] := ReplacePart[ReplacePart[liste, liste[ [k] ] - 1,
     k], liste[ [k + 1] ] + 1, k + 1]

Ich definiere die Liste:

liste := {2, 3, 4, 5, 6}

und rufe dann den Befehl z.B. für k=3 auf:

change[liste, 3]

Ergebnis:       {2, 3, 3, 6, 6}

Schönheitsfehler:  für k=5 (letztes Element) gibt es noch
eine Fehlermeldung, weil das 6-te Element von liste gar
nicht existiert. Das müsste man noch mit einem If-Befehl
abfangen ...

LG   Al-Chw.



Bezug
                
Bezug
Veränderung von Listen etc: Rückfrage
Status: (Frage) beantwortet Status 
Datum: 10:43 Di 05.07.2011
Autor: Paulo26

Hallo!
vielen Dank! Es hat geklappt.
Ich will aber jetzt den nten Faktor um 2 erniedrigen und den 2*n-ten Faktor um 1 erhöhen.

Also: 1 2 3 4 5 6 7 --> 1 0 3 5 5 6 7 (n=2)
oder 1 2 3 4 5 6 7 --> 1 2 1 4 5 7 7 (n=3)

Ich habe dies mit der Replacefunktion wie oben gemacht.

change[liste_, k_] := ReplacePart[ReplacePart[liste, liste[ [k] ] - 2,
     k], liste[ [k + k] ] + 1, k +k]

Als Ergebnis habe ich allerdings {}, sprich nix.

Was mache ich da falsch??

Bezug
                        
Bezug
Veränderung von Listen etc: Antwort
Status: (Antwort) fertig Status 
Datum: 12:42 Di 05.07.2011
Autor: Al-Chwarizmi


> Hallo!
>  vielen Dank! Es hat geklappt.
>  Ich will aber jetzt den nten Faktor um 2 erniedrigen und
> den 2*n-ten Faktor um 1 erhöhen.
>  
> Also: 1 2 3 4 5 6 7 --> 1 0 3 5 5 6 7 (n=2)
>   oder 1 2 3 4 5 6 7 --> 1 2 1 4 5 7 7 (n=3)

>  
> Ich habe dies mit der Replacefunktion wie oben gemacht.
>  
> change[liste_, k_] := ReplacePart[ReplacePart[liste, liste[
> [k] ] - 2,
> k], liste[ [k + k] ] + 1, k +k]
>  
> Als Ergebnis habe ich allerdings {}, sprich nix.
>  
> Was mache ich da falsch??  

Das weiß ich nicht.
Bei mir kommt auf diesen Input:

    change[liste_, k_] := ReplacePart[ReplacePart[liste, liste[[k]] - 2,k], liste[[k + k]] + 1, k + k] 

    liste := {1, 2, 3, 4, 5, 6, 7}

    change[liste, 3]

der Output:

    {1, 2, 1, 4, 5, 7, 7}

wie gewünscht !

LG    Al-Chw.




Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Mathematica"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.vorkurse.de
[ Startseite | Mitglieder | Teams | Forum | Wissen | Kurse | Impressum ]