Bonjour,
J'aimerais savoir comment faire pour convertir un algorithme de C++ en C dont je comprends le mieux. J'ai un programme écrit en C++, je suis débutant en C et je ne connais pas le C++.
Voici un morceau du code C++ dont j'aimearais convertir;
Bonjour,
J'aimerais savoir comment faire pour convertir un algorithme de C++ en C dont je comprends le mieux. J'ai un programme écrit en C++, je suis débutant en C et je ne connais pas le C++.
Voici un morceau du code C++ dont j'aimearais convertir;
Salut,
Tu appelles ça du C++ ?
Moi, ce que je vois c'est du C avec des primitives C++.
Tu remplaces cout par printf et le tour est quasi joué.
Bonjour,
déjà un indice dans les premières lignes :
On a certainement à faire avec l'algorithme de Dijkstra pour le calcul du plus court chemin. Ce qui se confirme à la lecture du code par la suite.
Code : Sélectionner tout - Visualiser dans une fenêtre à part cout << "** Dijkstra **" << endl;
Les points un peu délicats pourraient être :
- La seule utilisation de C++ dans le code est visiblement cout << qui se traduirait pas des printf en C.
- Chemins est la matrice 5x5 des poids des arêtes de ton graphe (distance entre 2 villes) donnée sous forme plate (25 données, les 5 premières forment la première ligne, les cinq suivantes la deuxième, etc)
- INIFINI qui même s'il n'est pas explicitement défini dans ton bout de code doit sans doute être une constante donnant le plus grand réel représentable ce qui se traduirait en C par l'inclusion du header float.h et d'un #define INFINI DBL_MAX
Maintenant, à moins que le but du travail soit de traduire ce code C++ en C, il est préférable de comprendre l'algorithme de Dijkstra par toi même puis de le coder toi-même en C. Ce n'est pas un algorithme très compliqué et il fait partie des algo fondamentaux. Je t'ai donné en lien la page wikipédia, mais tu auras une foultitude d'autres liens/vidéos/démos avec une recherche google.
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager