Bu sefer kullanıcının sıralamak istediği arama türünü soran bir program yapmak zorundayım (İkili veya ardışık), İkili Kullanıcı sıralamak için kullanıcı sormak zorundaysa sıralanana kadar sıralayın. İşte Sıralı bir dizi için kullanıcı sormaya devam etmek için döngü C++
ana var: Ben bazı "DO yaptıkint inicializaLista(int n, int arreglo[]) {
cout << "\n";
for (int i = 0; i < n; i++) {
cout << "Ingrese dato " << i + 1 << ": ";
cin >> arreglo[i];
}
};
dizi doldurmak nerede
İştebool 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.};
}
: İşte
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;
}
benim Doğrulama fonksiyonudur whiles "ve" ile "denedim ve bir çok yapı ama çözüm ile alamadım. Doğrulama döngüsünü bu şekilde nasıl doğrulamalıyım? Böylece Doğrulama işlevi sıralı bir dizi için sormaya devam eder. İspanyolca'da tüm değişkenleri veya herhangi bir şeyi tercüme etmediğim için üzgünüm, ancak bana yardımcı olabilseydiniz çok minnettar olurdum.
C++ değilim, ancak dize girdisini sinemadan tamsayıya dönüştürmemelisiniz? –
Kullanıcının diziyi girmek için sıralamasını beklemekten ziyade, kullanıcının herhangi bir sıradaki verileri kabul etmesi ve programın bir ikili arama istendiyse diziyi sıralaması daha az can sıkıcı olur. – Peter
Evet! Bunu düşündüm ama bu benim öğretmen gereksinimim, geri bildiriminiz için teşekkür ederim. –