Найти значение функции. Программа завершается некорректно - C (СИ)
Формулировка задачи:
Помогите пожалуйста, ошибок компилятор не выдаёт, но винда аварийно завершает работу программы...что не так?
Вычислить значение функции y = ae^(−ax)* sin(ωx) при x = (π / 2 −fi) /ω .
#include <stdio.h> #include <conio.h> #include <math.h> main() { double a,fi,omega; double x,y; const double pi = 3.1415926535; const double e = 2.71828183; printf("\n Enter a="); scanf("%d",a); printf("\n Enter fi="); scanf("%d",fi); printf("\n enter omega="); scanf("%d",omega); if (omega==0) { printf("Омега не должна быть меньше нуля"); } else{ x=(pi/2-fi)/omega; y=a*pow(e,-a*x)*sin(omega*x); } printf("\ny=%d",y); getch(); return 0; }
Решение задачи: «Найти значение функции. Программа завершается некорректно»
textual
Листинг программы
printf("\n Enter a="); scanf("%lf",&a); // ("%lf", &a) printf("\n Enter fi="); scanf("%lf",&fi); // ("%lf", &fi) printf("\n enter omega="); scanf("%lf",&omega); // ("%lf", &omega) if (omega==0) { printf("Омега не должна быть меньше нуля"); } else{ x=(pi/2-fi)/omega; y=a*pow(e,-a*x)*sin(omega*x); } printf("\ny=%f\n",y); // ("\ny=%f\n", y)
Объяснение кода листинга программы
- Программа запрашивает у пользователя ввод трех чисел: a, fi и omega.
- Если omega равно нулю, программа выводит сообщение об ошибке.
- В противном случае, программа вычисляет значение x и y.
- Значение y выводится на экран.