[C] Matrice 10*10
Fermé
kai
-
28 nov. 2007 à 18:38
mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 - 30 nov. 2007 à 18:59
mype Messages postés 2435 Date d'inscription jeudi 1 novembre 2007 Statut Membre Dernière intervention 16 août 2010 - 30 nov. 2007 à 18:59
A voir également:
- [C] Matrice 10*10
- Clé windows 10 gratuit - Guide
- Windows 10 gratuit - Guide
- Mon pc s'allume mais ne démarre pas windows 10 - Guide
- Windows 10 iso - Guide
- Licence windows 10 - Guide
6 réponses
Castor
Messages postés
17858
Date d'inscription
mardi 3 juillet 2001
Statut
Modérateur
Dernière intervention
7 novembre 2023
169
28 nov. 2007 à 18:48
28 nov. 2007 à 18:48
La boucle de remplissage me semble OK
Pour ca:
Ca ne peux pas marcher... tu compares une valeur aveccette valeur +1. Donc ton test est toujours VRAI.
De plus tes deux "printf" pour le min et le max sont dans la boucle donc ils vont s'afficher a chaque fois, alors que tu veux les aficher seulement à la fin.
Ton soucis est au niveau de la comparaison
il faut comparer la valeur du tableau à "min" et a "max" puis agir en conséquence
Pour ca:
if( tab[i][j] < tab[i][j] + 1 ) { min= tab[i][j]; printf(" le minimum %d", min); } else { max=tab[i][j]; printf("le maximum %d ",max); }
Ca ne peux pas marcher... tu compares une valeur aveccette valeur +1. Donc ton test est toujours VRAI.
De plus tes deux "printf" pour le min et le max sont dans la boucle donc ils vont s'afficher a chaque fois, alors que tu veux les aficher seulement à la fin.
Ton soucis est au niveau de la comparaison
il faut comparer la valeur du tableau à "min" et a "max" puis agir en conséquence
bonjour
j'ai le même problème mis je bloque au niveau des comparaison avec le min et max!
peut-on m'aider? merci
j'ai le même problème mis je bloque au niveau des comparaison avec le min et max!
peut-on m'aider? merci
kij_82
Messages postés
4088
Date d'inscription
jeudi 7 avril 2005
Statut
Contributeur
Dernière intervention
30 septembre 2013
857
30 nov. 2007 à 17:12
30 nov. 2007 à 17:12
L'affichage et le calcul du min et max peuvent se faire dans la même boucle (gain de temps) comme suit :
Ensuite il ne te reste plus qu'à demander la valeur à l'utilisateur puis compter dans ton tableau (en faisant un parcours) le nombre d'occurence de ce nombre.
int tab[10][10]; int i,j,nbr,min,max,nbre = 0; srand(time(NULL)); for(i=0;i<10;i++) { for(j=0;j<10;j++) { nbr=rand()%100+1; tab[i][j]= nbr; // --- Calcul min & max if ( nbr < min ) min = nbr if ( nbr > max ) max = nbr printf( "%d\t", tab[i][j] ); } printf("\n"); // --- Saut de ligne pour formater sous forme de tableau, c'est toujours mieux }
Ensuite il ne te reste plus qu'à demander la valeur à l'utilisateur puis compter dans ton tableau (en faisant un parcours) le nombre d'occurence de ce nombre.
bonjour
j'ai essayé d'executer ce programme chez moi mais il n'affiche pas ni le max et ni le min, comment fait-on?
merci
j'ai essayé d'executer ce programme chez moi mais il n'affiche pas ni le max et ni le min, comment fait-on?
merci
mype
Messages postés
2435
Date d'inscription
jeudi 1 novembre 2007
Statut
Membre
Dernière intervention
16 août 2010
436
30 nov. 2007 à 18:01
30 nov. 2007 à 18:01
il faut rajouter des printf pour le min et le max
printf("minimum : %d\n",min); printf("maximum : %d\n",max);
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
voici le programme mais il ne marche toujours peut-on me corriger?
et comment fais-ton pour demander un nombre à l'utilisateur et l'afficher autant de fois qu'il se trouve dans le tableau.
merci
#include <stdio.h>
#include<stdlib.h>
#include <time.h>
void main (void)
{
int tab[10][10];
int i,j,nbr,min,max,nbre = 0;
srand(time(NULL));
for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
{
nbr=rand()%100+1;
tab[i][j]= nbr;
// --- Calcul min & max
if ( nbr < min )
min = nbr;
if ( nbr > max )
max = nbr;
printf( "%d\t", tab[i][j] );
}
printf("maximum : %d\n",max);
printf("minimum : %d\n",min);
printf("\n"); // --- Saut de ligne pour formater sous forme de tableau, c'est toujours mieux
}
/* demande d'un nombre et affichage plusieurs fois */
printf("entrez un nombre");
scanf("%d",&nbre);
}
et comment fais-ton pour demander un nombre à l'utilisateur et l'afficher autant de fois qu'il se trouve dans le tableau.
merci
#include <stdio.h>
#include<stdlib.h>
#include <time.h>
void main (void)
{
int tab[10][10];
int i,j,nbr,min,max,nbre = 0;
srand(time(NULL));
for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
{
nbr=rand()%100+1;
tab[i][j]= nbr;
// --- Calcul min & max
if ( nbr < min )
min = nbr;
if ( nbr > max )
max = nbr;
printf( "%d\t", tab[i][j] );
}
printf("maximum : %d\n",max);
printf("minimum : %d\n",min);
printf("\n"); // --- Saut de ligne pour formater sous forme de tableau, c'est toujours mieux
}
/* demande d'un nombre et affichage plusieurs fois */
printf("entrez un nombre");
scanf("%d",&nbre);
}
mype
Messages postés
2435
Date d'inscription
jeudi 1 novembre 2007
Statut
Membre
Dernière intervention
16 août 2010
436
30 nov. 2007 à 18:59
30 nov. 2007 à 18:59
essaye ça :
#include <stdio.h> #include<stdlib.h> #include <time.h> void main (void) { int tab[10][10]; int i,j,nbr,min,max,nbre; srand(time(NULL)); for(i=0;i<10;i++) { for(j=0;j<10;j++) { nbr=rand()%100+1; tab[i][j]= nbr; printf( "%d\t", tab[i][j] ); } printf("\n"); } min=max=tab[0][0]; /* recherche du minimu et maximum*/ for(i=0;i<10;i++) { for(j=0;j<10;j++) { if( min > tab[i][j] ) { min= tab[i][j]; } if( max < tab[i][j] ) { max=tab[i][j]; } } } printf("minimum : %d\n",min); printf("maximum : %d\n",max); }