Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.03.2013, 02:35   #1
lisica198808
Пользователь
 
Регистрация: 06.11.2012
Сообщений: 64
Вопрос too few arguments to .Как правильно исправить ?

Нужно найти точки перегиба функций

Больше всего ошибок too few arguments to function выбивает внутри функции

Код:
void tochki(float *proizv2(float,float),float xn,float xk,float dx)
на 32, 36, 38 строке
Понимаю что не все параметры передаю внутри функции, но как их правильно передать, если у меня значения

Код:
float xn,float xk
для исследуемых функций различны??если б для одной - можно было б прописать внутри функции присваивая, а в данном случае как поступить??
и на 38 строке ошибка non-lvalue in assignment - как исправить?


Код:
#include<stdio.h>
#include <math.h>
#include<stdlib.h>
float f1(float x)
{return ( (x*cos(x))/(1+pow(x,2)) );}//pervaja fynkcija dlja prome*ytka [-4 4]
 
float f2(float x)
{return pow(x,-1)*exp(x);}//vtoraja fynkcija dlja prome*ytka [-6 1]
 
 
 
 
float proiz1_f(float (*f)(float),float x)//pervaja proizvodnaja fynkcii
{
return (f(x+0.01)-f(x))/0.01;
}
 
float proiz2_f(float (*proiz1_f)(float,float),float x)//vtoraja proizvodnaja fynkcii
{
return (proiz1_f(f(x),(x+0.001))-proiz1_f(f(x),x))/0.001;
}
 
 void tochki(float *proizv2(float,float),float xn,float xk,float dx)// tochki peregiba fynkcii
 {float x1,y;int i;
 
  i=0;
  printf("____________________________\n");
  printf("|__shag__|___X___|____Y____|\n");
  for(x1=xn;x1<=xk;x1+=dx)
  {i++;
   proizv2(x1);
   printf("|___%d____|__%.1f__|_%.5f_|\n",i,x1,proizv2(x1));
  }     
 printf("\n");
  for(x1=xn;x1<=xk;x1+=dx)
  {   proizv2(x1);//esli f''(x0)=0 ili = beskonechnosti,
                     // to x0 - eto tochka peregiba v etoi fynkcii
     if(proizv2(x1)=0) printf("syshestvyet tochka peregiba fynkcii pri x=%.1f\n",x1);
  }
 
 
int main()
{tochki(f1,-4,4,0.5);
 tochki(f2,-6,1,0.5);
 system("pause");return 0;
}
lisica198808 вне форума Ответить с цитированием
Старый 17.03.2013, 03:32   #2
kventin_zhuk
БНТУ ФИТР
Форумчанин
 
Аватар для kventin_zhuk
 
Регистрация: 20.05.2012
Сообщений: 315
По умолчанию

Код:
#include<stdio.h>
#include <math.h>
#include<stdlib.h>

float f1(float x)// один агрумент
{
	return ( (x*cos(x))/(1+pow(x,2)) );
}
 
float f2(float x)// один аргумент
{
	return pow(x,-1)*exp(x);
}
 
float proiz1_f(float (*f)(float),float x)//pervaja proizvodnaja fynkcii
{
	return (f(x+0.01)-f(x))/0.01;
}
 
float proiz2_f(float (*proiz1_f)(float,float),float x)
{
	// откуда тут взялся f(x)??? у вас есть функции f1 && f2 , а f где?
	return (proiz1_f(f(x),(x+0.001))-proiz1_f(f(x),x))/0.001;
	 
}


// proizv2 у вас это вообще что????? что угодно, но не указатель на функцию.
void tochki(float* proizv2(float,float),float xn,float xk,float dx)// tochki peregiba fynkcii
{
	float x1,y;int i;
 
	i=0;
	printf("____________________________\n");
	printf("|__shag__|___X___|____Y____|\n");
	for(x1=xn;x1<=xk;x1+=dx)
	{
		i++;
		// так почему вы подаёте не 2 а один ?
		//proizv2(x1);
//		printf("|___%d____|__%.1f__|_%.5f_|\n",i,x1,proizv2(x1));
	}     
	printf("\n");
	for(x1=xn;x1<=xk;x1+=dx)
	{  
	//	proizv2(x1);
       // if(proizv2(x1)=0) printf("syshestvyet tochka peregiba fynkcii pri x=%.1f\n",x1);
	}
 
}
int main()
{
        // подаёте вместо функции с 2-мя аргументами функцию с одним.
	tochki(f1,-4,4,0.5);
	tochki(f2,-6,1,0.5);
	system("pause");
	return 0;
}
почитайте что-нибудь по функциям.
С++(console/builder/WinAPI/Linux), C#, Pascal, Delphi, Asm, Prolog.
< ----- Контакты
kventin_zhuk@live.com

Последний раз редактировалось kventin_zhuk; 17.03.2013 в 03:34.
kventin_zhuk вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать ограничение на перемещение? Или я не знаю как называется это правильно. (См. внутри) Делфи KotyaraYa Помощь студентам 5 17.12.2012 07:42
Дата записана как текст - как програмно исправить? riko_ltd Microsoft Office Excel 1 26.11.2012 08:01
Люди. Как сделать правильно? Прога работает, но не так, как надо. Должна генерировать лабиринты и находить путь из него SapHain Visual C++ 2 12.06.2012 09:15
как в Delphi присвоить полю DBEdit целочисленное значение поля из DBText (как правильно )? ГОСЕАН Помощь студентам 0 10.01.2012 06:12
Delphi7 создание формы Runtime, constants cannot be used as open array arguments BoozZzilla Помощь студентам 2 29.03.2011 17:27