Je n'arrive pas à comprendre comment procéder.Nombre de correspondances dans un tableau
La question: Mettre en œuvre la fonction
int count_matches(const string arr[], int size, string query);
Retourne le nombre de chaînes dans le tableau qui sont égales à query
ou -1
si la taille si elle est inférieure à 0.
Ma réponse:
#include <iostream>
#include <cmath>
#include<string>
using namespace std;
int count_matches(const string arr[], int size, string query){
int i = 0;
int numMatches;
for (;i<size;i++) {
if (string[i] == (string[i]+1)){
numMatches++;
}
}
return numMatches;
}
int main(){
string selection;
const string array[4]={"dog", "cat", "dog", "dog"};
cout<<"which animal do you want?"<<endl;
cin>> selection;
cout<< "there are " << count_matches(array, 4, selection)<< " matches"<<endl;
return 0;
}
Qu'est-ce qui ne va pas?
Le nom de votre tableau est 'arr', alors qu'est-ce que' string [i] '? Aussi, regardez 'string [i] + 1' et pensez à ce que ça fait, aussi puisque' int numMatches; 'n'est pas initialisé, que pensez-vous que 'numMatches ++;' va faire? Et où utilisez-vous 'query'? –
Vous n'utilisez pas du tout la variable 'query'. Je ne sais pas ce que vous vouliez ... Oh, et vous devriez probablement initialiser 'numMatches' ... – mcmcc
comment réinitialiser numMatches? – user1145538