Partie arrondi de matrice sous matlab

ammouna -  
Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,comment je peut calculer la partie arrondi des elements d'une matrice sous matlab avec une boucle simple qui nous donne une nouvelle matrice contenant les parties arrondis des elements de la premiere matrice.
exemple sur les nombres
la partie arrondi (5.8)=6
la partie arrondi (5.5)=5
la partie arrondi (5.2)=5
Configuration: Windows XP
Internet Explorer 7.0

9 réponses

  1. ammouna
     
    c'est exactement "round", mais je veut la programmer avec une boucle
    0
  2. ammouna
     
    j'utilise "round" dans mon prgramme matlab que je doit le convertir en une autre language pour faire l'implémentation, pour cela je doit remplacer round et plusieurs autres fonctions matlab en des boucles de calcul.
    0
  3. ammouna
     
    il ne faut pas utiliser round dans la boucle, peut etre des equations ou autrs choses
    0
  4. ammouna
     
    c'est ok pour un nombre mais non pour une matrice
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 331
     
    essai round()
    -1
  7. Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 331
     
    matrice A et B :
    B=round(A);
    pourquoi faire une boucle ?
    -1
  8. Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 331
     
    bas c'est super simple !!
    for i=1:size(A,1)
    for j=1:size(A,2)
    B(i,j)=round(A(i,j));
    end
    end
    -1
  9. Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 331
     
    Tu n'as plus qu'a recoder la fonction round alors, parceque je ne vois pas d'autre solution.
    L'algo consiste à chercher l'entier ayant une différence inférieur à 0,5 avec le nombre à arrondir.
    fonction arrondi (a)
    entier tmp=1;
    tant que abs(a-tmp)>0.5
    tmp=tmp+1
    retourne tmp
    -1
  10. Char Snipeur Messages postés 10112 Date d'inscription   Statut Contributeur Dernière intervention   1 331
     
    Mais bordel, il suffit de faire le traitement pour chaque nombre de la matrice !!
    Je m'énerve, mais tu y met de la mauvaise volonté ! Je te donne toute les solutions, tu n'as plus qu'a les remettre ensemble : tu fais une boucle (les deux for) sur les cases de la matrice, et dedans tu fait une boucle pour trouver le nombre entier. En quel langage veux tu transformer ton script ? car la plupart supportent la fonction round.
    -1