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

Ошибка преобразования типа - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Строковый класс http://www.cyberforum.ru/cpp-beginners/thread569833.html
Ребят, помогите решить пожалуйста... Написать программу для работы с строковым классом. В классе предусмотреть все основные операции со строками. Поля и методы класса: Переменная strs - определяет обрабатываемую строку. Конструктор contrings(); - вызывается при создании объекта и выполняет инициализацию массива strs путём занесения в strs символа конца строки. Функции: конкатенация,...
C++ Передача массивов в функцию Помогите с программой пожалуйста!! Конец года, горю.. 1)Вычислить с использованием функции max элементы каждой строки матрицы A(10,20). Результаты формировать в одномерных массивах C(10) и D(10). 2)Определить функции, выполняющие действия в соответствии с вариантом задания. 13. Дан одномерный массив, состоящий из N вещественных элементов. 13.1. Найти максимальный элемент. 13.2. Вычислить... http://www.cyberforum.ru/cpp-beginners/thread569824.html
C++ Имя массива как указатель
Помогите с программой пожалуйста!! Конец года, горю.. Используя имя массива как указатель, и применяя адресную арифметику выполнить задание. 13. Дан одномерный массив, состоящий из N целочисленных элементов. 13.1. Ввести массив с клавиатуры. 13.2. Найти максимальный элемент. 13.3. Вычислить среднее арифметическое отрицательных элементов массива. 13.4. Вывести элементы на экран в обратном...
C++ В последовательности чисел выдать на печать TRUE
В последовательности чисел выдать на печать TRUE, если значение максимального числа больше числа 10.
C++ Алгоритм сортировки методом слияния http://www.cyberforum.ru/cpp-beginners/thread569799.html
Напишите программу, реализующую алгоритм сортировки методом слияния и получите для нее эмпирические оценки функции роста вычислительной и объёмной сложности.
C++ алгоритм двоичная вставка Приведите программную реализацию алгоритма сортировки методом двоичной вставки. Получите для неё эмпирические оценки функции роста вычислительной и объемной сложности. подробнее

Показать сообщение отдельно
taras atavin
Ушёл с форума.
 Аватар для taras atavin
3569 / 1752 / 91
Регистрация: 24.11.2009
Сообщений: 27,619
10.05.2012, 07:44     Ошибка преобразования типа
Цитата Сообщение от G@leON Посмотреть сообщение
Оба значение типа long на 1 меньше, чем возвращаемые функциями значения типа double.
А при чём здесь ошибка приведения? Ошибка приведения, это когда вообще нельзя привести. А здесь погрешность округления. Твой double чуть меньше ожидаемого целого.
C++
1
2
3
4
5
6
int x;
int y;
float z;
z=2.5;
x=z;// Округление вниз, x=2
y=z+0.5;// Округление по математическим правилам, y=3
Добавлено через 8 минут
Цитата Сообщение от Toshkarik Посмотреть сообщение
Тем, что при округлении берется ближайшее целое, при приведении же просто отбрасывается дробная часть.
Существует как минимум 4 способа округления: вниз, вверх, по математическим правилам и так называемое банкирское, по правилам которого если дробная часть точно равна 0.5, то округляют к ближайшему чётному, а в остальных случаях к ближайшему целому, при округлении вниз дробная часть отбрасывается, при округлении вверх при ненулевой дробной части инкремируется целая, а при нулевой сохраняется и после этого отбрасывается дробная часть, а оператор приведения типа может быть написан как угодно и предусматривать какое нибудь вообще пятое округление. В любом случае обнуление младших разрядов в какой либо системе счисления есть округление (округлять можно и до сотен, и до сотых), а приведение к целому всегда обнуляет все разряды с весами меньше единицы, что есть округление до целого. То, что встроенные типы принято приводить именно округлением вниз, сути не меняет.

Добавлено через 6 минут
Цитата Сообщение от G@leON Посмотреть сообщение
Я так понимаю, задача вылазит несколько другим боком. Нужно как то умудрится возвести в степень n и n-1 число v_1, а результат потом делить на n с получением остатка от деления.
Если и основание, и показатель целые, то зачем возводить в степень через экспоненту? Для данного случая степень определена, как произведение одинаковых множителей, так и делай.
 
Текущее время: 01:04. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru