PDA

Показать полную графическую версию : [решено] Найти ошибку


Vitaliy21
11-02-2013, 02:12
Здравствуйте, я новичок в программировании, помогите пожалуйста понять где допустил ошибку:

#include <stdio.h>
#include <math.h>
#define x1 2.6
#define x2 3.66
#define dx 1.5e-1
#define b 11.83
main ()
{
float x,y;
for(x=x1;x<=x2;x+=dx)
{
y=b*x*x=exp(x-1);
printf("\n y=%f x=%f",y,x);
}
getchar();
return 0;
}

Ругается на эту строку:
y=b*x*x=exp(x-1);

в результате должно получится такое вычисление:
Y=84.923828 X=2.600000
Y=95.218979 X=2.750000
Y=106.176201 X=2.900000
Y=117.816490 X=3.050000
Y=130.164230 X=3.200000
Y=143.247772 X=3.350000
Y=157.100037 X=3.500000
Y=171.759277 X=3.650000

torauma
11-02-2013, 08:28
Ругается на эту строку:
Код:
y=b*x*x=exp(x-1); »
Правильно и делает, что ругается. У вас два присваивания в одном выражении.

lxa85
11-02-2013, 08:54
y=b*x*x=exp(x-1); »
Двойное равенство. Система не может правильно интерпретировать эту строчку.
Разбейте на два действия, каждое в отдельную строчку.
Что то я не могу понять, что должно выражать это действие.

Vitaliy21
11-02-2013, 10:54
Правильно и делает, что ругается. У вас два присваивания в одном выражении. »
Разбейте на два действия, каждое в отдельную строчку. »
Спасибо за подсказку, там и не нужно разбивать на два действия, просто вместо второго равенства, нужно было поставить +




© OSzone.net 2001-2012