Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.11.2017, 23:14   #1
VolodyaBuzin
Пользователь
 
Регистрация: 10.11.2017
Сообщений: 56
По умолчанию Сортировка векторов выбором по длине - обработка исключений

Здравствуйте! Я пишу курсовую по дисциплине "Структуры и алгоритмы компьютерной обработки данных" на тему "Векторы: программная реализация сортировки выбором по длине". Как можно переделать функцию сортировки? Я ввожу массив векторов и при этом задаю количество координат, но функция сортировки не сработала, я вернулся назад к вводу и не увидел результаты.

Код во вложениях. Как нужно обрабатывать исключения об ошибке выделения памяти, ошибке освобождения памяти, выходе за границы массива и за пределы диапазона типа данных? Где ещё Вы порекомендуете расставить флаги ошибок? На каких экспериментальных данных моя программа может дать сбой? В конструкторах для выделения памяти я бы хотел прописать исключение вида

Код:
double* p;
    try {
        p=new double[0x7fffffff];//выделяем память
    }catch(...)
    {
        std::cout<<"Oshibka vydelenija pamyati!\n";
    }
В перегруженных операторах ввода и вывода я бы хотел поместить исключение вида

Код:
try
{
cout<<"Vvedite koefficient dlya "<<i<<" chlena: "; cin>>k[i]; cin.fail(); //int [-2 147 483 648 .. 2 147 483 647]
//  if(k[i]>2147483647) throw 550;
}
catch(int i)
{
cout<<"Oshibka vvoda! Vyhod za granizy diapazona!\n"<<endl;
}
Для алгоритма сортировки хотел бы проверить выход за границы массива:

Код:
try {
    if (index < 0 || index >= currentSize)
        throw out_of_range("Index was out of range");
    }
    catch(const out_of_range& oor) { // что тут писать чтобы поймать из throw
        cout << oor.what();
    }
Как нужно обрабатывать исключения об ошибке выделения памяти, ошибке освобождения памяти, выходе за границы массива и за пределы диапазона типа данных? Где ещё Вы порекомендуете расставить флаги ошибок? На каких экспериментальных данных моя программа может дать сбой? Две недели пишу курсовую, плохо разбираюсь, преподаватель не из лучших.
Вложения
Тип файла: docx Класс Вектор.docx (34.7 Кб, 10 просмотров)
VolodyaBuzin вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
СИ! Сортировка серий в массиве по их длине qwerty1258 Помощь студентам 0 30.11.2016 22:34
MS Access. Сортировка по длине строки grominfo БД в Delphi 4 17.12.2012 00:23
Обработка исключений с пoмощью структурированной обработки исключений Smart Visual C++ 3 01.11.2012 15:38
Сортировка файла по длине строки Existence Помощь студентам 3 29.09.2010 23:37
Сортировка слов по длине. Артин Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 05.05.2009 12:01