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

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

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

 
 Ответить  Открыть новую тему 
> проверти задачку
DianaDeetz
сообщение 28.10.2012 16:17
Сообщение #1





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

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


с помощью процедур решить задачу .
В заданной прямоугольной матрице поставить на первое место столбец с наименьшим количеством нулевых элементов, переставив все нули в конец этого столбца. (Изменённая матрица должна содержать все элементы исходной матрицы).
................................... ................................... ...........................
Получается 3 процедуры:
1 в каждом столбце найти кол-во нулей
2 найти с наименьшим кол-ом нулевых элементов
3 встречная сортировка
................................... ................................... ..................
Вот что я накалякала....Помогите разобраться с ошибками(
................................... ................................... ..................
Program z4_3_3_4;
const M = 5; N = 4;
type matr = array[1..N, 1..M] of real;
var
I,j:integer;
a:matr;


procedure kolnul(a:matr; col: integer);
var
i:integer;
k:integer;
koln: integer;
begin
k := 0;
for i:=1 to m do
if a[i, col]=0 then
k := k + 1;
k := kolN;
end;


procedure minnul(var a:matr);
var i,j,minN:integer;
w:real;
begin
minN:=i;
for i:=1 to n do
begin
w:=a[i,minN];
a[i,minN]:=a[i,1];
a[i,1]:=w;
end;
end;

procedure sort(var a: matr);
var i,j,minN,kolN:integer;
begin
for i:=1 to N do
begin
writeln(i);
if a[i, 1] = 0 then
begin
j := i;
while (a[j,1] <> 0) or (j = n) do begin
writeln(j);
inc(j);
end;
a[i, 1] := a[j, 1]
end;
for i:=n downto n - kolN + 1 do
a[i, n] := 0;
end;
end;


begin
begin
writeln(' Введите матрицу ') ;
for i:=1 to n do
for j:=1 to m do
read(a[i,j]);
end;
procedure kolnul(a:matr; col: integer);
if col then procedure minnul(var a:matr);
end else begin procedure sort(var a: matr); write(a[i,j]:5:2);
writeln;
end;
end;

end.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



- Текстовая версия 23.06.2025 2:18
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"