[Etudes Supérieures] calcul d'une moyenne sous scilab

100101110001

[Etudes Supérieures] calcul d'une moyenne sous scilab

Messagepar abaillym le 31/03/2012 à 23:27

Bonjour,
j'aimerais pouvoir calculer deux moyennes au sein d'un vecteur. C'est à dire la moyenne des 2i et 2i+1 éléments du vecteur.
Ex : mon vecteur est : [2 3 4 6 6 9] et je voudrais obtenir le vecteur suivant :[4 6]

Voici la fonction que j'ai mis en place et qui ne marche pas : scilab m'affiche
-->moyenne(nbredep)
!--error 21
Index invalide.

at line 7 of function moyenne called by :
moyenne(nbredep)


Ma fonction est la suivante :
function moy=moyenne(nbredep)
n=size(nbredep,2)/2
M1=0
M2=0
for i=1:n
M1=M1+nbredep(1,2*i)
M2=M2+nbredep(1,(2*i+1))
end
m1=M1/n
m2=M2/n
moy=[m1,m2]
endfunction

Y a t il une erreur dans mon raisonnement ou alors dans ma mise en page ?

Merci d'avance ,
abaillym
actif
 
Messages: 25
Inscrit le: 30/10/2008 à 12:13
profil: Elève

Re: [Etudes Supérieures] calcul d'une moyenne sous scilab

Messagepar Anne345 le 01/04/2012 à 10:03

M1=M1+nbredep(1,2*i)

Pourquoi 2 paramètres à nbredep ?
Avatar de l’utilisateur
Anne345
hyper actif
 
Messages: 13941
Inscrit le: 23/09/2008 à 23:26
profil: Cyberpapy

Re: [Etudes Supérieures] calcul d'une moyenne sous scilab

Messagepar julesx le 01/04/2012 à 10:57

Ce sont tes indices qui sont faux:
M1=M1+nbredep(1,2*i) va de 2 à 6
M2=M2+nbredep(1,(2*i+1)) va de 3 à 7 (donc dépassement)
Il faut écrire
M1=M1+nbredep(1,2*i-1)
M2=M2+nbredep(1,2*i)

@ Anne345: A ma connaissance, Scilab travaille uniquement sur des matrices, donc un vecteur doit s'écrire avec deux coordonnées, l'une des deux étant 1 suivant que c'est un vecteur ligne ou un vecteur colonne. abaillym confirmera ou infirmera.
 
Avatar de l’utilisateur
julesx
hyper actif
 
Messages: 13685
Inscrit le: 08/01/2009 à 12:36
Localisation: Près de Strasbourg
profil: Cyberpapy


Retourner vers Informatique



Qui est en ligne ?

Utilisateurs parcourant actuellement ce forum : Aucun utilisateur inscrit et 2 invités

cron