C/C++

Помогите исправить ошибку с С++ с отдельными переменными не понимаю где нужно прописать

#include <iostream>
using namespace std;
double Ns (int N1, int N2, int N3, int N4, int N5, int N6) // Интенсивность движения
{
return (N1 + N2 * 1.7 + N3 * 2 + N4 * 2.3 + N5 * 2.4 + N6 * 0.5);
}
double dt (int T, int Tz) // Время задержки на светофоре
{
return ((T - Tz) / 2);
}
double Nt (int v) // Пропускная способность
{
return ((3600 * v) / (v + 7 + 0.17 * v * v));
}
double Alfa (int L, int v, int dt) // Коэффициент влияния светофорного регулирования на теор.пропускную спообность
{
return (L / (L + v * v / 2 + (1 + 1 / 1.5)+ v * dt));
}
double Nr ( int Nt, int N, int Alfa) // Реальная пропускная способность
{
return (Nt * N * Alfa);
}
double Z (int Ns, int Nr) // Степень загруженности
{
return (Ns / Nr);
}
int main()
{
double N1, N2, N3, N4, N5, N6, L, v, T, Tz, N;
cout << " N1= ";
cin >> N1 ;
cout << " N2= ";
cin >> N2;
cout << " N3= ";
cin >> N3;
cout << " N4= ";
cin >> N4;
cout << " N5= ";
cin >> N5;
cout << " N6= ";
cin >> N6;
cout << " L= ";
cin >> L;
cout << " v= ";
cin >> v;
cout << " T= ";
cin >> T;
cout << " Tz= ";
cin >> Tz;
cout << " N= ";
cin >> N;
cout << Ns (N1,N2,N3,N4,N5,N6) << endl;
cout << dt (T,Tz) << endl;
cout << Nt (v) << endl;
cout << Alfa (L,v,dt) << endl;
cout << Nr (Nt,N,Alfa) << endl;
cout << Z (Ns,Nr) << endl;
system("pause");
}

/////////////////////
Ошибка
invalid conversion from 'double (*)(int, int)' to 'int' [-fpermissive]
55 | cout << Alfa (dt ,v,L) << endl;
| ^~
| |
| double (*)(int, int)
Иван ***
Иван ***
446
У тебя во многих функциях идёт вызов других функций без необходимых параметров.
Сами параметры имеет тип int, а вызываемые функции double.
Создай дополнительные переменные для хранения результатов вызова необходимых функций и измени параметры всех этих функций на double.


 #include  
using namespace std;
double Ns (double N1, double N2, double N3, double N4, double N5, double N6) // Интенсивность движения
{
return (N1 + N2 * 1.7 + N3 * 2 + N4 * 2.3 + N5 * 2.4 + N6 * 0.5);
}
double dt (double T, double Tz) // Время задержки на светофоре
{
return ((T - Tz) / 2);
}
double Nt (double v) // Пропускная способность
{
return ((3600 * v) / (v + 7 + 0.17 * v * v));
}
double Alfa (double L, double v, double dt) // Коэффициент влияния светофорного регулирования на теор.пропускную спообность
{
return (L / (L + v * v / 2 + (1 + 1 / 1.5)+ v * dt));
}
double Nr (double Nt, double N, double Alfa) // Реальная пропускная способность
{
return (Nt * N * Alfa);
}
double Z (double Ns, double Nr) // Степень загруженности
{
return (Ns / Nr);
}
int main()
{
double N1, N2, N3, N4, N5, N6, L, v, T, Tz, N;
cout > N1 ;
cout > N2;
cout > N3;
cout > N4;
cout > N5;
cout > N6;
cout > L;
cout > v;
cout > T;
cout > Tz;
cout > N;
double nns = Ns(N1,N2,N3,N4,N5,N6);
double nnt = Nt(v);
double ndt = dt(T,Tz);
double nalpha = Alfa(L,v,ndt);
double nnr = Nr(nnt, N, nalpha);
cout
Калыс Кичинебатыров
Калыс Кичинебатыров
9 833
Лучший ответ
double Alfa (int L, int v, int dt); ПРОТОТИП ФУНКЦИИ три параметра int А ПОЛУЧАЕТ ФУНКЦИЯ cout << Alfa (L,v,dt) << endl; ПАРАМЕТРЫ double ТАК КАК ОБЪЯВЛЕНИЕ double N1, N2, N3, N4, N5, N6, L, v, T, Tz, N; ПРИ ЭТОМ dt ЭТО ФУНКЦИЯ ВЫЗЫВАЕТСЯ ВООБЩЕ БЕЗ ПАРАМЕТРОВ!!!!! Ты лепишь не понимая что и как и почему
Дулат Рамазанов проще с нуля делать так, как будет более или менее понятно и работоспособно, но не исправлять твою версию