![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
MyNameIs |
![]()
Сообщение
#1
|
Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: ![]() ![]() ![]() |
Не пойму, в чём ошибка при сортировке матрицы. Читаю из файла матрицу, всё ок. Но после сортировки на местах элементов появляются числа типа 15358. Помогите
![]() procedure k1(n:integer;x:mat;k2:string;var z:mat);
var i,j,l,k,t:integer;
b:array [1..10] of integer;
begin
if (k2='>') then begin
k:=0;
for i:=1 to n do
for j:=1 to n do begin
k:=k+1;
b[k]:=x[i,j];
end;
for l:=k downto 2 do
for i:=1 to k-1 do
if (b[i+1]>b[i]) then begin
t:=b[i];b[i]:=b[i+1];b[i+1]:=t;
end;
k:=0;
For i:=1 to n do
for j:=1 to n do begin
k:=k+1;x[i,j]:=b[k];
end;
end;
|
мисс_граффити |
![]()
Сообщение
#2
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
ты что делаешь?
у тебя запрет на изменение х. какой нафиг x[i,j]:=b[k];
?Сообщение отредактировано: мисс_граффити - 19.12.2006 22:12 -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
MyNameIs |
![]()
Сообщение
#3
|
Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: ![]() ![]() ![]() |
Так, и как это обойти?
|
мисс_граффити |
![]()
Сообщение
#4
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
procedure k1(n:integer;x:mat;k2:string;var z:mat);
либо писать var x: mat, либо результат записывать в непонятно для чего предназначенную z (второе - если хочешь сохранить в неприкосновенности исходный массив) -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
MyNameIs |
![]()
Сообщение
#5
|
Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: ![]() ![]() ![]() |
Не пойму, в чём ошибка при сортировке матрицы. Читаю из файла матрицу, всё ок. Но после сортировки на местах элементов появляются числа типа 15358. Помогите ![]() procedure k1(n:integer;x:mat;k2:string;var z:mat);
var i,j,l,k,t:integer;
b:array [1..10] of integer;
begin
if (k2='>') then begin
k:=0;
for i:=1 to n do
for j:=1 to n do begin
k:=k+1;
b[k]:=x[i,j];
end;
for l:=k downto 2 do
for i:=1 to k-1 do
if (b[i+1]>b[i]) then begin
t:=b[i];b[i]:=b[i+1];b[i+1]:=t;
end;
k:=0;
For i:=1 to n do
for j:=1 to n do begin
k:=k+1;x[i,j]:=b[k];
end;
for i:=1 to n do
for j:=1 to n do
z[i,j]:=x[i,j];
end;
Всё равно ругается ![]() |
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
Цитата Всё равно ругается Где, и (главное) - как ругается, покажи... |
MyNameIs |
![]()
Сообщение
#7
|
Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: ![]() ![]() ![]() |
1 2 3 4 5
2 2 2 2 2 0 0 0 1 5 4 4 4 4 4 8 5 0 0 3 моя матрица, читается из файла. вот что получается- 3 1 5 4 4 4 4 4 8 5 0 12 24932 4 3 15873 0 0 0 0 0 0 0 0 0 |
мисс_граффити |
![]()
Сообщение
#8
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
For i:=1 to n do
for j:=1 to n do begin
k:=k+1;x[i,j]:=b[k];
end;
for i:=1 to n do
for j:=1 to n do
z[i,j]:=x[i,j];
зачем??? For i:=1 to n do
for j:=1 to n do begin
k:=k+1;z[i,j]:=b[k];
end;
покажи, как вызываешь эту процедуру. то есть текст программы полностью приведи. -------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
MyNameIs |
![]()
Сообщение
#9
|
Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: ![]() ![]() ![]() |
это из юнита. procedure k1(n:integer;x:mat;k2:string;var z:mat);
var i,j,l,k,t:integer;
b:array [1..10] of integer;
begin
if (k2='>') then begin
k:=0;
for i:=1 to n do
for j:=1 to n do begin
k:=k+1;
b[k]:=x[i,j];
end;
for l:=k downto 2 do
for i:=1 to k-1 do
if (b[i+1]>b[i]) then begin
t:=b[i];b[i]:=b[i+1];b[i+1]:=t;
end;
k:=0;
For i:=1 to n do
for j:=1 to n do begin
k:=k+1;x[i,j]:=b[k];
end;
end;
if (k2='<') then begin
k:=0;
for i:=1 to n do
for j:=1 to n do begin
k:=k+1;
b[k]:=x[i,j];
end;
for l:=k downto 2 do
for i:=1 to k-1 do
if (b[i+1]<b[i]) then begin
t:=b[i];b[i]:=b[i+1];b[i+1]:=t;
end;
k:=0;
For i:=1 to n do
for j:=1 to n do begin
k:=k+1;x[i,j]:=b[k];
end;
end;
for i:=1 to n do
for j:=1 to n do
z[i,j]:=x[i,j];
end;
это сама прога program Modul;
uses crt,D11D;
var A,B,C,A1,B1,C1,T,T1:mat;
i,j,n,n11,s,v:integer;
ab,ac,ad:string;
l:string;
begin
clrscr;
write('ђ §¬Ґа(r)бвм ¬ ваЁжл = ');readln(n11);
ab:=('dk.dat');
ac:=('dk1.dat');
ad:=('dk2.dat');
vvod (ab,n11,n11,A);
vvod (ac,n11,n11,B);
vvod (ad,n11,n11,C);
l:='>';
{k1(n11,A,l,A1);
k1(n11,B,l,B1);
k1(n11,C,l,C1);}
sum(n11,A1,B1,T1);
sum(n11,T1,C1,T);
writeln('summarnaia Matrica');
Vivod(n11,n11,T);
readkey;
clrscr;
writeln('Matrica1');
{k1(n11,A,l,A1);}
Vivod(n11,n11,A1);
readkey;
clrscr;
writeln('Matrica2');
{k1(n11,B,l,B1);}
Vivod(n11,n11,B1);
readkey;
clrscr;
writeln('Matrica3');
{k1(n11,C,l,C1);}
Vivod(n11,n11,C1);
readkey;
end.
|
мисс_граффити |
![]()
Сообщение
#10
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
как описан тип mat?
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
MyNameIs |
![]()
Сообщение
#11
|
Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: ![]() ![]() ![]() |
|
мисс_граффити |
![]()
Сообщение
#12
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
а как ты пытаешься его запихнуть в b:array [1..10] of integer;?
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
MyNameIs |
![]()
Сообщение
#13
|
Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: ![]() ![]() ![]() |
|
мисс_граффити |
![]()
Сообщение
#14
|
![]() просто человек ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 3 641 Пол: Женский Реальное имя: Юлия Репутация: ![]() ![]() ![]() |
я просто не могу понять, как сунуть 100 элементов в 10 ячеек
-------------------- Все содержимое данного сообщения (кроме цитат) является моим личным скромным мнением и на статус истины в высшей инстанции не претендует.
На вопросы по программированию, физике, математике и т.д. в аське и личке не отвечаю. Даже "один-единственный раз" в виде исключения! |
MyNameIs |
![]()
Сообщение
#15
|
Новичок ![]() Группа: Пользователи Сообщений: 19 Пол: Мужской Репутация: ![]() ![]() ![]() |
я просто не могу понять, как сунуть 100 элементов в 10 ячеек Так, значит надо запихать 100 элементов в массив, там его пузырём а потом обратно в матрицу. Массив просто чтоль поменять? Так, значит надо запихать 100 элементов в массив, там его пузырём а потом обратно в матрицу. Массив просто чтоль поменять? Блин, с меня конфетка ![]() |
![]() ![]() |
![]() |
Текстовая версия | 17.07.2025 21:04 |