Je veux calculer Pi avec le nombre de décimales indiqué par l'utilisateur et lorsque l'entrée est 0, la variable piNumber doit être définie sur '3' et non '3', afin que la sortie ne comporte pas de virgule inutile.
Cela fonctionne
static string PiNumberFinder(int amountOfDigits)
{
string piNumber = "3,";
int dividedBy = 11080585;
int divisor = 78256779;
int result;
for (int i = 0; i < amountOfDigits; i++)
{
if (dividedBy < divisor)
dividedBy *= 10;
result = dividedBy / divisor;
string resultString = result.ToString();
piNumber += resultString;
dividedBy = dividedBy - divisor * result;
}
return piNumber;
}
Mais avec l'instruction "si", ce n'est pas le cas.
static string PiNumberFinder(int amountOfDigits)
{
int dividedBy = 11080585;
int divisor = 78256779;
int result;
if (amountOfDigits == 0)
{
string piNumber = "3";
}
else
{
string piNumber = "3,";
}
for (int i = 0; i < amountOfDigits; i++)
{
if (dividedBy < divisor)
dividedBy *= 10;
result = dividedBy / divisor;
string resultString = result.ToString();
piNumber += resultString; // I get an error here
dividedBy = dividedBy - divisor * result;
}
return piNumber; // I get an error here
}
J'obtiens l'erreur "The name 'piNumber' does not exist in the current context" deux fois pour les lignes indiquées dans le code ci-dessus