Fonction tri et tableaux

Fermé
iReplayx Messages postés 8 Date d'inscription samedi 4 mai 2013 Statut Membre Dernière intervention 19 mai 2013 - 19 mai 2013 à 14:34
evilfalcon Messages postés 58 Date d'inscription samedi 15 décembre 2012 Statut Membre Dernière intervention 10 novembre 2015 - 22 mai 2013 à 17:43
Je n'arrive pas à trier ce "calcul" malgré les quelques connaissances que j'ai.J'ai cherché sur le Net mais je n'ai pas trouvé.. Et aussi, je souhaiterais faire un bloc avec des tableaux pour calculer le tout à la fin.
voici mon algorithme:
#include <stdio.h>
#include <stdlib.h>
void ligne(int x)
{
int n;
for(n=1;n<=x;n=n+1)
{
printf("*");
}
int main(int argc, char *argv[])
{
int prix, taille, neon, verre, deco, couleur, i;
int prix1[5];
printf("Local river\n");
ligne(50);
printf("Le prix initila de l'objet est: ");
prix=150;
printf("%d\n",prix);
ligne(n);
printf("1ère option: Quelle taille désirez-vous?\n");
scanf("%d",&taille);
prnitf("Choisissez entre une agrandissement soit 10x, soit 50x, soit 100x plus grand que la taille initial\n");
printf("ATTETION! Ne pas encoder le X\n");
if(taille==10)
{
prix=prix*2;
prix1[0]=300;
}
if(taille==50)
{
prix=prix*3;
prix1[0]=450;
}
if(taille==100)
{
prix=prix*5;
prix1[0]=750;
}
ligne(50);
printf("2ème option: Desirez-vous des neons?\n");
printf("Intrduisez o pour oui et n pour non\n");
scanf("%d",&neon);
if(neon=="o")
{
prix=prix+100;
prix1[1]=250;
}
if(neon="n")
{
prix=150;
}
printf("3ème option: désirez-vous un verre opaque?\n");
printf("Encodez soit o ou n\n");
scanf("%d",verre);
if(verre="o")
{
prix=prix+200;
prix1[2]=350;
}
if(verre="n")
{
prix=150;
}
ligne(50);
printf("4ème option: Voudriez-vous des décorations?\n");
printf("Encodez o ou n\n");
scanf("%d",&deco);
if(deco="o")
{
prix=prix+50;
}
if(deco="n")
{
prix=150;
}
ligne(50);
printf("Voudirez-vous une couleur exterieure?\n");
printf("Encodez oou n\n");
scanf("%d",couleur);
if(couleur="o")
{
prix=prix+50;
prix1[4]=200;
}
if(couelur"n")
{
prix=150;
}
printf("Votre achat sera de:" );
for(i=0;i<=4;i++)
{
printf("%d\n", prix[i]);
}
system("PAUSE");
return 0;
}

merci d'avance pour votre aide!
A voir également:

2 réponses

jeremux Messages postés 58 Date d'inscription samedi 23 octobre 2010 Statut Membre Dernière intervention 30 mai 2013 4
21 mai 2013 à 09:52
Bonjour,

if(neon=="o") , neon est un int, et o est un tableau de char...

scanf("%d",verre); scanf attend un pointeur en deuxième argument...

Et encore d'autre erreur...
0
evilfalcon Messages postés 58 Date d'inscription samedi 15 décembre 2012 Statut Membre Dernière intervention 10 novembre 2015
22 mai 2013 à 17:43
ça fait un moment que je n'ai pas fait de C. Si je me souviens bien, même si neon est un int, l fait tous de même une comparaison correcte. Il compare des valeurs ASCII.

Par exemple:
int lettre = 111;
printf("%c",lettre);

c'est un o que tu auras!

Même si cette façon de faire est très maladroit, je pense pas qu'il y a un problème à se niveau là!

Par contre, si je ne me trompe pas il faut utiliser des apostrophes et pas des guillemets.

Je pense que le problème viens plutôt de ton raisonnement, à quoi sert ton prix, tu le multiplies tu lui ajoutes des valeurs puis tu le remets à 150????? je ne comprend pas!

ensuite tu as encore des petites erreurs!
par exemple:

if(couelur"n")
0