|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
18.03.2012, 23:02 | #1 |
Форумчанин
Регистрация: 24.08.2011
Сообщений: 138
|
Дифференциальное уравнение, выводятся не те данные.
До этого работал в фортране, но понадобилось перевести код на C++. Выводятся не те данные, где ошибка?
Код:
|
18.03.2012, 23:21 | #2 |
Форумчанин
Регистрация: 24.08.2011
Сообщений: 138
|
Вот тотже код на фортране 90
Код:
|
19.03.2012, 00:59 | #3 | |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
Цитата:
ADDED 22:02 CET Ну и уж если в Фортране REAL*8, то в Цэ тогда должно быть double. Последний раз редактировалось Vago; 19.03.2012 в 01:02. |
|
19.03.2012, 09:24 | #4 |
Форумчанин
Регистрация: 24.08.2011
Сообщений: 138
|
Ошибка точно не в этом
Извиняюсь, но причём тут real*8 и float , разница лишь в количестве выводимой памяти под переменную, real*8 - 8 байт. Значения в этой задачи меняются от 0 до 1, так что достаточно, к примеру и real*1 , float. real - это вещественные переменные.
Когда я пробовал double, то почему-то выдавались вообще огромные числа (больше одного). Ошибка в чём-то другом, может я с циклами не так работаю. Но если ошибка и в этом, то тогда какой тип данных нужно использовать вместо float и double? |
19.03.2012, 09:34 | #5 |
Форумчанин
Регистрация: 24.08.2011
Сообщений: 138
|
Насчёт границ массива
Я бы его мог задать и не строго т.е. real*8 u(10,1), а как сторого задать граници массива в С++, так не получается u[0:10][0:1]
|
19.03.2012, 10:05 | #6 |
Форумчанин
Регистрация: 15.01.2010
Сообщений: 948
|
Вы первую часть моего предыдущего поста прочитали??!! Циферки, выделенные красненьким, заметили? В чём "не в этом"??!! Не в том, что у Вас в Фортране матрица 11 x 2, а в Си - 10 x 1? К какой строке матрицы u[][] Вы обращаетесь вот здесь
Код:
Код:
|
19.03.2012, 10:17 | #7 |
Форумчанин
Регистрация: 24.08.2011
Сообщений: 138
|
Я наверное туплю...
Представленный код на фортране работает, на C++ нет, значит ошибка из-за синтексиса! Что конкретно надо изменить? Я так понимаю массив u[10][1] ничем не отличается от u(0:10,0:1).
|
19.03.2012, 10:26 | #8 |
Форумчанин
Регистрация: 24.08.2011
Сообщений: 138
|
Всё теперь понятно
Границы массива надо задать u[11][2]
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
В форме не выводятся данные | AlexZZZ2010 | Общие вопросы .NET | 3 | 30.04.2014 18:03 |
В Access 2010 в отчете неправильно выводятся данные | proavg | Microsoft Office Access | 4 | 07.01.2012 09:29 |
Помогите,пожалуйста, решить дифференциальное уравнение | Emi | Свободное общение | 1 | 22.05.2009 17:36 |
Почему данные не сохраняются или не выводятся? | SnowFall | Помощь студентам | 4 | 12.05.2009 01:21 |