Страница 1 из 1

Помогите криворукому нубу

Добавлено: 21 ноя 2013, 13:53
fivepointsgang
Учусь в универе, учат немного кодить, в общем надо заделать таблицу из аргументов и значений функции, шаг тоже найти, указывается х-начальное, х-конечное.
Вот мой первый вариант (указаны выдаваемые ошибки):

Код: Выделить всё

#include <stdio.h>
#include <math.h>
#include <conio.h>
int main()
{
float f,a,b,x,o,k,n,d,r;
r=0;
printf ("input x0,xk and n\n");
scanf ("%f%f%f",&o,&k,&n);
k-o/n=d;//-Lvalue required
do{
   r=r++;
   x=k+d;
   printf("%f\n",r);
   f=pow(pow(exp,a*x-b*sin(x)),1/3);
   printf("f(x)=%f,",f); //-type mysmatch in parameter '__x' in call to 'pow'
   }                                          
while (x<=n);
}//-function should return a value
Я не знаю как их исправить, помогите пожалуйста

Re: Помогите криворукому нубу

Добавлено: 21 ноя 2013, 14:33
somewhere
exp это не константа, а функция.
pow(E, X) = exp(X), соответственно pow(exp,a*x-b*sin(x)) => exp(a*x-b*sin(x))
k-o/n=d;-Lvalue required
В левой части выражение, которое не имеет определенного адреса, соответственно присвоить ему значение нельзя.
Возможно имелось ввиду d=k-o/n

Re: Помогите криворукому нубу

Добавлено: 21 ноя 2013, 21:58
fivepointsgang
somewhere писал(а):exp это не константа, а функция.
pow(E, X) = exp(X), соответственно pow(exp,a*x-b*sin(x)) => exp(a*x-b*sin(x))

В левой части выражение, которое не имеет определенного адреса, соответственно присвоить ему значение нельзя.
Возможно имелось ввиду d=k-o/n

Спасибо, помогло. Почти разобрался, вот так теперь основная часть выглядит:

Код: Выделить всё

do{
   r=r++;
   if(r<2) x=o;
   if(r>=2) x=x+d;
   f=pow(exp(a*x-b*sin(x)),1/3);
   printf(" ------------------ \n");
   printf("| %1.0f | %3.2f | %3.2f  |\n",r,x,f);
   }
while (r<=n-1);
Почему-то всегда выдает одинаковые почему-то в f всегда выдает 1

Re: Помогите криворукому нубу

Добавлено: 22 ноя 2013, 11:01
Хыиуду
Ну, цикл просто-таки напрашивается сделать с параметром:
for (r=0; r<n; r++) { /*тут весь остальной цикл*/}
И проверьте, чему равно d, сильно подозреваю, что 0

Re: Помогите криворукому нубу

Добавлено: 23 ноя 2013, 19:18
fivepointsgang
Хыиуду писал(а):Ну, цикл просто-таки напрашивается сделать с параметром:
for (r=0; r<n; r++) { /*тут весь остальной цикл*/}
И проверьте, чему равно d, сильно подозреваю, что 0

сделать-то надо было как раз с циклом do, задание такое, вообще я уже тут разобрался, но все равно спасибо