|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
12.10.2010, 14:03 | #1 |
Новичок
Джуниор
Регистрация: 12.10.2010
Сообщений: 3
|
неприсваетвается значение переменной
Имеется следующий код
double *jz[6]; int i,j,k,ch,ch1; for (ch = 0; ch < band_count; ch++) jz[ch] = calloc(band_count, sizeof(complex)); jz[0][1] = I*csqrt(3)/2.0; jz[1][0] = -I*csqrt(3)/2.0; jz[1][2] = I; jz[2][1] = -I; jz[2][3] = I*csqrt(3)/2.0; jz[3][2] = -I*csqrt(3)/2.0; printf("jz = %g + i%g\n",creal(jz[0][1]) + cimag(jz[0][1])); по идее на печати должно быть выдано что-то типа 0 + i0.886 Это если вычислить руками. А выдается 0 + i6.282e-322, то есть очень похоже на машинный ноль. В чем может быть косяк. компилятор gcc под linux. |
12.10.2010, 20:18 | #2 |
Форумчанин
Регистрация: 28.01.2010
Сообщений: 224
|
1 на мой взгляд нет тела цикла
for (int i = 1, i==10, i++) {тело цикла }
всему свое время как зиме и весне
и каждому солнцу свой неба кусок |
13.10.2010, 06:25 | #3 |
Новичок
Джуниор
Регистрация: 12.10.2010
Сообщений: 3
|
а цикл там и не нужен. calloc же выделяет память и обнуляет её. а большая I это мнимая единица, она всегда не ноль по идее.
|
13.10.2010, 11:52 | #4 |
Новичок
Джуниор
Регистрация: 12.10.2010
Сообщений: 3
|
сам разобрался в проблеме. Я массив объявляю как double а работать с ним пытаюсь как с complex
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
значение переменной | ололошенько | Общие вопросы C/C++ | 2 | 05.09.2010 18:05 |
задано ли значение переменной | MadReason | Общие вопросы Delphi | 3 | 21.04.2010 00:21 |
Значение переменной | 4BlooD | Общие вопросы Delphi | 2 | 20.01.2010 16:09 |
Значение логической переменной | Shevali | Помощь студентам | 2 | 17.03.2009 22:41 |
как получить значение переменной | smoke888 | PHP | 3 | 20.06.2008 02:11 |