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

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

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

 
 Ответить  Открыть новую тему 
> Методы сортировки.....
сообщение
Сообщение #1


Новичок
*

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

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


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


Гость






perez
Насколько мне известно,
Цитата
сортировка методом просеивания
это другое название "Сортировки простыми вставками". Описание - в ФАКе

Цитата
поскольку элемент R, как бы "проникает" на положенный ему уровень, этот способ часто называют "просеиванием", или "погружением".


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


Новичок
*

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

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


Точно?)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






perez
Прочитай вот это... :yes:
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Новичок
*

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

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


Маленькая проблемка, мне для столбцов двумерной матрицы, че где нуно переделать?)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Пионер
**

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

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


В пирамидальной сортировке тоже что-то говорится о просеивании ... так что может быть и она ...

Сообщение отредактировано: Amro -


--------------------
Закон иудеев: Семь раз отмерь, один отрежь.
Закон экономии: Семь раз отмерь, семь раз отрежь.
Закон программиста: Семь раз отрежь, ошибся, отмерь.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






perez
То есть тебе надо сортировать каждый столбец в отдельности? Или что?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Amro
А по линку ходил (который я дал) ?
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Пионер
**

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

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


volvo
Пардон, не ходил, :yessss: однако там говорится что так называется способ, но как я понял не метод, а способ может присутствовать в разных методах smile.gif смотря что понимается в данном случае под просеиванием ....

Сообщение отредактировано: Amro -


--------------------
Закон иудеев: Семь раз отмерь, один отрежь.
Закон экономии: Семь раз отмерь, семь раз отрежь.
Закон программиста: Семь раз отрежь, ошибся, отмерь.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Новичок
*

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

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


Да, каждый столбец нужно отсортировать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Новичок
*

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

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


Народ, этот способ в факу н пашет..........прога выдает отсортированный массив со 2сэлемента, а первый эелемент меняет на ХРЕНЬ КАКУЮ ТУ)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Гость






perez
Это то, что нужно по условию задачи:
Код
const
 n = 4;
 m = 4;
type
 matrix = Array[1 .. n, 1 .. m] Of Integer;


Procedure Insert(Var ar: matrix; currCol: Integer; n: Integer);
Var i, j, T: Integer;
Begin
  For i := 1 To n do
    Begin
      T := ar[i, currcol];
      j := Pred(i);
      While (T < ar[j, currcol]) and (j >= 0) Do
        Begin
          ar[Succ(j), currcol] := ar[j, currcol]; Dec(j);
        End;
      ar[Succ(j), currcol] := T;
    End;
End;

const
 a: matrix =
   ((10,  9,  8,  7),
    ( 6,  5,  4,  3),
    (11, 12, 14, 16),
    (34, 23, 81, 11));
var
 i, j: integer;
begin
 For i := 1 to m do
   Insert(a, i, n);
 for i := 1 to n do
   begin
     for j := 1 to m do
       write(a[i, j]:5);
     writeln
   end;
end.


Цитата
Народ, этот способ в факу н пашет..........прога выдает отсортированный массив со 2сэлемента, а первый эелемент меняет на ХРЕНЬ КАКУЮ ТУ)

Программу можно посмотреть, в которой это произошло? И впредь воздерживайтесь от таких высказываний, т.к. ВСЕ методы сортировки проверены мной лично на примерно 25 тестах...

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


Ищущий истину
******

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

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


volvo, имхо у него индексация с нуля начинается..
smile.gif


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #14


Новичок
*

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

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


Вот майн прога, че в ней не правильно?
Код
program pr5;
uses crt;
type
ta = Array[1 .. 100,1..100] Of Integer;
Var i,n,j,m: Integer;
a : TA;
procedure p5(var a: ta; n,m: integer);
var
i,j,t,l : integer;
begin
for j:=1 to m do
  For i := 2 To n do
    Begin
      T := a[i,j];
      l := Pred(i);
      While (T < a[l,j]) and (l >= 0) Do
        Begin
          a[Succ(l),j] := a[l,j];
           Dec(l,j);
        End;
      a[Succ(l),j] := T;
    End;
    end;
begin
writeln('vvedite n');
read(n,m);
writeln('vvedite e-ti massiva');
for i:=1 to n do
for j:=1 to m do
read(a[i,j]);
p5(a,n,m);
for i:=1 to n do
begin
for j:=1 to m do
write(a[i,j]:5);
writeln;
end;
readkey;
end.


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


Новичок
*

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

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


Что то я не понял программу вольво если честно) Что такое currCol/?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #16


Гость






perez
1. В твоей программе -
Код

While (T < a[l,j]) and (l >= 0) Do
 Begin
   a[Succ(l),j] := a[l,j];
   Dec(l,j); { почему так? Должно быть просто Dec(l); }
End;


2. В моей программе: тебе же надо сортировать столбцы по отдельности, вот я и передаю в процедуру сортировки таблицу, и тот столбец, который надо сортировать на этом проходе. (CurrCol - Current Column - текущий столбец.)
 К началу страницы 
+ Ответить 
сообщение
Сообщение #17


Новичок
*

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

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


СПАСИБО VOLVO. ВСЕ РАБОТАЕТ) :thanks:
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 





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