Пример линейного алгоритма
Вычислить ,
при x=2,444, y=0,00869, z=-130, дожно быть получено: -0.49871.
Текст программы может иметь следующий вид:
#include <stdio.h>
#include <conio.h>
#include <math.h>
#define x 2.444
#define y 0.00869
#define z -130.0
void main(void)
{
double rezult,dop,a,b,c;
clrscr(); /* ОЧИСТКА ЭКРАНА */
puts(" ЛИНЕЙНАЯ ПРОГРАММА ");
dop=fabs(y-x);
a=pow(x,y+1)+exp(y-1);
b=1+x*fabs(y-tan(z));
c=0.5*pow(dop,2)-pow(dop,3)/3;
rezult=a/b*(1+dop)+c;
printf("\a\n ОТВЕТ: rezult=%lf, Press any key...", rezult);
getch(); /* ЗАДЕРЖКА ДО НАЖАТИЯ ЛЮБОЙ КЛАВИШИ */
}
Вычислить значение функции F. Предусмотреть вывод сообщения о том, по какой ветви происходило вычисление.
Текст программы может иметь следующий вид:
#include <conio.h>
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
#define A 1
#define C 3
double max(double m,double n) /* функция max с параметрами m и n */
{ /* для поиска максимального */
if (m>n) return m; /* значения */
else return n;
}
double min(double m, double n) /* функция min с параметрами m и n */
{ /* для поиска минимального */
if (m<n) return m; /* значения */
else return n;
}
void main()
{
double x,y,f; /* декларирование переменных x,y,f */
clrscr();
puts("Введите значения x и y");
scanf("%lf %lf",&x,&y); /* ввод значений х и у */
if ((x>0)&&(y<0))
{
f=(A*x+tan(C*y))/(5-2*x);
puts("F=(а*x+tg(c*y))/(5-2*x)");
}
else if ((x<0)&&(y>0))
{
f=max(pow(x,2.0/3.0),cos(y*y)); /* вызов функции max */
puts("F=max(pow(x,2/3),cos(y*y))");
}
else if ((x>0)&&(y>0))
{
f=min(0.5*x-2*pow(sin(y),2),exp(y)); /* вызов функции min */
puts("F=min(0.5*x-2*pow(sin(y),2),exp(y))");
}
else
{
puts("Функция F не определена\n Press any key...");
getch();
exit(1); /* ПРИНУДИТЕЛЬНОЕ ЗАВЕРШЕНИЕ ПРОГРАММЫ */
}
printf("ОТВЕТ: F=%lf,\n Press any key...\n",f); /* ВЫВОД РЕЗУЛЬТАТА */
getch();
}