
Помогите найти ошибки в программе Язык программы с++ Пожалуйста срочно #include #include
#include int main () //Лаб.работа 4 студента гр.3108 //Привалова Любовь Михайловна //Вариант 18 { printf("L.r.#4 Privalova L. 18-3108-19\n"); printf("*******************************\n"); double x,b,a,y,s; printf("x=");scanf("%1f",&x); printf("b=");scanf("%1f",&b); printf("a=");scanf("%1f",&a); y=(pow(exp,-b*t)*sin(a*t+b))-sqrt(abs(b*t+a)); s=b*sin(a*sqr(t)*cos(a*t))-1; printf("y=%1.4f\n",y); printf("s=%1.4f\n",s); printf("press and key"); getch();

Ответы на вопрос

#include <stdio.h>
#include <cmath>
#include <conio.h>
//Лаб.работа 4 студента гр.3108
//Привалова Любовь Михайловна
//Вариант 18
int main()
{
printf("L.r.#4 Privalova L. 18-3108-19\n");
printf("*******************************\n");
double x,b,a,y,s;
double t = 1; // У Вас t не описано, не знаю его значения
printf("x="); scanf("%1f",&x);
printf("b="); scanf("%1f",&b);
printf("a="); scanf("%1f",&a);
y=(exp(-b*t)*sin(a*t+b))-sqrt(abs(b*t+a)); // exp() ???
s=b*sin(a*sqrt(t)*cos(a*t))-1; // sqrt() ???
printf("y=%1.4f\n",y);
printf("s=%1.4f\n",s);
printf("press and key");
getch();
return 0;
}



В программе имеются следующие ошибки:
Отсутствует директива
#include <stdio.h>
для использования функций ввода/вывода стандартной библиотеки языка C.Вместо
scanf("%1f", &x)
и аналогичных строк, необходимо использоватьscanf("%lf", &x)
для считывания значения переменных типаdouble
. То же самое должно быть применено и дляb
иa
.В формулах вычисления
y
иs
вместоt
используется неверное значение. Вероятно, вам нужно использовать переменнуюx
вместоt
.Функции
pow
,exp
,sin
,sqrt
,abs
,sqr
не объявлены и не подключены. Необходимо добавить директиву#include <math.h>
для использования этих функций.Необходимо добавить символ новой строки
\n
перед строкой "press any key" для читаемости вывода.
Вот исправленный код:
cpp#include <stdio.h>
#include <math.h>
int main()
{
printf("L.r.#4 Privalova L. 18-3108-19\n");
printf("*******************************\n");
double x, b, a, y, s;
printf("x=");
scanf("%lf", &x);
printf("b=");
scanf("%lf", &b);
printf("a=");
scanf("%lf", &a);
y = (pow(exp(1), -b * x) * sin(a * x + b)) - sqrt(fabs(b * x + a));
s = b * sin(a * pow(x, 2) * cos(a * x)) - 1;
printf("y=%1.4f\n", y);
printf("s=%1.4f\n", s);
printf("Press any key\n");
getch();
return 0;
}
Обратите внимание, что в исправленном коде я использовал exp(1)
вместо exp
, так как exp
требует аргумент типа double
, а exp(1)
эквивалентно значения e
.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili