Ici c'est le forum C++, et là tu fais du C. C'est le forum d'a coté.
Pour quand même apporter une réponse:
1) Tu as créé une fonction que tu n'apelles pas.
2) A quoi sert stdafx.h ?
3) Comment calcules tu la mayenne à la main ? Une fois que tu as déterminé cela, traduis "mot pour mot" en C.
oki pour calculer la moyenne de tous les nombre mais pour calculer la moyenne des nombre 1 à 1?
(Tu a oublié le ; a la fin c'est fait exprés ou pas? )
Et merci de vos réponse au fait
edit: Ton code il marche pas il me met qu'il y a une erreur :
1>------ Début de la génération : Projet : Exercice, Configuration : Debug Win32 ------
1>Compilation en cours...
1>Exercice.cpp
1>f:\programmation\exercice et test\exercice\exercice\exercice.cpp(16) : error C2065: 'moyenneDuTableau' : identificateur non déclaré
1>f:\programmation\exercice et test\exercice\exercice\exercice.cpp(17) : error C2065: 'moyenneDuTableau' : identificateur non déclaré
1>f:\programmation\exercice et test\exercice\exercice\exercice.cpp(23) : error C2065: 'moyenne' : identificateur non déclaré
1>f:\programmation\exercice et test\exercice\exercice\exercice.cpp(26) : error C2065: 'moyenne' : identificateur non déclaré
1>f:\programmation\exercice et test\exercice\exercice\exercice.cpp(28) : error C2065: 'moyenne' : identificateur non déclaré
1>Le journal de génération a été enregistré à l'emplacement "file://f:\Programmation\Exercice et test\Exercice\Exercice\Debug\BuildLog.htm"
1>Exercice - 5 erreur(s), 0 avertissement(s)
========== Génération : 0 a réussi, 1 a échoué, 0 mis à jour, 0 a été ignoré ==========
int main(int argc, char *argv[])
{
long tableau[4] = {1, 2, 3, 5 }; //déclare et remplie un tableau
moyenneTableau = tableau / 2; // divise l'adresse du pointeur tableau par 2 et plante car moyenne tableau n'est pas déclaré.
}
double moyenneTableau(long tableau[4], long tailleTableau)
//inutile de passer taille tableau, ta fonction ne parche que pour les tableaux de taille 4
{
long tableau [4], tailleTableau = 0; // redefinie (et donc efface) les variables passées a la fonction
for (tailleTableau = 0 ; tailleTableau < 4 ; tailleTableau++) // OK! Comme tu n'as que des tableaux de taille 4 : remplace taille tableau par 4
{
printf("la moyenne de la valeur des chiffre du tableau sont "%lf" ", moyenneTableau); // ??? t'as rien calculé
}
}
Voila un exemple de code un peu mieux (je l'ai pas testé)
//je déclare mes fonctions AVANT le main pour pouvoir les appeler
long Fmoyenne(long tableau[4]){
int i;
long somme = 0;
for(i=0;i<4;i++){ somme = somme + tableau[i];}
return somme/4;
}
int main(int argc, char *argv[])
{
long tableau[4] = {1, 2, 3, 5 }; //déclare et remplie un tableau
long moyenneTableau = Fmoyenne(tableau); // pour appeler une fonction F : F() et non F
printf("la moyenne de la valeur des chiffre du tableau est "%lf" ", moyenneTableau);
return 0; // parce que quand ca marche main return 0
}
Tu massacres ton pc la... Serieux, la programmation n'a aucun lien historique avec la magie... on ecrit pas des formules magiques en esperant que ca fonctionnera...
Le C, c'est un langage assez Strict, j'ai pas lu le cours de mateo, je ne sais pas comment il introduit tout ca, mais faut pas te dire "si je fais ca, avec un peu de chance, l'ordi fera ca", faut commander directement ta memoire !
quand on voit ton code et tes interrogations ensuite, on s'appercoit que t'as parcourru rapidement le tuto de mateo et que t'as rien lu d'autre sur le sujet, on s'appercoit que tu ne maitrises pas la notion de variable, fonction et pointeur, alors pour la notion de tableau, on en parle meme pas... quand a ton for, c'est une grosse blague...
Bin il faut bien commencer quelque part non si je me trompe! Et c'est en cherchant et en se renseignant que l'on progresse donc pour l'instant je progresse!
progresser c'est pas apprendre a taper un hello world... lis des cours, et met toi a la place de ta machine... comprendre qu'on ne peut pas diviser une fonction par deux en C, c'est juste une question de bon sens...
Aprés avoir relu le cours et les explication de Darth Sidious j'ai compris pal mal de truc mais j'ai quelque nouvelles questions sur le sujet
Si on ve que le programme lise le tableau et le garde en mémoire (pour une fonction)il sufit de mettre ca
for (i = 0 ; i < tailleTableau ; i ++)
{
}
Et aprés je sais pas trop dans quel ordre je doit mettre le if (j'ai mit des commentaire pour préciser ce que je veut dire)
// Exercice 4 :
//créer une fonction maximumTableau qui aura pour rôle de
//remettre à 0 toutes les cases du tableau ayant une valeur supérieure à un maximum.
//Cette fonction prendra en paramètre le tableau ainsi que le nombre maximum autorisé (valeurMax).
//Toutes les cases qui contiennent un nombre supérieur à valeurMax doivent être mises à 0.
#include <stdio.h>
#include <stdlib.h>
void maximumTableau(long tableau[], long tailleTableau, long valeurMax);
void affiche(long *tableau, long tailleTableau);
int main(int argc, char *argv[])
{
long tableau [4] = { 3, 5, 12, 4,};
maximunTableau ( tableau, 4, 4); // fonction pour changer les valeur du tableau
affiche (tableau, 4); // fonction pour afficher les valeurs du tableau
system("PAUSE");
return 0;
}
void maximumTableau(long tableau[], long tailleTableau, long valeurMax)
{
long i, valeurMax = 4;
for (i = 0 ; i < tailleTableau ; i ++)
{
}
if (valeurMax >= 4) // La fonction if doit être dans for ou pas ?
{
tableau[i] = 0;
}
}
void affiche(long *tableau, long tailleTableau)
{
long i;
for (i = 0 ; i < tailleTableau ; i++)
{
printf("%ld\n", tableau[i]);
}
}
Bon j'espère qu'il n'y a pas trop d'érreurs et merci à ceux qui pourons m'aider
Bon toi il faut que tu arrete de me les brisé ! ata je demande de l'aide car je bloque malgré mes recherches . Je sui désolé de pas avoir un niveau de taré en programmation comme certain qui soule (comme toi) alors si tu ve pas m'aider arrete de posté et va voir d'autres gens a emmerder !
je general, je reponds juste "ok" et je pars. Sur irc, on m'a fait une mauvaise blague, j'y ai lu que t'etais un type plutot doue qui posait des questions debiles pour faire chier les gens, ce qui explique mon agressivite... pardonne moi.
Quand j'ai commence la programmation, (ca fait en gros 10 ans), j'avais pas internet, pas de livres, pas de tutos, j'avais comme unique aide, la touche F1 qui m'ammenait tout droit a l'aide de Qbasic, en anglais...
Jusqu'a mes 4 ans de programmation, je me debrouillais comme ca. Ensuite, j'ai obtennu de l'aide en francais, beaucoup plus d'aide, j'etais passe de Qbasic 1.1 a Qb 4.5... Ensuite, javascript et html (toujours sans internet) avec un cours que mon pere m'avait trouve.
Tout ca sans avoir de profs...
Bref, tout ca pour dire que je me suis casse le cul pour en arriver la ou je suis, c'est pas vennu tout seul, et pourtant, j'ai jamais fait d'erreurs comme celles que tu fais la...
Bref, ici, t'as apparement des explications claires sur ce que fait une boucle... ce qu'est une variable, ou une fonction, ou un tableau...
Je n'accorde pas beaucoup d'interret aux tutos du site du zero, je les trouve souvent plein d'erreurs et incoherents, mais ca ne change pas le fait que tu devrais les comprendre...
int i;
for (i=0;i<42;i++){
printf("i=%d\n", i);
}
tu vois ici, t'as une variable, i, et une boucle, a l'interieur de la boucle (donc entre les {} ), tu as des instructions qui s'executent, dont un appelle de la fonction printf.
si t'as depasse la classe de troisieme, tu ne devrais pas avoir trop de problemes pour la notion de fonction.
long maximumTableau(long tableau[], long tailleTableau){
long i, max = tableau[0];
for (i = 1 ; i < tailleTableau ; i ++)
if (max < tableau[i] ) max=tableau[i];
return max;
}
ta fonction ressemble a ca normalement. (elle renvoie la valeur maximum d'un tableau)
attention, elle ne fonctionne pas pour un tableau de taille 0.
euh ... ne nous énervons pas Blooo va lire les tutos de Matéo sérieusement ... prend ton temps la prog ça s'apprend pas en 10 min ... quand tu aura tout lu et fais les exos ... ben relis et refais les exos ... crée des petits programmes en console pour t'entrainer etc...
et coucou747 il existe les balises <code><code/> ... et les espaces aussi et les retours a la ligne
Merci de ton aide coucou malgrés cette petite "bagarre".
J'ai fait exactement pareil que toi en 3D, avec un bouqin...(même si je n'en fait pas depuis 10 ans) Mais comme j'ai plus l'esprit artistique que mathématique ce qui pourait te sembler super simple c'est super compliqué pour moi. (sourtout que c'est le 1er language que j'apprend)
Aide tableau !
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
* Un wrapper C++ pour sqlite * Une alternative a boost units