Работа с функциями - C (СИ)
Формулировка задачи:
знаю что подобных заданий много, но я все равно не могу написать нужную функцию, прошу помощи
задание ниже на скриншоте:
требования к заданию: в функции мейн написать алгоритм счета функции, а вывести через свою функцию
Язык Си, выводить через принтф, вводить через сканф, считать через цикл
вот мой код, но тут черт ногу сломит:
буду очень признателен за любую помощь
#include <stdio.h> #include <conio.h> #include <math.h> float mathem(float f,float k); int main() { float x,a,b,c,x1; puts("vvedite x nach"); scanf("%f",&x); puts("vvedite x konech"); scanf("%f",&x1); puts("vvedite a"); scanf("%f",&a); puts("vvedite b"); scanf("%f",&b); puts("vvedite c"); scanf("%f",&c); float dx; dx=0.01; float f; int n=0,k=0; for( x;x<x1;x+0.01) { if( x<0 && b!=0) f=a-(x/(10+b)); else if(x>0 && b==0) f=(x-a)/(x-c); else f=3*x+2/c; n+1==k; k=n; return f; } getch(); return 0; } float mathem(float f,float k) { puts("tablica znachiniy"); int i; for(i=0;i<mathem(k);i++) printf("%f\n",mathem); getch(); return 0; }
vverh
Решение задачи: «Работа с функциями»
textual
Листинг программы
typedef float (*Function)(float, float, float, float, float); inline int equals(float a, float b, float epsilon) { return (fabs(a - b) < epsilon); } inline void swap(float *a, float *b) { float c = *a; *a = *b; *b = c; }
Объяснение кода листинга программы
- Создается тип функции
Function
, который представляет собой указатель на функцию, принимающую пять аргументов типаfloat
и возвращающую значение типаfloat
. - Определяется функция
equals
, которая принимает три аргумента типаfloat
и возвращает значение типаint
. Она используется для сравнения двух чисел с заданной точностью. - Определяется функция
swap
, которая принимает два аргумента типаfloat*
и меняет значения двух указателей наfloat
местами. - В основной части программы код, использующий эти функции, не представлен.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д