Programme FizzBuzz. L'utilisateur entre des nombres séparés par une virgule. Le programme lit l'entrée et informe l'ordinateur s'il est divisible par 3, 5 ou les deux. Lorsque l'utilisateur entre 15,5,30, le programme ne sortira que le premier nombre, 15 et s'arrête là. Qu'est-ce que je fais mal?Conversion de chaîne en vecteur d'entiers
void processVector(vector<int> intVector)
{
bool loop;
for (int i = 0; i < intVector.size(); i++)
{
loop = true;
}
}
int main()
{
cout << "Welcome to the FizzBuzz program!" << endl;
cout << "This program will check if the number you enter is divisable by
3, 5, or both." << endl;
cout << "Please enter an array of numbers separated by a comma like so,
5,10,15" << endl;
cin >> userArray;
vector<int> loadVector(string inputString);
istringstream iss(userArray);
vector <int> v;
int i;
while (iss >> i);
{
v.push_back(i);
if (iss.peek() == ',')
iss.ignore();
if (i % 15 == 0)
{
cout << "Number " << i << " - FizzBuzz!" << endl;
}
else if (i % 3 == 0)
{
cout << "Number " << i << " Fizz!" << endl;
}
else if (i % 5 == 0)
{
cout << "Number " << i << " Buzz!" << endl;
}
else
{
cout << "Number entered is not divisable by 3 or 5." << endl;
}
}
system("pause");
}
S'il vous plaît modifier votre question pour contenir [mcve] – Slava
Jolie parmi les choses que vous faites mal sont: Le défaut d'inclure les fichiers d'en-tête, le défaut de déclarer 'userArray'. Tout en boucle avec un corps vide. Appeler 'system()' quand vous n'en avez pas besoin. Déclarer 'loadVector()' mais ne jamais l'appeler. Définir 'processVector()' mais ne jamais l'utiliser de quelque façon que ce soit. –
@ Ben Voigt, Merci, Ben, j'ai les fichiers d'en-tête, je n'ai pas copié le code dans son intégralité dans le post. fichiers d'en-tête sont je .... #include "stdafx.h" #include #include #include #include #include ...... je regarderai sur le reste . Merci encore pour l'aide –
Ang316