Я использовал функцию assert, чтобы гарантировать, что первый ввод номера находится между 1 и 7 (включительно). Однако, когда я запускаю программу и вводя недопустимое число, это приводит к сбою программы. Итак, как здесь действует функция assert, если это так?Функция Assert приводит к сбою программы
Пожалуйста, исправьте мою реализацию там, где это необходимо.
Код:
#include <iostream>
#include <assert.h>
using namespace std;
int main() {
int num;
int n;
int max;
cout << "Please enter a number between 1 & 7 \n";
cin >> num;
assert(num >= 1 && num <= 7);
for (int i = 0; i < num; i++) {
cout << "Please enter number " << (i + 1) << ": ";
cin >> n;
if (i == 0) {
max = n;
}
max = (n > max) ? n : max;
}
cout << "The maxmum value is: " << max << endl;
system("pause");
return 0;
}