Ошибка преобразования типа real к word - PascalABC.NET
Формулировка задачи:
в ниже написанной программе, в строках "x:= V*it*cos(alpha); и y:= (V*it*sin(alpha))-((g*it*it)/2);" вылетает ошибка: "Нельзя преобразовать тип real к word". как сделать так, чтобы программа начала работать?
Решение задачи: «Ошибка преобразования типа real к word»
textual
Листинг программы
program Traektoria; uses GraphABC; var x1, y1, x, y: integer; S, Vg, t, g, V, alpha, it: real; begin writeln('введите начальную скорость (м/с) '); readln(V); writeln('введите градусную меру угла наклона вектора скорости'); readln(alpha); alpha := alpha / (180 / pi); writeln('введите значение ускорения свободного падения'); readln(g); ClearWindow; Pen.Color := clBlack; Pen.Width := 3; Coordinate.OriginY := Window.Height; //ставим начало координат по Y в нижний левый угол окна Coordinate.SetMathematic; //Ставим "математическую" ось S := 2 * sqr(V) * sin(alpha) / g; Vg := V * cos(alpha); t := S / Vg / 2; x := 0; y := 0; it := 0; while it < t do begin it := it + 0.0000001; x1 := x; y1 := y; x := round(50*(Vg * it)); y := round(50*(V * it * sin(alpha) - g * sqr(it) / 2)); Line(x1, y1, x, y); end; end.
Объяснение кода листинга программы
Список элементов кода:
- Объявление переменных:
- x1, y1, x, y: integer;
- S, Vg, t, g, V, alpha, it: real;
- Ввод значений начальной скорости и угла наклона вектора скорости:
- writeln('введите начальную скорость (м/с) ');
- readln(V);
- writeln('введите градусную меру угла наклона вектора скорости');
- readln(alpha);
- alpha := alpha / (180 / pi);
- Ввод значения ускорения свободного падения:
- writeln('введите значение ускорения свободного падения');
- readln(g);
- Установка начального значения координат и цвета линии:
- ClearWindow;
- Pen.Color := clBlack;
- Pen.Width := 3;
- Coordinate.OriginY := Window.Height;
- Coordinate.SetMathematic;
- Расчет значения S и Vg:
- S := 2 sqr(V) sin(alpha) / g;
- Vg := V * cos(alpha);
- Расчет значения t:
- t := S / Vg / 2;
- Инициализация переменных x и y:
- x := 0;
- y := 0;
- Инициализация переменной it:
- it := 0;
- Цикл, который выполняется до тех пор, пока it меньше t:
- it := it + 0.0000001;
- x1 := x;
- y1 := y;
- x := round(50(Vg it));
- y := round(50(V it sin(alpha) - g sqr(it) / 2));
- Line(x1, y1, x, y);
- Завершение программы:
- end.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д