Répondre à la discussion
Affichage des résultats 1 à 4 sur 4

Question-Mathematica



  1. #1
    Glork

    Question-Mathematica


    ------

    Bonjour,
    j'aimerais une fonction qui à une liste supprime son premier élément en la modifiant:
    ex
    si L={1,2,3}
    supprime [L] renvoie {2,3}
    et à présent L={2,3}.
    J'ai tenté:
    supprime[L]=(L=Delete[L,1]) ça semble marcher, mais pour l'ex si dessus, ça me renvoie:
    L et {2,3} are not the same shape...
    Merci!

    -----

  2. #2
    Guigs.

    Re : Question-Mathematica

    Bonjour,

    J'ai effectué ta manoeuvre et je n'ai pas de messages d'erreur...
    Mais bon si j'ai bien compris, tu dois par exemple appuyer 3 fois sur entrée pour obtenir avec ton exemple L le résultat {}.

    Je te propose de faire une boucle Do :

    Tu tapes :

    n=("Tu entres ici le nombre d'éléments que tu souhaites supprimer");Do[L=Delete[L,1],{n}];L

    Par exemple avec cet exemple : L={1,2,3,4,...,98,99,100}, tu entres dans mon programme n=99; et tu auras :{100} qui s'affichera; et tout cela en appuyant 1 fois sur entrée au lieu de 99 fois

  3. #3
    Glork

    Re : Question-Mathematica

    bizarre... l'erreur est supprimée si je ne fais pas de fonction; j'ai réessayé simplement Delete... et pas de "same shape". Merci pour l'astuce.
    Sinon j'avais une autre question:
    j'ai une partie d'un programme où je dois rajouter 1 à un élément d'une liste en la modifiant:
    si L={...,x,...} où x est à la k-ième position je fais
    L[[k]]=L[[k]]+1
    je renvoie L mais j'obtiens:
    {...,L[[k]]+1,...} au lieu de {...,x+1,...}
    Merci.

  4. #4
    Guigs.

    Re : Question-Mathematica

    Ok.
    Donc tu veux ajouter 1 à un k-ième élément de la liste.
    Pour cela, on fait encore une boucle Do :
    k=5;n=1;Do[L[[k]]=L[[k]]+1,{n}];L

    Voilà : par exemple : L={5, 89, 15, 2, 568, 25}
    Alors avec le programme ci-dessus, tu obtiendras en sortie : {5, 89, 15, 2, 569, 25}
    Si tu modifies la valeur de n, cela modifiera le nombre que tu souhaites ajouter.
    Par exemple, si tu mets n=5; alors tu auras : 569 +1+1+1+1+1=574; soit :
    {5, 89, 15, 2, 574, 25}.

  5. A voir en vidéo sur Futura

Discussions similaires

  1. aide mathematica
    Par amandinehei dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 31/10/2010, 07h17
  2. Mathematica
    Par maradona dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 26/02/2008, 14h33
  3. mathematica
    Par chafcha dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 18/09/2006, 12h30
  4. mathematica
    Par gozog dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 14/02/2005, 11h03
  5. Aide mathematica
    Par Evil.Saien dans le forum Mathématiques du supérieur
    Réponses: 4
    Dernier message: 19/01/2005, 17h06