C
Résolu
Bonjour,voici mon code,mais le resultat de l'execution est null !! i need help
merci d'avant!
#include<conio.h>
#include<stdio.h>
#define nmax 100
void main()
{
int tab1[nmax],tab2[nmax],tmax[nmax],tmin[nmax],i,max,min,n;
clrscr();
do{
printf("Donnez le nombre d'‚l‚ments :");
scanf("%d",&n);
}while(n<0 || n>nmax);
/*remplisssage du tab 1*/
printf("Tableau nø1 :\n");
for(i=0; i<n; i++)
{
printf("Tab[%d] :",i);
scanf("%d",&tab1[i]);
}
/*remplissage du tab 2*/
printf("Tableau nø2 :\n");
for(i=0; i<n; i++)
{
printf("Tab[%d] :",i);
scanf("%d",&tab2[i]);
}
/*determination du max et de min*/
for(i=min=max=0; i<n; i++)
{
if(tab1[i]>tab2[i])
{
tmax[max] = tab1[i];
max++;
tmin[min] = tab2[i];
min++;
}
else
{
tmax[max] = tab2[i];
max++;
tmin[min] = tab1[i];
min++;
}
}
/*affichage des resultas*/
printf("\t\t MAX TAB :\n\n");
for(i=0; i<n; i++)
{
printf("%d\n",tmax[max]);
}
printf("\t\t MIN TAB :\n\n");
for(i=0; i<n; i++)
{
printf("%d\n",tmin[min]);
}
getch();
}
merci d'avant!
#include<conio.h>
#include<stdio.h>
#define nmax 100
void main()
{
int tab1[nmax],tab2[nmax],tmax[nmax],tmin[nmax],i,max,min,n;
clrscr();
do{
printf("Donnez le nombre d'‚l‚ments :");
scanf("%d",&n);
}while(n<0 || n>nmax);
/*remplisssage du tab 1*/
printf("Tableau nø1 :\n");
for(i=0; i<n; i++)
{
printf("Tab[%d] :",i);
scanf("%d",&tab1[i]);
}
/*remplissage du tab 2*/
printf("Tableau nø2 :\n");
for(i=0; i<n; i++)
{
printf("Tab[%d] :",i);
scanf("%d",&tab2[i]);
}
/*determination du max et de min*/
for(i=min=max=0; i<n; i++)
{
if(tab1[i]>tab2[i])
{
tmax[max] = tab1[i];
max++;
tmin[min] = tab2[i];
min++;
}
else
{
tmax[max] = tab2[i];
max++;
tmin[min] = tab1[i];
min++;
}
}
/*affichage des resultas*/
printf("\t\t MAX TAB :\n\n");
for(i=0; i<n; i++)
{
printf("%d\n",tmax[max]);
}
printf("\t\t MIN TAB :\n\n");
for(i=0; i<n; i++)
{
printf("%d\n",tmin[min]);
}
getch();
}
2 réponses
Il y a plein de choses qui ne vont pas.
Je passe sur le fait que <conio.h> et clrscr ne sont pas standard et sur le fait que ton main est sensé retourné un code d'erreur entier (0 si tout va bien).
Si on lit cette section min et max sont systématiquement incrémenté et valent donc... i. Outre le fait que les variables min et max ne servent du coup à rien, je doute que ce soit ce que tu veux faire à moins que le but du programme soit de calculer tmax = {max(t1[i],t2[i]}_i et tmin = {min(t1[i],t2[i]}_i. Mais à ce moment là autant écrire
Ensuite dans tes boucles d'affichage tu incrémentes i alors que tu examines les tableaux à l'index min/max qui lui ne varie pas. Tu affiches donc n fois la case tmin[min] et tmax[max]... Je doute que ce soit le but :-)
Bonne chance
Je passe sur le fait que <conio.h> et clrscr ne sont pas standard et sur le fait que ton main est sensé retourné un code d'erreur entier (0 si tout va bien).
/*determination du max et de min*/ for(i=min=max=0; i<n; i++) { if(tab1[i]>tab2[i]) { tmax[max] = tab1[i]; max++; tmin[min] = tab2[i]; min++; } else { tmax[max] = tab2[i]; max++; tmin[min] = tab1[i]; min++; } }
Si on lit cette section min et max sont systématiquement incrémenté et valent donc... i. Outre le fait que les variables min et max ne servent du coup à rien, je doute que ce soit ce que tu veux faire à moins que le but du programme soit de calculer tmax = {max(t1[i],t2[i]}_i et tmin = {min(t1[i],t2[i]}_i. Mais à ce moment là autant écrire
for(i=0;i<n;++i){ if(t1[i] < t2[i]){ tmin[i] = t1[i]; tmax[i] = t2[i]; }else{ tmin[i] = t2[i]; tmax[i] = t1[i]; } }
Ensuite dans tes boucles d'affichage tu incrémentes i alors que tu examines les tableaux à l'index min/max qui lui ne varie pas. Tu affiches donc n fois la case tmin[min] et tmax[max]... Je doute que ce soit le but :-)
Bonne chance
et voici le code :
#include<conio.h>
#include<stdio.h>
#define nmax 100
void main()
{
int tab1[nmax],tab2[nmax],tmax[nmax],tmin[nmax],i,max,min,n;
clrscr();
do{
printf("Donnez le nombre d'‚l‚ments :");
scanf("%d",&n);
}while(n<0 || n>nmax);
/*remplisssage du tab 1*/
printf("Tableau nø1 :\n");
for(i=0; i<n; i++)
{
printf("Tab[%d] :",i);
scanf("%d",&tab1[i]);
}
/*remplissage du tab 2*/
printf("Tableau nø2 :\n");
for(i=0; i<n; i++)
{
printf("Tab[%d] :",i);
scanf("%d",&tab2[i]);
}
/*determination de max et min*/
for(i=min=max=0; i<n; i++)
{
if(tab1[i]<tab2[i])
{
tmax[i] = tab2[i];
max++;
tmin[i] = tab1[i];
min++;
}
else
{
tmax[i] = tab1[i];
max++;
tmin[i] = tab2[i];
min++;
}
}
/*affichage des resultas*/
printf("\t\t MAX TAB :\n\n");
for(i=0; i<max; i++)
printf("%d\n",tmax[i]);
printf("\t\t MIN TAB :\n\n");
for(i=0; i<min; i++)
printf("%d\n",tmin[i]);
getch();
}