Déjà sans connaître l'algo ni voir de code ça va être dur de t'aider à trouver le problème.
On peut toujours te donner des pistes sur des erreurs fréquentes comme la division d'un entier par un entier qui va donner un entier en C++ et non pas un réel comme on pourrait s'y attendre naturellement.
Cela peut aussi venir d'un problème d'approximation dans l'encodage des flottants (float ou double) qui ne sont, je pense, pas aussi précis que les types utilisés dans mathlab et qui sont donc susceptible de propager très rapidement une légère erreur d'arrondi.
Utilises tu une bibliothèque mathématique particulière pour tes calculs ou bien juste les types de base(int, float, double, etc...) du langage ?