Нарисовать график с кода этой программы С++ #include
#include
#define e 2.7
#define pi 3.14
using namespace std;
struct S
{
int T;
float deltaT;
int u0;
float k0;
float m;
int f0;
float h;
float C;
float tgDelta;
}
bool verifyStartEndTimePoint(float startValue, float endValue, float currentValue)
{
if (currentValue >= startValue || currentValue <= endValue)
return true;
return false;
}
float CalcU(const float u0, const float k0, const float m, float T, float k, float t)
{
float result;
if (verifyStartEndTimePoint(0, T / 4, t)) {
result = u0 * (1 - pow(e, (-k * t)));
}
else if (verifyStartEndTimePoint(T/4, T/2, t))
{
result = u0 * (1 - pow(e, (-k * (T / 4;
}
else if(verifyStartEndTimePoint(T / 2, T, t)) {
result = u0 * (1 - pow(e, (-k * t))) * pow(e, -k * (t - T / 2));
}
return result;
}
float CalcK(const float f0, const float k0, const float m, float T, float t)
{
float result;
if (verifyStartEndTimePoint(0, T / 2, t))
{
result = k0 * (1 + m*t);
}
else if (verifyStartEndTimePoint(T / 2, T, t)) {
result - k0 * (1 + m * (T / 2));
}
return result;
}
float CalcF(const float f0, const float h, float T, float t)
{
float result;
if (verifyStartEndTimePoint(0, T / 4, t))
{
result = f0 * (1 + h * t);
}
else if (verifyStartEndTimePoint(T/4, (3*T) / 4, t))
{
result = f0 * (1 + h * (T / 4));
}
else if (verifyStartEndTimePoint((3 * T) / 4, T, t))
{
result = f0 * (1 + h * (T / 4)) - f0 * pow(e, -h * (t - 3 / 4 * T));
}
return result;
}
float CalcP(float u, float f, float c, float tgDelta)
{
return pow(u, 2) * 2 * pi * f * c * tgDelta;
}
void GetInputData(vector vector, int T, float deltaT, int u0, float k0, float m, int f0, float h, float C, float tgDelta)
{
S s;
s.T = T;
s.deltaT = deltaT;
s.u0 = u0;
s.k0 = k0;
s.m = m;
s.f0 = f0;
s.h = h;
s.C = C;
s.tgDelta = tgDelta;
vector.push_back(s);
}
int main()
{
const int N = 3;
S strs[N];
/*GetInputData();
GetInputData();
GetInputData();*/
struct S2
{
float u;
float f;
float c;
float tgDelta;
float t;
};
tuple , int> Difference(vector s2, int t = 1)
{
vector finalval;
float currentP;
for (int i = 0; i <= 3; i++)
{
currentP = CalcP(s2[i].u, s2[i].f, s2[i].c, s2[i].tgDelta);
finalval.push_back(currentP);
}
return make_tuple(finalval, t++);
}
252
317
Ответы на вопрос:
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Информатика
-
elik2005.08.2022 11:00
-
ezio1928.05.2022 04:54
-
GGWPmen12.01.2021 08:48
-
va1k11.02.2023 22:50
-
Shafner77707.05.2021 23:13
-
ксения136121.01.2023 15:05
-
littlefoxy18.08.2020 06:14
-
small200507.05.2020 21:23
-
Joker12822326.11.2022 13:32
-
aekawahar17.11.2022 02:26
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.