Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

C++

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 14, средняя оценка - 4.64
Glacius
Сообщений: n/a
#1

Способы решения тривиальных/не тривиальных задач - C++

13.11.2010, 01:58. Просмотров 1801. Ответов 20
Метки нет (Все метки)

Други! В этой теме я предлагаю выкладывать свои способы решения тривиальных/не тривиальных задач и стремиться к элегантности их решения, то бишь к совершенству кода. Это будет способствовать повышению профессионализма и навыков кодерства. Оптимизация должна быть интересной
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.11.2010, 01:58
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Способы решения тривиальных/не тривиальных задач (C++):

Нужна литература и примеры решения задач - C++
Помогите найти полный учебник по Visual C++ и программы которые нужны для языка.

Программа для решения транспортных задач - C++
Помогите плиз умоляю, ребята. Составить программу решающую подобные задачи. Единственное условие: Выбор столбцов и строк в массивах...

Составить программы для решения задач - C++
помогите пожалуйста реализовать в код ( 5 вариант) П.5.18.Правил Запрещено размещать задания и решения в виде картинок и других...

Сайты для решения задач по программированию - C++
Дайте ссылки на сайты, на которых можно, решая задачи, зарабатывать баллы и т. п.

Пригоден ли С++ для решения однотипных задач по механике - C++
Всем здравствуйте. Иногда страдаю решением однотипных задач по механике, в которых очень много формул. Значения переменных для формул...

Где взять решения задач из книги Дейтелов - C++
Здраствуйте. Откуда я могу найти решения задач по Дейтел?

20
Glacius
Сообщений: n/a
13.11.2010, 14:56 #16
Цитата Сообщение от CheshireCat Посмотреть сообщение
К сожалению, это не оптимизация, а с точностью до наоборот. Хотя этот код стотыщпицот раз уже приводили как "правильный пример". Так вот, это - пример того, как не надо писать. В соответствии с точным смыслом Стандарта языка, этот код приводит к неопределенному поведению программы. А неопределенное поведение, оно такое - может, ничего не произойдет, а может и "бабахнуть".....
А по скорости в сравнении с кодом Glacius - выигрыша нет. Зато код Glacius не обладает UB.
Вопросик: что вы имеете ввиду под неопределенным поведением программы?
Kastaneda
Форумчанин
Эксперт С++
4676 / 2880 / 234
Регистрация: 12.12.2009
Сообщений: 7,317
Записей в блоге: 2
Завершенные тесты: 1
13.11.2010, 15:02 #17
Цитата Сообщение от Glacius Посмотреть сообщение
что вы имеете ввиду под неопределенным поведением программы?
Имелось ввиду undefined behavior. Я вот не помню, является ли "=" точкой следования? Если нет, то это UB.

Добавлено через 1 минуту
Цитата Сообщение от Kastaneda Посмотреть сообщение
является ли "=" точкой следования?
Э, подумал - конечно же нет!
0
slice
35 / 78 / 4
Регистрация: 04.11.2010
Сообщений: 249
13.11.2010, 16:09 #18
Где там UB? Я не понимаю.
0
Kastaneda
Форумчанин
Эксперт С++
4676 / 2880 / 234
Регистрация: 12.12.2009
Сообщений: 7,317
Записей в блоге: 2
Завершенные тесты: 1
13.11.2010, 16:59 #19
Цитата Сообщение от slice Посмотреть сообщение
Где там UB? Я не понимаю.

Если программа пытается модифицировать одну переменную дважды не пересекая точку следования, то это ведет к undefined behavior. Так говорит Стандарт.
Имеется ввиду стандарт C++.
0
ForEveR
В астрале
Эксперт С++
7980 / 4739 / 321
Регистрация: 24.06.2010
Сообщений: 10,543
Завершенные тесты: 3
13.11.2010, 23:49 #20
Да, и правда. Плохой пример я кинул.
0
tartikov
Заблокирован
14.11.2010, 19:39 #21
написание функции swap - это не интересно.

предлагаю следующую нетрудную задачку -
реализовать класс Any который может хранить значения любого типа

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
Any a = 7;
cout << a << endl; //выводит 7
a = string("hello");
cout << a << endl; //выводит hello
Any a2 = a;
cout << a2 << endl; //выводит hello
 
try
{
    a = 1.7f;
    float f = a;    //если a хранит не float то бросается BadCastException
    cout << f << endl; //выводит 1.7
}
catch(BadCastException&)
{
    cout << "can't cast\n";
}
те кто знаком с boost-ом наверняка знают класс boost::any, чур от туда не копипастить)
0
14.11.2010, 19:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.11.2010, 19:39
Привет! Вот еще темы с ответами:

Нужно Описание математического метода решения задач - C++
помогите, нужно Описание математического метода решения задач 1. Найти среднеарифметическое значение элементов массива. 2. Сосчитать...

Литература по C++ для решения вычислительных и математических задач - C++
Доброго времени суток! Прошу совета: требуется использовать язык C++ для решения вычислительных и математических задач. Каким образом...

Симплекс метод решения задач линейного программирования - C++
Как реализовать в программе симплек метод решения задач линейного программирования

Применение симплекс-метода для решения задач - C++
Напишите программку для решения этой задачи ,можно решить её также желательно решить её математически)


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
21
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru