Ребята,срочно помогите!)Даю 100 баллов.Составить алгоритм решения задачи на языке C++ . В отчете предоставить три программы с разными операторами цикла (do ...while, while, for). В алгоритме и программе массивов не использовать.

Я здесь набросал все ,что мог, помогите доработать, написать до конца все эти операторы в одну программу,не получается.

#include <iostream>
#include <cstdlib>
#include <conio.h>
#include <math.h>

using namespace std;
int main()
{
float a,z,xn,xk,dx,R,max,min; float count=0,x;
a = 2.94;xn = 1.5;xk = 5.5;dx = 0.4;
while (xn <= xk)

for (x >= xn; x <= xk; x+=dx, dx = dx + 0.4)
{
do
{
z = a*pow((a*x*x*x*x*x*x*x/cos(a*a*a)+1,31),(1/5));
printf("X = %10f, Z = %10f n", x, z);
dx = dx + 0.4;
}
while (x <= xk);
return 0;
}
{
max = x;min = z;
if (x > max) max = x;
if (z < max) min = z;
if (count > 2) count = 0;
if (count == 2) printf("X = %10f, Z = %10f n", x, z); 
count=0; 
}
cout<<"max="<<max<<"t min="<<min<<"n";
cout<<"R="<<min-max<<"n";
system("PAUSE");
return 0;
}

Приложения:

Ответы

Ответ дал: fasalv
0
#include <iostream>
#include <cmath>

float func(float a, float x)
{
    return a * pow(a * pow(x, 7) / (cos(pow(a, 3)) + 1.31), 0.2);
}
int main()
{
    float xn = 1.5, a = 2.94, xk = 5.5, dx = 0.4;
    float x = xn;
    int i = 0;
    float min_ = func(a, xn), max_ = func(a, xn);
    std::cout << "WHILE: " << std::endl;
    while(x < xk)
    {
        if(min_ > func(a, x))
            min_ = func(a, x);
        if(max_ < func(a, x))
            max_ = func(a, x);
        ++i;
        if(i % 2 == 0)
            std::cout << x << " " << func(a, x) << std::endl;
        x += dx;
    }
    std::cout << "MAX - MIN: " << max_ - min_ << std::endl;
    std::cout << std::endl << "DO WHILE: " << std::endl;
    x = xn;
    i = 0;
    min_ = func(a, xn), max_ = func(a, xn);
    do
    {
        ++i;
        if(min_ > func(a, x))
            min_ = func(a, x);
        if(max_ < func(a, x))
            max_ = func(a, x);
        if(i % 2 == 0)
            std::cout << x << " " << func(a, x) << std::endl;
        x += dx;
    }
    while(x <= xk);
    std::cout << "MAX - MIN: " << max_ - min_ << std::endl;
    x = xn;
    i = 0;
    min_ = func(a, xn), max_ = func(a, xn);
    std::cout << std::endl << "FOR: " << std::endl;
    for(i = 1; x < xk; ++i)
    {
        if(min_ > func(a, x))
            min_ = func(a, x);
        if(max_ < func(a, x))
            max_ = func(a, x);
        if(i % 2 == 0)
            std::cout << x << " " << func(a, x) << std::endl;
        x += dx;
    }
    std::cout << "MAX - MIN: " << max_ - min_ << std::endl;
}
Ответ дал: fasalv
0
Остались вопросы - пишите в ЛС
Вас заинтересует