Максимальное и минимальное значение функции (работа с функциями) - C (СИ)
Формулировка задачи:
используя подпрограмму-функцию, найти ymin и ymax заданной функции
f(x)=x^3-x^2+ln(x)
Я только-только начинаю работать с функциями и не понимаю сделанных мной ошибок
Ошибки:
строка 12
строка 46
строка 47
/* èñïîëüçóÿ ïîäïðîãðГ*ììó-ГґГіГ*ГЄГ¶ГЁГѕ, Г*Г*éòè ymin ГЁ ymax Г§Г*Г¤Г*Г*Г*îé ГґГіГ*ГЄГ¶ГЁГЁ
f(x)=x^3-x^2+ln(x);*/
// include "stdafx.h"
#include <math.h>
#include <conio.h>
#include <stdio.h>
float FUNC (float x[5])
{
float y[5];
int i;
for(i=0;i<5;i++)
y[i]=pow(x[i],3)-pow(x[i],2)+log(x);
return y[5];
}
float MIN (float y[5])
{
int i;
float fmin;
fmin=y[0];
for(i=0;i<5;i++)
if(y[i]<fmin) fmin=y[i];
return fmin;
}
float MAX (float y[5])
{
int i;
float fmax;
fmax=y[0];
for(i=0;i<5;i++)
if(y[i]<fmax) fmax=y[i];
return fmax;
}
int main()
{
int i;
float x[5],y[5],min,max;
printf("vvedite elementi massiva\n");
for(i=0;i<5;i++)
{
printf("x%d = ",i+1); scanf("%f",&x[i]);
}
printf("\n");
printf("znachenie y dlya kajdogo x:\n");
for (i=0;i<5;i++)
printf("y%d = %6.2f (dlya x%d)",i+1,y[i],i+1);
max=MAX(y[5]);
min=MIN(y[5]);
printf("\n");
printf("ymin = %6.2f\n",min);
printf("ymax = %6.2f\n",max);
getch();
return 0;
}Решение задачи: «Максимальное и минимальное значение функции (работа с функциями)»
textual
Листинг программы
y[i]=pow(x[i],3.0)-pow(x[i],2.0)+log(x[i]);
Объяснение кода листинга программы
В данном коде происходит вычисление значений функции для каждого элемента массива x[i] и сохранение результатов в массиве y[i].
- В первой строке кода происходит вычисление значения функции для каждого элемента массива x[i] и сохранение результатов в массиве y[i]: y[i] = pow(x[i], 3.0) - pow(x[i], 2.0) + log(x[i]);
- Вторая строка кода не выполняется, так как в цикле for нет второй и последующих строк.
- Третья строка кода не выполняется, так как в цикле for нет третьей и последующих строк.
- Четвертая строка кода не выполняется, так как в цикле for нет четвертой и последующих строк.
- Пятая строка кода не выполняется, так как в цикле for нет пятой и последующих строк.
- Шестая строка кода не выполняется, так как в цикле for нет шестой и последующих строк.
- Седьмая строка кода не выполняется, так как в цикле for нет седьмой и последующих строк.
- Восьмая строка кода не выполняется, так как в цикле for нет восьмой и последующих строк.
- Девятая строка кода не выполняется, так как в цикле for нет девятой и последующих строк.
- Десятая строка кода не выполняется, так как в цикле for нет десятой и последующих строк.
- Одиннадцатая строка кода не выполняется, так как в цикле for нет одиннадцатой и последующих строк.
- Двенадцатая строка кода не выполняется, так как в цикле for нет двенадцатой и последующих строк.
- Тринадцатая строка кода не выполняется, так как в цикле for нет тринадцатой и последующих строк.
- Четырнадцатая строка кода не выполняется, так как в цикле for нет четырнадцатой и последующих строк.
- Пятнадцатая строка кода не выполняется, так как в цикле for нет пятнадцатой и последующих строк.
- Шестнадцатая строка кода не выполняется, так как в цикле for нет шестнадцатой и последующих строк.
- Семнадцатая строка кода не выполняется, так как в цикле for нет семнадцатой и последующих строк.
- Восемнадцатая строка кода не выполняется, так как в цикле for нет восемнадцатой и последующих строк.
- Девятнадцатая строка кода не выполняется, так как в цикле for нет девятнадцатой и последующих строк.
- Двадцатая строка кода не выполняется, так как в цикле for нет двадцатой и последующих строк.