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

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

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

2 страниц V  1 2 >  
 Ответить  Открыть новую тему 
> Манипуляции с матрицей, матрица из массивов и действия над ними
сообщение
Сообщение #1


Гость






Тема такова:

берем любую матрицу [2*2].......[10*10]
Приравневаем каждый столбец и строчку к матрице и сравниваем их ....
в моем случае надо сравнить столбцы и выложить их с большего на меньший( в начале идет самый большой столбец потом средний и самый маленький). Для сравнения берем и прировняем каждый столбец к массиву ( складываем числа каждого массиваи сравниваем ( mas2>mas3>mas1 пример )
. вот rolleyes.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Гость






Цитата(-UpRe_ID- @ 4.07.2007 13:35) *

Тема такова:

берем любую матрицу [2*2].......[10*10]
Приравневаем каждый столбец и строчку к матрице и сравниваем их ....
в моем случае надо сравнить столбцы и выложить их с большего на меньший( в начале идет самый большой столбец потом средний и самый маленький). Для сравнения берем и прировняем каждый столбец к массиву ( складываем числа каждого массиваи сравниваем ( mas2>mas3>mas1 пример )
. вот rolleyes.gif


Забыл, используем функцию
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Цитата(-UpRe_ID- @ 4.07.2007 13:49) *

Забыл, используем функцию


Ай нид хелп.... плиззз.... mega_chok.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






Up,
что никто не знает?

*за вознагрождение
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Цитата
что никто не знает?
При такой постановке вопроса - нет... Из того, что написано в первом посте понять ничего невозможно (в частности, что значит, по-твоему "Приравневаем каждый столбец и строчку к матрице ..."?)

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


Гость






Я объяснил так как ним пояснили.... rolleyes.gif

Дело в том что нужно в матрице любого размера [1...10][1..10] нужно сравнить столбцы и выстроить их с наибольшего к наименьшему...

пример:
196 963
285 преобразуем- получаем 852
374 741

достаточно пояснил? rolleyes.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






Я объяснил так как ним пояснили.... rolleyes.gif

Дело в том что нужно в матрице любого размера [1...10][1..10] нужно сравнить столбцы и выстроить их с наибольшего к наименьшему...

пример:
196 963
285 преобразуем- получаем 852
374 741

достаточно пояснил? rolleyes.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Вот сама программа (работает на матрице 3*3)... Добавь ввод данных пользователем, и выбор размерности - будет работать так, как тебе нужно:

const
n = 3;
type
matrix = array[1 .. n, 1 .. n] of integer;

procedure sort_column(var ar: matrix; x: integer);
var i, j, T: integer;
begin
for i := 1 To n Do
for j := n downto i + 1 do
if ar[pred(j), x] < ar[j, x] then begin
T := ar[pred(j), x]; ar[pred(j), x] := ar[j, x]; ar[j, x] := T
end
end;

procedure sort_first_row(var ar: matrix);
var i, j, k, T: integer;
begin

for i := 1 To n Do
for j := n downto i + 1 do
if ar[1, pred(j)] < ar[1, j] then

for k := 1 to n do begin
T := ar[k, pred(j)]; ar[k, pred(j)] := ar[k, j]; ar[k, j] := T
end

end;

procedure print(const ar: matrix);
var i, j: integer;
begin

for i := 1 to n do begin
for j := 1 to n do write(ar[i, j]:3);
writeln;
end;

end;

const
a: matrix = (
(1, 9, 6), (2, 8, 5), (3, 7, 4)
);

var i: integer;
begin
for i := 1 to n do
sort_column(a, i);
print(a);

sort_first_row(a);
writeln;
print(a);
end.

 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Гость






Цитата(-UpRe_ID- @ 4.07.2007 13:35) *

Тема такова:

берем любую матрицу [2*2].......[10*10]
Приравневаем каждый столбец и строчку к матрице и сравниваем их ....
в моем случае надо сравнить столбцы и выложить их с большего на меньший( в начале идет самый большой столбец потом средний и самый маленький). Для сравнения берем и прировняем каждый столбец к массиву ( складываем числа каждого массиваи сравниваем ( mas2>mas3>mas1 пример )
. вот rolleyes.gif



воб ще то я написал что нуно использовать функцию.. nea.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Гость






Вообще-то я НЕ ВИЖУ, куда тут запихать функцию, а поскольку ты объясняешь так, как объясняли тебе - то я делаю так, как научили меня: функция должна использоваться тогда, когда надо возвращать результат. Причем, результат одного из перечислимых типов, поскольку тема создана в разделе для Turbo Pascal (т.е., не матрицу, скажем). Что будем возвращать, не подскажешь? Нет? Тогда используй процедуру...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Гость






ок, спб.)
С меня кефир* ;)


только тему еще не надо закрывать.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Гость






Я знаю почему функцию....
потому что задача коллективная.....
МЫ(наша группа) должна написать прогу, которая полностью перебирает матрицу и по строкам и по столбцам..
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Гость






Напишите программу и пришлите ее текст на lex0mania@inbox.ru или gu.ru312@inbox.ru
до 17:00 18,06,2007.....
програмка не сложня..... очень даже легкая, мнесдыдно что я такое не могу написать.....
плизз ай нид хелп.

remuneration is guaranteed
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской
Реальное имя: Че? зачем

Репутация: -  0  +


пишем в личку
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #15


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской
Реальное имя: Че? зачем

Репутация: -  0  +


а иожно написать по моей схеме берем матрицу н и м размеров..... потом приравниваем столбец к масиву с помощью функции сравниваем их и выстраиваем по порядку, т. е. с большего на наименьший.....
вот .... Словарный запас в языке паскаля у меня маленький....
ну помогите п-та rolleyes.gif give_rose.gif rolleyes.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #16


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской
Реальное имя: Че? зачем

Репутация: -  0  +


 program practic;
type
matrica= array [1..15,1..15] of real;
var a:matrica;
i, j, k, n , m : byte;
b:real;
begin
write ('m=');
readln (m);
write('n=');
readln (n);
for i:=1 to m do
for j:= to n do
begin
write (' a[',i,',',j,']=');
readln (a[i,j]);
end;
writeln(' matrica a');
for i:=1 to m do
begin
for j:=1 to n do
write (a[i,j] , '')
writeln
end;
for j:=1 to n do
for k:=1 m-1 do
for i:=1 to m-k do
if a[i,j]< a[i+1, j] then
begin
b:=a[i,j];
a[i, j];=a[i+1, j];
a[i+1,j];=b;
end;
writeln ('preobrazovanaya matrica a');
for i:=1 to m do
begin
for j:=1 to n do
write (a[i,j], ' ');
writeln;
end;
end.

помогите отыскать лексические ошибки wacko.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #17


Гость






Цитата
помогите отыскать лексические ошибки
Ты с синтаксическими сначала разберись...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #18


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской
Реальное имя: Че? зачем

Репутация: -  0  +


такс....
такая вот просьба можете сделать так чтоб в праграмме не сисла в столбцах менялись местами , а столбцы.... wink.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #19


Новичок
*

Группа: Пользователи
Сообщений: 13
Пол: Мужской
Реальное имя: Че? зачем

Репутация: -  0  +


Ай нид хелп,
плизз..!!!! give_rose.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #20


Человек
*****

Группа: Пользователи
Сообщений: 1 050
Пол: Мужской
Реальное имя: Станислав

Репутация: -  3  +


Цитата
Ты с синтаксическими сначала разберись...
вот это откомпилируется smile.gif
program practic;
type
matrica= array [1..15,1..15] of real;
var
a:matrica;
i, j, k, n , m : byte;
b:real;
begin
write ('m=');
readln (m);
write('n=');
readln (n);
for i:=1 to m do
for j:=1 to n do begin
write (' a[',i,',',j,']=');
readln (a[i,j]);
end;
writeln(' matrica a');
for i:=1 to m do begin
for j:=1 to n do
write (a[i,j] , '');
writeln;
end;
for j:=1 to n do
for k:=1 to m-1 do
for i:=1 to m-k do
if a[i,j]< a[i+1, j] then begin
b:=a[i,j];
a[i, j]:=a[i+1, j];
a[i+1,j]:=b;
end;
writeln ('preobrazovanaya matrica a');
for i:=1 to m do begin
for j:=1 to n do
write (a[i,j], ' ');
writeln;
end;
readln;
read;
end.



--------------------
Спасибо!
Удачи!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





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