"y" n'a pas été déclarée dans ce cadre,l'
J'ai eu beaucoup de problèmes avec ce projet, j'ai compris beaucoup de choses. mais ce que je ne peux pas
Ici, j'ai quelques calculs, et puis j'ai besoin de ce "y" variable à transmettre à la prochaine .rpc
#include <iostream>
#include <math.h>
using namespace std;
int Ing(int number, float y)
{
y = 0;
float Lngth = 0;
for(; number != 0; number /= 10, Lngth++);
float n = nearbyint(sqrt(Lngth));
y = Lngth * pow(10, n);
return (y);
}
ici est la suivante .rpc
#include <iostream>
#include "InitialGuess.h"
#include <math.h>
using namespace std;
int SquareRoot(int number, int th)
{
float iGuess = Ing(y);
float x = iGuess;
for (int k=1; k< th; ++k)
{
x = (x + (number / x ))/2;
}
cout<<x;
return (x);
}
Mais sur la compilation Il me donne l'erreur que "y" n'a pas été déclarée dans ce champ d'application.
Où j'ai fait une erreur?
Merci
- Changer de
int y = 0;
- Vous avez besoin d'apprendre le C++ Étendues à comprendre que le message d'erreur ne pouvait pas être plus clair en vous disant comment résoudre le problème: tutorialspoint.com/cplusplus/cpp_variable_scope.htm
- Si je l'ai changer pour int y = 0, il va ombre parametr
- Peut-être que vous ne comprenez pas que la fonction racine carrée est un champ d'application différent de la fonction Ing. Juste parce que vous avez fourni la variable dans une seule ne fournit pas dans l'autre.
Vous devez vous connecter pour publier un commentaire.
devrait être
parce que
y
n'a pas encore déclaré à ce point et de la définition d'une variable.Sur cette ligne
vous n'avez pas y déclarée, ce qui provoque l'erreur. Quelle est la valeur que vous souhaitez passer à Ing()?
Vous avez 2 paramètres définis pour Ing(int, float), mais seulement à l'appeler avec un.