Ответить на сообщение
Вернуться к теме
Вы отвечаете на сообщение:
Автор: cheops (28.12.2006 в 13:30) Если можно использовать STL, то первую задачу можно решить следующим образом
#include <iostream> #include <vector> #include <algorithm> using namespace std; bool absLess(int elem1, int elem2) { return abs(elem1) < abs(elem2); } int main() { // Коллекция vector<int> coll; // Итератор vector<int>::iterator pos; try { coll.push_back(1); coll.push_back(2); coll.push_back(3); coll.push_back(4); coll.push_back(-10); // Находим максимальный элемент pos = max_element(coll.begin(), coll.end(), absLess); // Вычисляем номер элемента в массиве cout << distance(coll.begin(), pos) << endl; } catch(bad_alloc) { cout << "Не удалось выделить память под коллекцию\n"; } return 0; }
Ваше имя:
Пароль:
Цитировать Используйте тэги для выделения текста: Код: [code][/code] Жирный: [b][/b] Наклонный: [i][/i] URL: [url][/url]
Сообщение:
Прикрепить: