j'ai des objets rectangulaires je veux les trier par volume,de plus grand au plus petit,comment manipuler ca avec la langage C!!!![]()
j'ai des objets rectangulaires je veux les trier par volume,de plus grand au plus petit,comment manipuler ca avec la langage C!!!![]()
Bonjour,
Tout d'abord, si tu parle de l'algorithme, il y a un forum fais pour ça, mais si tu parles de l'implémentation en C tu es au bon endroit
Et puis tu parle de rectangle et de volume ... Soit c'est un pavé et là c'est un volume, soit c'est un rectangle et là on parle d'aire !
Réfléchis-y un petit peu, poste un minimum de code, on est pas là pour bosser à ta place mais pour t'aider !
Même pas un petit pseudo-code ? Bon c'est pas ce qui va te faire progresser mais bon ... Je te donne au moins un pseudo-code :
- Tu stocke les aires des rectangles dans un tableau
- Tu fais une boucle et tu vérifie à chaque fois si tableau [x] est plus plus petit que tableau [x + 1], si oui tu stocke x+1 dans une variable Min, et tu continue jusqu'à la fin du tableau (x+1 devient x ...)
- tu met la valeur de Min dans un autre tableau, puis tu supprime cette valeur du premier tableau
- et tu recommence jusqu'à que tu es tout trié !
C'est fais à la va-vite, mais en le travaillant un peu tu auras ton algo, et si tu as des problèmes pour l'implementer en C tu pourras poster, mais je répète avec un minimum de code !
C'était un plaisir ! J'attend de tes nouvelles sur cet algo ! Et surtout n'oublie pas : le meilleur moyen de progresser c'est la pratique !
@+
j'espere que l'idée est correcte mais je sais pas l'écriture en C est juste ou non
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 void main() { Min:=VI[1] for{i:=2 ;i:=N;i++} {if(VI[i]<min) { then min:=VI[i] } } VR[N]:=min for {i:=1 ;i:=N-1} {ind:=i ; for{j:=2 ;j:=N; j++} {if (VI(j)>VI(ind)) { then ind:=j } } VR[i]:=VI[ind]; VI(ind):=min } }
dommage je n'est pas le program pour faire l'excecution alors qu'elle est ton point de vue Malik!!!
L'idée est là en effet, mais c'est quel language ça ? (parce que c'est tout sauf du C) et surtout
![]()
Alors, je suis désolé, mais plusieurs raisons me poussent à refuser : Tout d'abord, tu n'a apparemment pas lu les règles de ce forum (sinon tu saurais que les smileysen quadruple exemplaire sont inutiles), puis tu nous demande d'implémenté, non seulement je peux pas (je suis dans mon lit avec l'Iphone dans les mains
) mais en plus si tu veux progresser en C tu dois le faire toute seule, après si tu veux pas quelle est l'utilité d'utiliser ce language ?
Donc voila, je suis encore désolé, mais je ne "traduirais" pas ton algo !
@+
EDIT :!
La fonction qsort(), déclarée dans le fichier d'entête standard stdlib.h, pourra t'aider pour le tri. Pour l'utiliser, il te faut écrire une fonction de comparaison des volumes de tes objets à passer en 3ème paramètre de qsort(). Regarde la doc, esquisse un début de code et pose une question précise si quelque chose n'est pas clair.
Thierry
"The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
"If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow
FAQ-Python FAQ-C FAQ-C++
+
mais surtout c'est du Pascal et pas du C...
Oui, je n'avais pas regardé le code. Ce n'est effectivement pas du C. Le mieux, avant de se lancer dans un projet comme celui-là, même petit, c'est de commencer par lire un didacticiel d'introduction comme ceux disponibles ici.
Avec mes meilleures salutations
Thierry
"The most important thing in the kitchen is the waste paper basket and it needs to be centrally located.", Donald Knuth
"If the only tool you have is a hammer, every problem looks like a nail.", probably Abraham Maslow
FAQ-Python FAQ-C FAQ-C++
+
Partager