Dieses Mal habe ich ein Programm machen, die die Art der Suche der Benutzer (Binary oder sequentiell) verwenden möchte, fragt, ob Binary Ich habe den Benutzer zu fragen, ein sortiert eingeben Array, bis es sortiert ist.Schleife zu halten Benutzer für ein sortiertes Array C fragen ++
Hier ist der Haupt:
int main(int argc, char** argv) {
int n, decide, inicio, fin, key;
cout << " ¿De que tamaño será tu Arreglo?: ";//What size your array will be?
cin >> n;
int arreglo[n]; // Create the array
cout << " ¿Qué tipo de Busqueda realizaremos hoy?\n\n";//What kind of search we will use?
cout << "\n 1. Busqueda Secuencial.\n 2. Busqueda Binaria.\n\n";
cin >> decide;
cout << "\t\n- - Tu arreglo sera de " << n << " elementos. - -\n";//Your arry will be of "n" elements
switch (decide) {
case 1:
inicializaLista(n, arreglo); // Fill the array.
cout << "\n¿Que numero buscas?"; // Ask for the number we want to search.
cin >> key;
busquedaSecuencial(arreglo, n, key);
break;
case 2:
inicio = 0;
fin = n - 1;
cout << "\nIngrese valores en orden\n";//Type sorted values
inicializaLista(n, arreglo); // fill the array
validarLista(n, arreglo); //validate List
cout << "\n¿Que numero buscas?"; // Ask for the number we want to search.
cin >> key;
busquedaBinaria(arreglo, n, inicio, fin);
break;
}
return 0;
}
Hier Funktion meine Validierung:
bool validarLista(int n, int arreglo[]) {
cout << "Validando Lista ... ";
for (int i = 0; i < n - 1; i++) {
if (arreglo[i] > arreglo[i + 1]) {
return false; // It is proven that the array is not sorted.
}
}
return true; // If this part has been reached, the array must be sorted.};
}
Hier ist, wo ich das Array
int inicializaLista(int n, int arreglo[]) {
cout << "\n";
for (int i = 0; i < n; i++) {
cout << "Ingrese dato " << i + 1 << ": ";
cin >> arreglo[i];
}
};
ich getan habe einige „do- füllen while "und versucht mit" wenn "und vielen Strukturen, aber nicht mit der Lösung kommen. Wie führe ich das richtig durch, so fragt die Validierungsfunktion nach einem sortierten Array. Es tut mir leid übersetzen nicht alle Variablen oder etwas auf Spanisch, aber wenn Sie mir dabei helfen könnte, würde ich so dankbar sein.
Ich bin nicht C++, aber sollten Sie nicht die Eingabe der Zeichenfolge von Cin in Ganzzahl konvertieren? –
Anstatt die Benutzer erwarten, dass die Anordnung, um die Eingabe zu sortieren, wäre es weniger frustrierend für den Benutzer in einem beliebigen Reihenfolge Daten zu übernehmen und für das Programm des Array zu sortieren, wenn eine binäre Suche angefordert wurde. – Peter
Ja! Ich dachte, aber das ist meine Lehrer-Anforderung, danke für dein Feedback. –