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

Массивы - C++

Восстановить пароль Регистрация
 
Soulan
0 / 0 / 0
Регистрация: 07.02.2011
Сообщений: 13
08.03.2011, 16:33     Массивы #1
C++
1
2
3
4
5
6
7
8
9
10
double i; 
 double R[99];
 for(i=0.01;i<1;i+0.01)
 {
 
 R=0.2679*(1-exp(8*M_PI*i))/(1-0.2679*0.2679*exp(8*M_PI*i)); cout<<"\n "<<R[i];
 
 }
 
 getch();
пишет ошибку illegal use of floating point
пробовал и через /n (n=1000) но все равно та же ошибка...
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
08.03.2011, 16:33     Массивы
Посмотрите здесь:

массивы C++
Массивы C++
C++ С++ массивы
C++ Массивы
C++ Массивы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Jupiter
Каратель
Эксперт C++
6543 / 3963 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
08.03.2011, 16:41     Массивы #2
переменная i должна быть целочисленной
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
08.03.2011, 16:42     Массивы #3
Цитата Сообщение от Soulan Посмотреть сообщение
for(i=0.01;i<1;i+0.01)
C++
1
for ( i = 0.01; i < 1.0; i += 0.01 )
Soulan
0 / 0 / 0
Регистрация: 07.02.2011
Сообщений: 13
08.03.2011, 16:50  [ТС]     Массивы #4
Цитата Сообщение от easybudda Посмотреть сообщение
C++
1
for ( i = 0.01; i < 1.0; i += 0.01 )
сделал, все равно та же ошибка... кстати я пишу на borland c++ если это играет роль
Jupiter
Каратель
Эксперт C++
6543 / 3963 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
08.03.2011, 16:57     Массивы #5
Цитата Сообщение от Soulan Посмотреть сообщение
сделал, все равно та же ошибка... кстати я пишу на borland c++ если это играет роль
кагбэ елемента массива R с индексом 0.01 не существует)

Добавлено через 1 минуту
C
1
2
3
4
5
6
7
double x = 0.01; 
double R[99];
for(unsigned i = 0; i < 100; i++, x += 0.01)
{
   R[i] = 0.2679 * (1 - exp(8 * M_PI * x)) / (1 - 0.2679 * 0.2679 * exp(8 * M_PI * x));
   cout<< endl << R[i];
}
Soulan
0 / 0 / 0
Регистрация: 07.02.2011
Сообщений: 13
08.03.2011, 17:01  [ТС]     Массивы #6
спасибо, понял
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
08.03.2011, 17:05     Массивы #7
Цитата Сообщение от Soulan Посмотреть сообщение
R=0.2679*(1-exp(8*M_PI*i))/(1-0.2679*0.2679*exp(8*M_PI*i));
Это, простите, как, если
Цитата Сообщение от Soulan Посмотреть сообщение
double R[99];
?

Добавлено через 1 минуту
Цитата Сообщение от Maxwe11 Посмотреть сообщение
елемента массива R с индексом 0.01 не существует
да хуже того - там попытка указателю на массив значение типа double присвоить.
IrineK
Заблокирован
08.03.2011, 17:09     Массивы #8
Soulan,
сформулируйте, пожалуйста, что вы хотите сделать. Возможно, вы тогда сами поймете свою ошибку. В любом случае, помочь вам также будет легче.
Soulan
0 / 0 / 0
Регистрация: 07.02.2011
Сообщений: 13
08.03.2011, 21:46  [ТС]     Массивы #9
Цитата Сообщение от easybudda Посмотреть сообщение
Это, простите, как, если

?

Добавлено через 1 минуту

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

Добавлено через 2 минуты
Цитата Сообщение от IrineK Посмотреть сообщение
Soulan,
сформулируйте, пожалуйста, что вы хотите сделать. Возможно, вы тогда сами поймете свою ошибку. В любом случае, помочь вам также будет легче.
Моя ошибка была в том что я ПРОПУСТИЛ [i] после R в строчке когда писал формулу
ну и конечно массив х[i] вместо i[i] ))

Добавлено через 54 секунды
Цитата Сообщение от Maxwe11 Посмотреть сообщение
кагбэ елемента массива R с индексом 0.01 не существует)

Добавлено через 1 минуту
C
1
2
3
4
5
6
7
double x = 0.01; 
double R[99];
for(unsigned i = 0; i < 100; i++, x += 0.01)
{
   R[i] = 0.2679 * (1 - exp(8 * M_PI * x)) / (1 - 0.2679 * 0.2679 * exp(8 * M_PI * x));
   cout<< endl << R[i];
}
Вот здесь вы написали выводит только первый элемент R
а как мне сделать чтобы значение R "прогнать" от 0,01 до 1,00 ?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.03.2011, 10:04     Массивы
Еще ссылки по теме:

C++ массивы
C++ Массивы

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

Или воспользуйтесь поиском по форуму:
easybudda
Модератор
Эксперт С++
 Аватар для easybudda
9373 / 5423 / 914
Регистрация: 25.07.2009
Сообщений: 10,423
09.03.2011, 10:04     Массивы #10
Цитата Сообщение от Soulan Посмотреть сообщение
а как мне сделать чтобы значение R "прогнать" от 0,01 до 1,00 ?
C
1
2
3
4
double R[99];
int i;
for ( i = 1; i < 100; ++i )
  R[i-1] = 0.2679 * (1 - exp(8 * M_PI * ((double)i/100.0))) / (1 - 0.2679 * 0.2679 * exp(8 * M_PI * ((double)i/100.0)));
Yandex
Объявления
09.03.2011, 10:04     Массивы
Ответ Создать тему
Опции темы

Текущее время: 12:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru