Se considera orice vector v cu n elemente reale. Oricare ar fi vectorul furnizat, utilizandu-se algoritmul de testare sortare cu bule, sa se determine daca vectorul este ordonat crescator.
#include
using namespace std;
Răspunsuri la întrebare
Răspuns:
#include <iostream>
bool esteSortat(double vectorNumere[], size_t dimensiuneVector);
int main() {
double vecNr1[]{1, 2, 3, 4, 5}; /* true */
double vecNr2[]{2.3, 4.5, 1.3, 8}; /* false */
double vecNr3[]{2.22, 2.21, 4, 5.0}; /* false */
std::cout << std::boolalpha << esteSortat(vecNr1, std::size(vecNr1)) << "\n << esteSortat(vecNr2, std::size(vecNr2)) << "\n" << esteSortat(vecNr3, std::size(vecNr3)) << "\n";
return 0;
}
/* true dacă vectorul este sortat, false altfel */
bool esteSortat(double vectorNumere[], size_t dimensiuneVector) {
for (int i = 0; i < dimensiuneVector - 1; i++) {
/* luăm primul număr, îl comparăm cu restul */
for (int j = 0; j < dimensiuneVector - i - 1; j++) {
/* dacă găsim un număr mai mic decât numărul curent */
if (vectorNumere[j] > vectorNumere[j + 1]) {
/* înseamnă că vectorul nu e sortat, returnăm false */
return false;
}
}
/* dacă numerele sunt ordonate nu mai are rost să parcurgem vectorul */
break;
}
/* deci înseamnă că vectorul e ordonat crescător */
return true;
}