Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.96/26: Рейтинг темы: голосов - 26, средняя оценка - 4.96
1 / 1 / 0
Регистрация: 02.10.2009
Сообщений: 159

Вектора: даны вещественные n-мерные векторы x,y,z. найти(x+y)(x+z)

28.02.2010, 13:48. Показов 4970. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
с векторами никогда не работала, поэтому не понимаю как представить вектор в виде массива....помогите пожалуйста
Задание: даны вещественные n-мерные векторы x,y,z. найти(x+y)(x+z)
помогите с вводом и выводом векторов...а сумму и умножение я сама попытаюсь сделать....
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
28.02.2010, 13:48
Ответы с готовыми решениями:

Дан файл, компонентами которого являются n-мерные векторы. Векторы с наибольшим модулем перенести в конец файла
Дан файл, компонентами которого являются n-мерные векторы. Векторы с наибольшим модулем перенести в конец файла. Поясните пожалуйста что...

Дан файл, элементами которого являются n-мерные векторы. Векторы с наибольшим модулем перенести в конец файла
Вот имеется подобная программа (дали как пример...... в этой программе максимальные значения из каждого вектора копируются в конец этого...

Даны вещественные n-мерные векторы x,y,z. Найти xy+yz+xz
Люди спасайте....знаю что задача фигня но я запутался много где и уже неделю не знаю как все разгрести...Буду крайне благодарен за помощь ...

12
 Аватар для STL1te
7 / 6 / 5
Регистрация: 08.12.2009
Сообщений: 105
28.02.2010, 14:13
Я думал вектор это просто одномерный массив...
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
28.02.2010, 14:19
n-мерный вектор это просто линейный массив, n-его размерность.
Pascal
1
2
const n=10;
var x,y,z:array[1..n] of real;
Добавлено через 5 минут
Сумма векторов
Pascal
1
2
for i:=1 to n do
a[i]:=x[i]+y[i];
Скалярное произведение векторов
Pascal
1
2
3
s:=0;
for i:=1 to n do
s:=s+x[i]*y[i];
1
1 / 1 / 0
Регистрация: 02.10.2009
Сообщений: 159
28.02.2010, 17:16  [ТС]
ну вобщем я сделала...но не до конца...вот у меня такое выражение (x+y)(x+z)
я сделала прцедуру сложения(k), и функцию умножения(g) и записала в конце так
f
Pascal
1
:=g(k(x,y,q),k(x,z,w));
выдает ошибку:Недопустимая ссылка на процедуру или функцию
я так понимаю надо либо 2 функции делать либо 2 процедуры?....но у меня не получается сделать функцию сложения...
Pascal
1
2
3
4
5
6
7
8
function k(a,b:vector):real;
var
i:integer;
c:vector;
begin
for i:=1 to n do
c[i]:=a[i]+b[i];
k:=c[i]..
.так же нельзя написать?)
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
28.02.2010, 18:48
МаргаритаC, Кто Вам сказал что сложение векторов можно оформить функцией? Ведь массив не может быть результатом функции, только процедура.
Pascal
1
2
3
4
5
6
procedure Summ(a,b:vector;var c:vector);
var i:integer;
begin
for i:=1 to n do
c[i]:=a[i]+b[i];
end;
0
1 / 1 / 0
Регистрация: 02.10.2009
Сообщений: 159
28.02.2010, 20:32  [ТС]
у меня выдает ошибку....(я писала выше)
вобщем я пишу так
функция f-это скалярное произведение
функция g-сумма
итог выражение представила в виде
Pascal
1
K:=f(g(x,y,w),g(x,z,p));
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
28.02.2010, 21:03
МаргаритаC, Я кажется написал что сумму нельзя считать функцией, ибо сумма векторов не число, а вектор.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
procedure Summ(a,b:vector;var c:vector;n:integer);
var i:integer;
begin
for i:=1 to n do
c[i]:=a[i]+b[i];
end;
function Scal(a,b:vector;n:integer):real;
var s:real;
     i:integer;
begin
s:=0;
for i:=1 to n do
s:=s+a[i]*b[i];
Scal:=s;
end;
...................................
в программе
writeln('Сумма векторов А и В:');
Summ(a,b,c,n);
for i:=1 to n do
write(c[i],' ');
writeln;
write('Произведение=',Scal(a,b,n));
0
1 / 1 / 0
Регистрация: 02.10.2009
Сообщений: 159
28.02.2010, 21:20  [ТС]
эээ...да,это я перепутала слово...имея в виду процедуру)
а еще вопрос можно...если конечно я вас еще не достала...)))
Pascal
1
2
3
4
5
6
writeln('Сумма векторов А и В:');
Summ(a,b,c,n);
for i:=1 to n do
write(c[i],' ');
writeln;
write('Произведение=',Scal(a,b,n));
неодходимо до вводить еще одну переменную n...
и можно ли просто написать
Pascal
1
2
3
Summ(a,b,c);
Summ(a,d,v);
Scal(v,c);
не знаю как объяснить..просто кажется что у вас в программе отельно находится сумма и произведение...а мне ведь надо произведение сумм...
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
28.02.2010, 21:32
а мне ведь надо произведение сумм..
.
Надо сумму произведений. Вы хоть что-то прочитайте про вектора, нельзя же так.

Pascal
1
2
3
Summ(a,b,c);
Summ(a,d,v);
Scal(v,c);
Если размер массивов задан константой перед описанием типа,
const n=10;
то можно, если вводится, то нельзя
0
1 / 1 / 0
Регистрация: 02.10.2009
Сообщений: 159
04.03.2010, 20:43  [ТС]
только что дошло...почему Скалярное произведение векторов это
Pascal
1
2
3
s:=0;
for i:=1 to n do
s:=s+x[i]*y[i];

Если векторы в ортонормированном базисе заданы своими координатами,то да...высчитывается по вашей формуле...
Базис называется ортонормированным, если его векторы попарно ортогональны и равны единице.
Два вектора называются ортогональными, если угол между ними равен прямому углу...но не все же векторы ортогональны
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
04.03.2010, 20:50
МаргаритаC, Это у Вас или от большого ума, или от полного незнания. Ни в том ни в другом случае помочь не могу. Извините.
0
1 / 1 / 0
Регистрация: 02.10.2009
Сообщений: 159
06.03.2010, 18:24  [ТС]
к сожалению, скорее всего от второго))))))))

помогите пжл еще в одном) как ввести координаты векторов не так, как вы показали,а с помощью функции или процедуры?)
0
 Аватар для Eugeniy
3132 / 1325 / 156
Регистрация: 19.12.2009
Сообщений: 1,808
06.03.2010, 19:18
МаргаритаC, я так понял, что Вас смущает формула скалярного произведения, мол она работает только в ортонормированном базисе. Сразу скажу - это чистая правда. Только одно но. Не с тех источников Вы начинаете изучать вектора. В даном случае Вы путаете понятие базис и вектор.
Пространство с которым Вы здесь работаете действительно имеет ортоноримрованный базис, который состоит из векторов вида (0,...,1,...,0). И в этом пространстве Вы совершаете скалярное произведение векторов, которое имеет тот вид, который Вас смущал.
А вектора могут быть любыми и иметь такой произвольный вид, который допускает это пространство. В даном случае координаты могут быть любыми вещественными числами!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
06.03.2010, 19:18
Помогаю со студенческими работами здесь

Не могу исправить ошибку (даны два вектора, найти единичные векторы в направлении исходных)
Program vector; uses crt; type Vec=record x:integer; y:integer; z:integer; end; var a,b:Vec;

VBA. Даны два вектора. Определить, ортогональны ли эти векторы
Даны два вектора x={x1, x2, …, xn} и y={y1, y2, …, yn}. Определить, ортогональны ли эти векторы. VBA Excel. Т.е. их скалярное...

Даны квадратная матрица А порядка n, векторы x и y с n элементами. Получить вектор матрицы А на вектора(х+у)
Даны квадратная матрица А порядка n, векторы x и y с n элементами. Получить вектор матрицы А на вектора (х+у). фортраном занимаюсь не...

Даны векторы Z(6) и Y(6). Подсчитать сумму элементов вектора Z и количество пар, удовлетворяющих условию
Даны векторы Z(6) и Y(6). Подсчитать сумму элементов вектора Z и количество пар, удовлетворяющих условию Zi<Yi Вообще не понимаю,...

N-мерные вектора
неработает вывод и оператор = . помогите пожалуйста main.cpp #include "vector.h" int main() { int...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизита табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать контроль заполнения реквизита "ПричинаСписания". . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
Вывод данных в справочнике через динамический список
Maks 01.04.2026
Реализация из решения ниже выполнена на примере нетипового справочника "Спецтехника" разработанного в конфигурации КА2. Задача: вывести данные из ТЧ нетипового документа. . .
Программное заполнения текстового поля в реквизите формы документа
Maks 01.04.2026
Алгоритм из решения ниже реализован на нетиповом документе "ВыдачаОборудованияНаСпецтехнику" разработанного в конфигурации КА2, в дополнении к предыдущему решению. На форме документа создается. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru