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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
kombabalomba
0 / 0 / 0
Регистрация: 07.02.2014
Сообщений: 8
#1

Исправить ошибку в выражении - C++

07.02.2014, 20:10. Просмотров 333. Ответов 8
Метки нет (Все метки)

A[i][j]=exp(-0.3*(i+j))*(j-5.3)*(j-0.7)*(j-6.5)*pow(i+j,2);
где ошибка в строчке?
выражение
aij=e-0.3(i+j)(j-5.3)(j-0.7)(j-6.5)(i+j)2
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.02.2014, 20:10
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Исправить ошибку в выражении (C++):

Найти ошибку в регулярном выражении - C++
Использую RegExpr модуль от Андрея Сорокина. Сделал небольшое изменение для удобства использования в билдере: const // EscChar =...

Подскажите как исправить ошибку. прога ломается на 79 строке. а ошибку не выдает - C++
#include <iostream> #include <cstdlib> #include <ctime> using namespace std; int chisla(int a,int b) { ...

Исправить ошибку - C++
Когда нажимаю "n" что бы вводить фамилии с клавиатуры, выбивает ошибку(краш консоли) Вот задание:После ввода с клавиатуры строками...

Исправить ошибку - C++
Здравствуйте, не могу исправить ошибку: "no matching function for call to `pow(int)'" Строку с ошибкой пометил в коде. #include <cmath> ...

Исправить ошибку C - C++
#include <stdio.h> int get_length(int* arr, int size) { for (int i = 1; i < size; i++) { if (arr < arr) { return i; } ...

Исправить ошибку - C++
Задачу и формулы надо переписывать! Редактор формул внизу страницы. помогите исправить ошибку в программе, задание 9 вариант, первая...

8
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
07.02.2014, 20:20 #2
kombabalomba, скорее всего в pow(i + j, 2), i + j надо перевести в тип double:
C++
1
pow((double)(i + j), 2);
1
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
07.02.2014, 20:30 #3
Цитата Сообщение от GuGo1991 Посмотреть сообщение
скорее всего в pow(i + j, 2), i + j надо перевести в тип double:
C++
1
pow((double)(i + j), 2);
Как-то сомнительно это. pow и так принимает double, и приведение выполнится автоматически.

kombabalomba
Какого типа у вас A[i][j]? Не int случаем?
0
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
07.02.2014, 20:43 #4
Цитата Сообщение от DrOffset Посмотреть сообщение
Как-то сомнительно это. pow и так принимает double, и приведение выполнится автоматически.
Не выполнится. Компилятор должен ругаться.
0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
07.02.2014, 20:46 #5
Цитата Сообщение от GuGo1991 Посмотреть сообщение
Не выполнится. Компилятор должен ругаться.
Не должен:
C++
1
     double f = 5;
http://ideone.com/ELxpHf
0
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
07.02.2014, 20:54 #6
DrOffset, компилятор не должен такое игнорировать.
Где вы компилировали? На пример в Dev-C++ такое не катит.
0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
07.02.2014, 21:09 #7
Цитата Сообщение от GuGo1991 Посмотреть сообщение
DrOffset, компилятор не должен такое игнорировать.
Где вы компилировали? На пример в Dev-C++ такое не катит.
Я дал ссылку на онлайн компилятор, пример собирается. Там GCC 4.8.1.

Standard C++11:
8.5.4/6
A narrowing conversion is an implicit conversion
— from a floating-point type to an integer type, or
— from long double to double or float, or from double to float, except where the source is a constant
expression and the actual value after conversion is within the range of values that can be represented
(even if it cannot be represented exactly), or
from an integer type or unscoped enumeration type to a floating-point type, except where the source
is a constant expression and the actual value after conversion will fit into the target type and will
produce the original value when converted back to the original type, or
— from an integer type or unscoped enumeration type to an integer type that cannot represent all the
values of the original type, except where the source is a constant expression and the actual value after
conversion will fit into the target type and will produce the original value when converted back to the
original type.
0
GuGo1991
267 / 261 / 93
Регистрация: 02.08.2012
Сообщений: 609
07.02.2014, 23:10 #8
DrOffset, у меня GCC 3.4.2, неявно не пройдёт
0
DrOffset
7376 / 4453 / 1009
Регистрация: 30.01.2014
Сообщений: 7,304
07.02.2014, 23:20 #9
Цитата Сообщение от GuGo1991 Посмотреть сообщение
DrOffset, у меня GCC 3.4.2, неявно не пройдёт
Я понял почему. Уберите using namespace std и все соберется. Проблема не в обсуждаемой теме, а в том, что при using namespace std в глобальное пространство имен добавляются эквивалентные функции, с одинаковыми параметрами (одна std:: pow, другая просто pow), ошибка в выборе между ними.

Что касается приведенной мной цитаты из стандарта - она распространяется также и на все компиляторы (претендующие на соответствие стандарту) и версии стандарта(С++98, С++2003), в том числе и на GCC 3.х.х.
1
07.02.2014, 23:20
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.02.2014, 23:20
Привет! Вот еще темы с ответами:

Исправить ошибку - C++
Помогите исправить ошибку #include <iostream> #include <locale> #include <cmath> #define M_PI 3.1415926535897932384626433832795 ...

Исправить ошибку - C++
#include<conio.h> #include<stdio.h> #include<math.h> #include<stdlib.h> #include<time.h> #include<graphics.h> #include<dos.h> ...

исправить ошибку в программке - C++
Помогите исправить программу В двумерном массиве хранится информация о количестве учеников в каждом классе каждой параллели школы с 1...

надо исправить ошибку - C++
задание выглядит так: Заполнить файл f натуральными числами, полученными с помощью генератора случайных чисел. Найти количество квадратов...


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

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

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