Консультация № 143588
10.09.2008, 17:13
0.00 руб.
0 1 1
Приветствую вас, уважаемые эксперты!
Передо мной была поставлена следующая задача(помогите пожалуйста решить её):
Дано целое число N и набор из N вещественных чисел. Проверить, образует ли данный набор убывающую последовательность. Если образует, то вывести True, если нет - вывести False.

СПАСИБО!!!

Обсуждение

Неизвестный
11.09.2008, 03:40
общий
это ответ
Здравствуйте, Минин Руслан Васильевич!
Для этого необходимо в цикле проверить все соседние элементы массива. Если каждый правый элемент меньше левого, то последовательность убывающая, иначе нет. Подробнее смотрите в коде:
Код:
 #include <stdlib.h>
#include <time.h>

#include <vector>
#include <iostream>

using namespace std;

int main(int argc, char* argv[]) {

int n;

cout << "Input n: ";
cin >> n;

vector<double> v(n);

srand((unsigned) time(NULL));

int random_limit = 100;

cout << "Initial array:" << endl;
for(int i=0; i<n; i++) {

v[i] = double(rand()%random_limit) + 1.0/double(rand()%random_limit + 1);
cout << v[i] << endl;
}

bool is_decrease = true;

for(int i=n-1; i>1; i--) {

if(v[i] > v[i-1]) {

is_decrease = false;
break;
}
}

cout << endl << "Is decreasing sequence: " << ((is_decrease) ? "true" : "false") << endl;

return 0;
}
Форма ответа