There is no such thing as a stupid question, until you ask it
Здравствуйте! Начинаю осваивать С++, поэтому извините, если вопрос покажется крайне дилетантским.
Компилятор: C++ 2008, ОС - семерка
Подсчитываю значение заданной функции f(x), которая включает в себя синус, косинус, степень, модуль и прочие вкусные вещи. читать дальше
Компилятор: C++ 2008, ОС - семерка
Подсчитываю значение заданной функции f(x), которая включает в себя синус, косинус, степень, модуль и прочие вкусные вещи. читать дальше
Однако для перемененных та же песня, я проверяла.
Остальное на первый взгляд должно быть верно. (Кроме того, что в С++ используется для ввода и вывода std::cin и std::cout)
простите, как-то не подумала сразу ._.
float y можно (и лучше) определять в функции Fun
Вот так?
С++ используется для ввода и вывода std::cin и std::cout
У меня в учебнике про это ни слова
И да, оно все равно не компилируется.
Дело в том, что в таком случае больше вероятность, что кто-нибудь соберёт у себя и укажет на решение проблемы. По крайней мере визуально её найти сложно.
Но игрек и так там объявляется, нет?
Да.
У меня в учебнике про это ни слова
Возможно. Учебник точно по С++, а не Си? (В Си такой подход норма, а вот для плюсов...)
Оооооо
Кстати, да. Это у меня такой монстр Франкенштейна, сделанный намеренно.
Но энивей, другая программа, в которой я использовала такие же операторы вывода в том же самом компиляторе, работает прекрасно. Дело, увы, не в этом.
Проблемы первоначального:
- отсутствие определения math.h, хотя с его функциями происходит работа
- Компилятор не знал, какую из перегруженных функций pow выбрать.
- При сложении или умножении float c константой, лучше записывать её как десятичную дробь, или ставить точку (краткая запись). Иначе есть вероятность получить результатом действия int (компилятор приведёт самостоятельно).
- отсутствие определения math.h, хотя с его функциями происходит работа
Странно, но когда пыталась я указать библиотеку и в теле функции, то компилятор все равно плевался.
Компилятор не знал, какую из перегруженных функций pow выбрать.
Ам, можно поподробнее? Я не вижу различий относительно pow между исходным и вашим вариантом.
Подключение библиотек (речь о #include) всегда идёт в начале файла до объявления функций. Причём в некоторых случаях важен порядок подключения (что в первой, что во второй строке подключается), как ни странно это может показаться на первый взгляд.
Ам, можно поподробнее? Я не вижу различий относительно pow между исходным и вашим вариантом.
Было y = pow(y, 0.5); Стало для однозначности y = powf(y, 0.5);
Ещё тонкий момент на будущее про недопустимость прямого сравнения (оператор ==) float и double:
http://www.codeproject.com/Articles/29637/Five-Tips-for-Floating-Point-Programming