Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 28.11.2016
Сообщений: 4
1

Модуль для операций с векторами

28.11.2016, 16:23. Показов 1694. Ответов 7

Author24 — интернет-сервис помощи студентам
Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над векторами на плоскости: 1) сложение; 2) вычитание; 3) скалярное умножение векторов; 4) умножение вектора на число; 5) длина вектора.
Вектор представить типом «Запись» с полями X, Y: Real. Используя этот модуль, решить задачу:Дан массив А — массив векторов. Отсортировать его в порядке убывания длин векторов.



Модуль создал, осталось сортировка. Нужна помощь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
28.11.2016, 16:23
Ответы с готовыми решениями:

Составить подпрограммы для выполнения операций над векторами
Помогите сделать задачу!!! сделаите попроще!!!!составить подпрограммы для выполнения операций над...

модуль для работы с векторами
Народ, искал, но не нашел.. кто знает , где можно взять\скачать модуль для работы с векторами в...

Реализовать в виде модуля набор подпрограмм для выполнения операций над векторами
Доброе время суток. Прошу помощи опытных людей. Задача на Паскале по теме "Модули" Реализовать в...

Реализовать в виде модуля набор подпрограмм для выполнения операций над векторами
Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над векторами:...

7
Почетный модератор
64301 / 47596 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
28.11.2016, 16:24 2
Цитата Сообщение от JohnBlacko Посмотреть сообщение
Модуль создал,
Так выложи его код в тему.
0
0 / 0 / 0
Регистрация: 28.11.2016
Сообщений: 4
28.11.2016, 16:46  [ТС] 3
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
unit vect;
interface
type Vector=record
            x,y:real;
            end;
procedure Summa(a,b:Vector;var c:Vector);
procedure Razn(a,b:Vector;var c:Vector);
function Scal(a,b:Vector):real;
procedure UmnCh(var a:Vector;k:real);
Function Dlina(a:Vector):real;
implementation
procedure Summa;
begin
c.x:=a.x+b.x;
c.y:=a.y+b.y;
end;
procedure Razn;
begin
c.x:=a.x-b.x;
c.y:=a.y-b.y;
end;
function Scal;
begin
Scal:=a.x*b.x+a.y*b.y;
end;
procedure UmnCh;
begin
a.x:=a.x*k;
a.y:=a.y*k;
end;
Function Dlina;
begin
Dlina:=sqrt(sqr(a.x)+sqr(a.y));
end;
end.
0
Почетный модератор
64301 / 47596 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
28.11.2016, 17:10 4
JohnBlacko, А Паскаль у Вас какой? Турбо?
0
0 / 0 / 0
Регистрация: 28.11.2016
Сообщений: 4
28.11.2016, 17:12  [ТС] 5
Турбо. Но на АВС.NET тоже можно?
0
Почетный модератор
64301 / 47596 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
28.11.2016, 17:14 6
Можно, просто модуль написан для Турбо.

Добавлено через 1 минуту
А нет, я в простом АВС пробовал.
0
0 / 0 / 0
Регистрация: 28.11.2016
Сообщений: 4
28.11.2016, 17:14  [ТС] 7
Помогите пожалуйста с задачей. Никак не могу решить.
0
Почетный модератор
64301 / 47596 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
28.11.2016, 17:44 8
Модуль.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
unit vect;
interface
type Vector=record
            x,y:real;
            end;
procedure Summa(a,b:Vector;var c:Vector);
procedure Razn(a,b:Vector;var c:Vector);
function Scal(a,b:Vector):real;
procedure UmnCh(var a:Vector;k:real);
Function Dlina(a:Vector):real;
implementation
procedure Summa(a,b:Vector;var c:Vector);
begin
c.x:=a.x+b.x;
c.y:=a.y+b.y;
end;
procedure Razn(a,b:Vector;var c:Vector);
begin
c.x:=a.x-b.x;
c.y:=a.y-b.y;
end;
function Scal(a,b:Vector):real;
begin
Scal:=a.x*b.x+a.y*b.y;
end;
procedure UmnCh(var a:Vector;k:real);
begin
a.x:=a.x*k;
a.y:=a.y*k;
end;
Function Dlina(a:Vector):real;
begin
Dlina:=sqrt(sqr(a.x)+sqr(a.y));
end;
end.
Программа.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
uses vect;
const max=20;
var a:array[1..max] of Vector;
    n,i,j:byte;
    x:Vector;
begin
randomize;
repeat
write('Введите количество векторов от 2 до ',max,' n=');
readln(n);
until n in [2..max];
writeln('Исходные вектора');
for i:=1 to n do
with a[i] do
 begin
  x:=-5+10*random;
  y:=-5+10*random;
  write(i:2,'(x=',x:5:2,' y=',y:5:2,' dlina=',Dlina(a[i]):5:2,') ');
  if i mod 2=0 then writeln;
 end;
writeln;
//сортировка
for i:=1 to n-1 do
for j:=i+1 to n do
if Dlina(a[i])< Dlina(a[j]) then
 begin
  x:=a[i];
  a[i]:=a[j];
  a[j]:=x;
 end; 
writeln('Вектора в порядке убывания длин');
for i:=1 to n do
with a[i] do
 begin
  write(i:2,'(x=',x:5:2,' y=',y:5:2,' dlina=',Dlina(a[i]):5:2,') ');
  if i mod 2=0 then writeln;
 end;
end.
1
28.11.2016, 17:44
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.11.2016, 17:44
Помогаю со студенческими работами здесь

Программа и модуль для работы с векторами - не работает ни то, ни другое
вектор.7z - программа и модуль для роботы с векторами. не работает ни то ни другое дроби.7z -...

Реализовать в виде модуля набор подпрограмм для выполнения следующих операций над векторами
Нужно написать это на СИ! Реализовать в виде модуля набор подпрограмм для выполнения следующих...

Разработать модуль для выполнения операций с многочленами от одной переменной
Требуется разработать модуль для выполнения операций с многочленами от одной переменной. ...

Создать модуль, содержащий подпрограммы для осуществления операций над матрицами
A) Создать модуль, содержащий подпрограммы для осуществления операций над двумерными массивами...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru