| 
| 
 | Вопрос # 6 424/ вопрос открыт / | 
 |  Доброго времени суток, эксперты!Ищу площадь фигуры, ограниченной тремя функциями, методом разбиения на прямоугольники.Среда Dev c++ , язык Си.Собcтвенно , сами функции :f1=2^x+1 f2=x^5 f3=(1-x)/3
 Чудо , что вышло у меня , не особо то и работает.В частности выдаёт ошибку "non-lvalue in assignment" в помеченных строках.
 В принципе программа должна работать и для других функций , если заменить соответствующие контстанты.Tсли одна из таких функций вдруг окажется делённой на x (5/x например) , то возникает проблема.Подскажите пожалуйста в чём я не прав и где неправильно реализовал метод.
 Так же как аргументировать что мы имели право использовать этот метод для решения задачи?
 Приложение:Переключить в обычный режим     #include <stdio.h>    #include <math.h>    #define a 1    #define b 2    double func1(double X)    {    return pow(x,5)-(1-x)/3; 2&3    }    double func2(double X)    {    return pow(2,x)+1-pow(x,5); 1&2    }    double func3(double X)    {    return pow(2,x)+1-(1-x)/3; 1&3    }    double func4(double X)    {    return pow(2,x)+1;    }    double func5(double X)    {    return pow(x,5);    }    double func6(double X)    {    return (1-x)/3;    }    int main()    {    double M, L, K, shag, EPSILON, n, k=0, S=0, i=0;    printf("EPSILON\n");    scanf("%lf",&EPSILON);    printf("Kol-vo rasbieniy\n");    scanf("%lf",&n);    M=a-((b-a)/(func1(b)-func1(a)))*func1(a);    while(fabs(func1(M))>EPSILON)    {    if(func1(a)*func1(M)<0)    {     }    else    {     }    M=a-((b-a)/(func1(b)-F1(a)))*func1(a);    }    L=a-((b-a)/(F2(b)-F2(a)))*F2(a);    while(fabs(func2(L))>EPSILON)    {    if(func2(a)*func2(L)<0)    {     }    else    {     }    L=a-((b-a)/(func2(b)-func2(a)))*func2(a);    }    K=a-((b-a)/(func3(b)-func3(a)))*func3(a);    while(fabs(func3(K))>EPSILON)    {    if(func3(a)*func3(K)<0)    {     }    else    {     }    K=a-((b-a)/(func3(b)-func3(a)))*func3(a);    }     for(i=1; i<=n; i++)    {    S=S+shag*(func4(K+i*shag));    }     for(i=1; i<=n; i++)    {    S=S+shag*(func5(M+i*shag));    }    printf ("%lf", S);    scanf("%lf", S);    return 0;    }
|  |   Вопрос задал: ВикторСС. (статус: Посетитель)Вопрос отправлен: 10 мая 2013, 15:45
 Состояние вопроса: открыт, ответов: 0.
 |  
 Мини-форум вопросаВсего сообщений: 4; последнее сообщение — 25 мая 2013, 15:00; участников в обсуждении: 3. 
|   | Вадим К (статус: Академик), 10 мая 2013, 15:52 [#1]:ну так a и b у Вас это просто числа (просто скрыты за define). А так как с++ компилятор не знает, как числу присвоить какое то значение, то вот он и ругается. Галочка "подтверждения прочтения" - вселенское зло. |  
|   | ВикторСС. (статус: Посетитель), 12 мая 2013, 20:14 [#2]:Могу конечно и в кицлы их переделать.А что скажете насчёт алгоритма? |  
|   | Толяныч (статус: 4-ый класс), 13 мая 2013, 11:46 [#3]: Цитата: Могу конечно и в кицлы 
 Не  надо !  Кицлы  пусть  остаются  кицлами, пафики -- пафиками.
 |  
|   | ВикторСС. (статус: Посетитель), 25 мая 2013, 15:00 [#4]:заззазазаззз лалки |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |