берем любую матрицу [2*2].......[10*10] Приравневаем каждый столбец и строчку к матрице и сравниваем их .... в моем случае надо сравнить столбцы и выложить их с большего на меньший( в начале идет самый большой столбец потом средний и самый маленький). Для сравнения берем и прировняем каждый столбец к массиву ( складываем числа каждого массиваи сравниваем ( mas2>mas3>mas1 пример ) . вот
-UpRe_ID-
4.07.2007 17:49
Цитата(-UpRe_ID- @ 4.07.2007 13:35)
Тема такова:
берем любую матрицу [2*2].......[10*10] Приравневаем каждый столбец и строчку к матрице и сравниваем их .... в моем случае надо сравнить столбцы и выложить их с большего на меньший( в начале идет самый большой столбец потом средний и самый маленький). Для сравнения берем и прировняем каждый столбец к массиву ( складываем числа каждого массиваи сравниваем ( mas2>mas3>mas1 пример ) . вот
Забыл, используем функцию
Гость
5.07.2007 0:15
Цитата(-UpRe_ID- @ 4.07.2007 13:49)
Забыл, используем функцию
Ай нид хелп.... плиззз....
Гость
11.07.2007 14:21
Up, что никто не знает?
*за вознагрождение
volvo
11.07.2007 14:23
Цитата
что никто не знает?
При такой постановке вопроса - нет... Из того, что написано в первом посте понять ничего невозможно (в частности, что значит, по-твоему "Приравневаем каждый столбец и строчку к матрице ..."?)
Примеров наглядных тоже нет, так что...
Up
11.07.2007 14:49
Я объяснил так как ним пояснили....
Дело в том что нужно в матрице любого размера [1...10][1..10] нужно сравнить столбцы и выстроить их с наибольшего к наименьшему...
Вот сама программа (работает на матрице 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;
var i: integer; begin for i := 1 to n do sort_column(a, i); print(a);
sort_first_row(a); writeln; print(a); end.
Гость
11.07.2007 18:32
Цитата(-UpRe_ID- @ 4.07.2007 13:35)
Тема такова:
берем любую матрицу [2*2].......[10*10] Приравневаем каждый столбец и строчку к матрице и сравниваем их .... в моем случае надо сравнить столбцы и выложить их с большего на меньший( в начале идет самый большой столбец потом средний и самый маленький). Для сравнения берем и прировняем каждый столбец к массиву ( складываем числа каждого массиваи сравниваем ( mas2>mas3>mas1 пример ) . вот
воб ще то я написал что нуно использовать функцию..
volvo
11.07.2007 19:18
Вообще-то я НЕ ВИЖУ, куда тут запихать функцию, а поскольку ты объясняешь так, как объясняли тебе - то я делаю так, как научили меня: функция должна использоваться тогда, когда надо возвращать результат. Причем, результат одного из перечислимых типов, поскольку тема создана в разделе для Turbo Pascal (т.е., не матрицу, скажем). Что будем возвращать, не подскажешь? Нет? Тогда используй процедуру...
Гость
11.07.2007 19:41
ок, спб.) С меня кефир* ;)
только тему еще не надо закрывать.
Гость
17.07.2007 0:33
Я знаю почему функцию.... потому что задача коллективная..... МЫ(наша группа) должна написать прогу, которая полностью перебирает матрицу и по строкам и по столбцам..
Гость
18.07.2007 3:15
Напишите программу и пришлите ее текст на lex0mania@inbox.ru или gu.ru312@inbox.ru до 17:00 18,06,2007..... програмка не сложня..... очень даже легкая, мнесдыдно что я такое не могу написать..... плизз ай нид хелп.
remuneration is guaranteed
UpRe_ID
18.07.2007 3:20
пишем в личку
UpRe_ID
18.07.2007 16:08
а иожно написать по моей схеме берем матрицу н и м размеров..... потом приравниваем столбец к масиву с помощью функции сравниваем их и выстраиваем по порядку, т. е. с большего на наименьший..... вот .... Словарный запас в языке паскаля у меня маленький.... ну помогите п-та
UpRe_ID
19.07.2007 17:37
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.
помогите отыскать лексические ошибки
volvo
19.07.2007 17:47
Цитата
помогите отыскать лексические ошибки
Ты с синтаксическими сначала разберись...
UpRe_ID
20.07.2007 1:44
такс.... такая вот просьба можете сделать так чтоб в праграмме не сисла в столбцах менялись местами , а столбцы....
UpRe_ID
21.07.2007 20:46
Ай нид хелп, плизз..!!!!
compiler
22.07.2007 18:19
Цитата
Ты с синтаксическими сначала разберись...
вот это откомпилируется
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.
UpRe_ID
24.07.2007 18:36
Помогите оч нуна, почему то мне прога выдает только один столбец упорядочный по порядку,а по делу должно больше
UpRe_ID
24.07.2007 20:10
хелп почему так
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.