Освоение технологии структурного программирования при разработке и создании программы на языке Турбо Паскаль для ветвящегося вычислительного процесса
по дисциплине
“Основы программирования и алгоритмические языки”
ВЫПОЛНИЛ:
студент группы КС-06-1
Иванов И.И.
ПРОВЕРИЛ:
ассистент кафедры ПЗКС
Шевцова О.С.
Днепропетровск
2006
1. Условие задачи:
Даны два вектора (x1,y1)и (x2,y2). Вычислить длины этих векторов и определить, во сколько раз вектор длиннее или короче вектора .
2. Решение задачи в её предметной области:
Длины векторов вычисляются по формулам:
|
(3) |
где и проекции вектора a на оси x и y соответственно.
Имеем следующие соотношения:
(a/b) > 1 a длиннее b;
(a/b) = 1 a равно b; (этот случай не рассматриваем)
(a/b) < 1 a короче b.
3. Псевдокод алгоритма программы
Вывести на экран приглашение для ввода x1
Ввести x1
. . .
Вывести на экран приглашение для ввода y2
Ввести y2
Вычислить длину вектора
Вычислить длину вектора
Вычислить отношение длины a к b – ab
ЕСЛИ ab > 1.0 ТО
Напечатать: «a длиннее b в ab раз»
ИНАЧЕ
Вычислить отношение длины b к a – ab
Напечатать: «a короче b в ab раз»
4. Текст программы с подробными комментариями и отступами:
Program Vectors;
Uses Crt;
Var
a, { длина вектора a }
x1, { координата x вектора a }
y1, { координата y вектора a }
b, { длина вектора b }
x2, { координата x вектора b }
y2, { координата y вектора b }
ab : Real; { отношение длины вектора a к b }
BEGIN
ClrScr; { очищаем экран }
Write('Введите координату x1 вектора a = ');
ReadLn(x1);
Write('Введите координату y1 вектора a = ');
ReadLn(y1);
Write('Введите координату x2 вектора b = ');
ReadLn(x2);
Write('Введите координату y2 вектора b = ');
ReadLn(y2);
a := sqrt(sqr(x1)+ sqr(y1)); { Вычисляем длину вектора a }
b := sqrt(sqr(x2)+ sqr(y2)); { Вычисляем длину вектора b }
ab := a/b; { Вычисляем отношение длины a к b }
if (ab > 1.0) then
WriteLn('a длиннее b в ', ab:4:2, ' раз')
else
begin
ab := b/a; { Вычисляем отношение длины b к a }
WriteLn('a короче b в ', ab:4:2, ' раз')
end;
ReadLn;
END.
5. Результат работы программы (рис. 1)
6. Исследование и тестирование программы (рис. 2, 3)
Тестовый пример для нашей задачи будет включать два варианта:
1. (0, 9) и (0, 4) – вектор длиннее вектора .
2. (0, 4) и (0, 9) – вектор короче вектора .