Problème tableau
snake34
Messages postés
2
Statut
Membre
-
snake34 Messages postés 2 Statut Membre -
snake34 Messages postés 2 Statut Membre -
Bonjour,
voila mon problème est que je dois trier un tableau par ordre croissant de la façon suivante:
la méthode consiste à créer un nouveau tableau avec les indices de l'ordre en commençant par la case qu'indique une variable, voici un exemple:
le tableau suivant est à trier: 0.5 | 2.5 | 2.3 | -1.1
en résultat cela doit être: 2 | -1 | 1 | 0
et la variable de départ doit être à 3.
Explication:
La variable contient la valeur 3 ce qui indique que la valeur la plus basse est à l'indice 3 dans le tableau à trier.
L'élément d'indice 3 dans le tableau de résultat contient la valeur 0 qui indique que le suivant dans l'ordre croissant est à l'indice 0 dans le tableau à trier.
L'élément d'indice 0 dans le tableau de résultat contient la valeur 2 qui indique que le suivant dans l'ordre croissant est à l'indice 2 dans le tableau à trier.
L'élément d'indice 2 dans le tableau de résultat contient la valeur 1 qui indique que le suivant dans l'ordre croissant est à l'indice 1 dans le tableau à trier.
L'élément d'indice 1 dans le tableau de résultat contient la valeur -1 qui indique qu'on a vu tous les éléments du tableau à trier.
Mon code:
#include<stdio.h>
int main(void)
{
int releve[4]={0.5, 2.5, 2.3, -1.1};
int tableau_entier[4];
int variable_entiere=0, i, j, test=0;
tableau_entier[0] = -1;
for (i=1;i<4;i++)
{
if (releve[i] < releve[variable_entiere])
{
variable_entiere = i;
tableau_entier[i] = 0;
}
else
{
for (j=0;j<4;j++)
{
if (releve[j] > releve[i])
{
tableau_entier[i] = j;
tableau_entier[0] = i;
test = 1;
}
}
if (test <= 0)
{
tableau_entier[i] = -1;
}
}
test = 0;
}
for (i=0;i<4;i++)
{
printf("%d |", tableau_entier[i]);
}
printf("%d", variable_entiere);
return 0;
}
Alors comme tableau de résultat il m'affiche: -1 | -1 | -1 | 0 mais me donne la bonne valeur pour la variable.
Je ne comprend pas pourquoi en espérant que vous puissiez m'aider merci.
voila mon problème est que je dois trier un tableau par ordre croissant de la façon suivante:
la méthode consiste à créer un nouveau tableau avec les indices de l'ordre en commençant par la case qu'indique une variable, voici un exemple:
le tableau suivant est à trier: 0.5 | 2.5 | 2.3 | -1.1
en résultat cela doit être: 2 | -1 | 1 | 0
et la variable de départ doit être à 3.
Explication:
La variable contient la valeur 3 ce qui indique que la valeur la plus basse est à l'indice 3 dans le tableau à trier.
L'élément d'indice 3 dans le tableau de résultat contient la valeur 0 qui indique que le suivant dans l'ordre croissant est à l'indice 0 dans le tableau à trier.
L'élément d'indice 0 dans le tableau de résultat contient la valeur 2 qui indique que le suivant dans l'ordre croissant est à l'indice 2 dans le tableau à trier.
L'élément d'indice 2 dans le tableau de résultat contient la valeur 1 qui indique que le suivant dans l'ordre croissant est à l'indice 1 dans le tableau à trier.
L'élément d'indice 1 dans le tableau de résultat contient la valeur -1 qui indique qu'on a vu tous les éléments du tableau à trier.
Mon code:
#include<stdio.h>
int main(void)
{
int releve[4]={0.5, 2.5, 2.3, -1.1};
int tableau_entier[4];
int variable_entiere=0, i, j, test=0;
tableau_entier[0] = -1;
for (i=1;i<4;i++)
{
if (releve[i] < releve[variable_entiere])
{
variable_entiere = i;
tableau_entier[i] = 0;
}
else
{
for (j=0;j<4;j++)
{
if (releve[j] > releve[i])
{
tableau_entier[i] = j;
tableau_entier[0] = i;
test = 1;
}
}
if (test <= 0)
{
tableau_entier[i] = -1;
}
}
test = 0;
}
for (i=0;i<4;i++)
{
printf("%d |", tableau_entier[i]);
}
printf("%d", variable_entiere);
return 0;
}
Alors comme tableau de résultat il m'affiche: -1 | -1 | -1 | 0 mais me donne la bonne valeur pour la variable.
Je ne comprend pas pourquoi en espérant que vous puissiez m'aider merci.
A voir également:
- Problème tableau
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Imprimer un tableau excel - Guide
- Tableau croisé dynamique - Guide