IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Линейный вектор и матрицы...
сообщение
Сообщение #1


Гость






Привет!
Я вот продолжаю со своей лаюой (уже седьмой!) мучится:
"Разработать программу размещения верхней трехдиагональной матрицы, вулючая побочную диагональЮ, в линейном вектор; Подпрограмму суммирования эллементов с не нулевой дробной частью в заданном столбце, при этом подпрог-а должна работать с линейным представлением матрицы... sad.gif
Вот что я сделалЖ (та матрица на экране - это точно правильно, но вот как определить где именно в векторе эл-ты столбца я не знаю sad.gif ) Help!!!

Код
program laba7;
uses crt;
const
m1=6;
n=9;

type
matrix=array[1..m1,1..n] of real;
vector=array[1..100] of real;
var
i,j,c,q,q1,q2,q3:integer;
m:matrix;
v:vector;


procedure viv;
var
x1,y1,q,q1,q2:integer;
begin
y1:=2;
x1:=2;
q:=n;
q1:=m1;
q2:=1;
    for i:=1 to m1 do
    begin
         for j:=1 to n do
         begin
         gotoxy(x1,y1);
             if (j>=q1) and (j<=q) and (j>=q2) then
             begin
             gotoxy(x1-1,y1);
             write(m[i,j]:2:1);
             end
             else
             begin
             write('*');
             end;
         x1:=x1+6;
         end;
    q1:=q1-1;
    q:=q-1;
    q2:=q2+1;
    y1:=y1+5;
    x1:=x1-6*n;
    end;
end;

procedure vect;
var
q,q1,q2,c:integer;
begin
q:=n;
q1:=m1;
q2:=1;
c:=1;
    for i:=1 to m1 do
    begin
         for j:=1 to n do
         begin
             if (j>=q1) and (j<=q) and (j>=q2) then
             begin
             v[c]:=m[i,j];
             c:=c+1;
             end;

         end;
    q1:=q1-1;
    q:=q-1;
    q2:=q2+1;
   end;
end;



begin
randomize;
clrscr;
{vvod matrici}
 for i:=1 to m1 do
 begin
    for j:=1 to n do
    begin
    m[i,j]:=random(50)/2;
    end;
 end;

viv;
vect;

for i:=1 to 20 do
begin
writeln(v[i]:10:1);
end;

readkey;
end.


Сообщение отредактировано: volvo -
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Какая она трехдиагональная матрица??
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Спасибо, за помощь sad.gif

Это не я придумывал, мне препод такую дрянь нарисовал и сказал что это она и есть sad.gif
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 23.09.2020 17:10
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name