Перевод С++ в Pascal

Узнай цену своей работы

Формулировка задачи:

Помогите перевести 2 кода
#include <iostream>
#include<cmath>
using namespace std;
int main() {
double a,b,k,x,M,N;
cin>>a>>b>>k>>x;
if(k>0)
{
    M=(a*b*x/sqrt(k)+2.84);
    if((x>=0)&&(exp(k*x)+0.54*a*b+pow(M,2)!=0))
    {N=(0.84*a*pow(b,3)*pow(sin(x),2)+sqrt(x)/exp(k*x)+0.54*a*b+pow(M,2));
    cout<<"N="<<N<<endl;
}
else cout<<"нет решений"<<endl;
}
else cout<<"нет решений k=0"<<endl;
    return 0;
}
#include <iostream>
using namespace std;
#include<cmath>
int main ()
{
    double x,y;
cin>>x;
if(x<0.15)
{
    y=pow(sin(x),2);
    cout<<"y="<<y<<endl;
}
else{
    if(x==0.15)
    if(2+pow(x,2)>0)
    {
        y=1+sqrt(2+pow(x,2));
        cout<<"y="<<y<<endl;
    }
    else count<<"нет решений"<<endl;
    else{
        y=pow(cos(1+pow(x,2)),2);
        cout<<"y="<<y<<endl;
    }
}
    return 0;
}

Решение задачи: «Перевод С++ в Pascal»

textual
Листинг программы
const
    EPS = 0.0001;
var
    a, b, k, x, temp: Real;
begin
    ReadLn(a, b, k, x);
    if (k > 0)
    then
    begin
        temp := Exp(k*x) + 0.54*a*b + Sqr(a*b*x / Sqrt(k) + 2.84);
        if ((Abs(temp) < EPS) And ((x > 0) Or (Abs(x) < EPS)))
        then
            WriteLn('не решений')
        else
            WriteLn('N=', (0.84*a*Sqr(b)*b*Sqr(Sin(x)) + Sqrt(x) / temp):0:2);
    end
    else
        WriteLn('нет решений k<=0');
end.

Объяснение кода листинга программы

  1. Объявляются переменные:    - a, b, k, x, temp типа Real
  2. Считываются значения переменных a, b, k, x с помощью функции ReadLn
  3. Выполняется проверка условия: если k больше 0, то
  4.    Вычисляется значение переменной temp по формуле: Exp(kx) + 0.54ab + Sqr(ab*x / Sqrt(k) + 2.84)
  5.    Выполняется проверка условия:         - Если абсолютное значение temp меньше чем EPS и x больше 0 или абсолютное значение x меньше чем EPS            то выводится сообщение не решений         - Иначе выводится значение выражения: N= и результат вычисления выражения (0.84aSqr(b)bSqr(Sin(x)) + Sqrt(x) / temp) с точностью до двух знаков после запятой
  6. Иначе выводится сообщение нет решений k<=0

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

8   голосов , оценка 4.375 из 5