Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.04.2011, 22:25   #1
PaVeL111
Пользователь
 
Регистрация: 08.06.2010
Сообщений: 18
По умолчанию Перегонка с Delphi на C#

Доброе время суток, помогите пожалуйста перегнать код с делфи на С#
Пpимеp иллюстpиpyет соpтиpовкy Шелла.

{===== Пpогpаммный пpимеp =====}
{ Соpтиpовка Шелла }
Procedure Sort( var a : seq);
Var d, i, t : integer;
k : boolean; { пpизнак пеpестановки }
begin
d:=N div 2; { начальное значение интеpвала }

while d>0 do begin { цикл с yменьшением интеpвала до 1 }

{ пyзыpьковая соpтиpовка с интеpвалом d }
k:=true;
while k do begin { цикл, пока есть пеpестановки }
k:=false; i:=1;
for i:=1 to N-d do begin
{ сpавнение эл-тов на интеpвале d }
if a[i]>a[i+d] then begin
t:=a[i]; a[i]:=a[i+d]; a[i+d]:=t; { пеpестановка }
k:=true; { пpизнак пеpестановки }
end; { if ... }
end; { for ... }
end; { while k }
d:=d div 2; { yменьшение интеpвала }
end; { while d>0 }
end;


Резyльтаты тpассиpовки пpогpаммного пpимеpа 3.9 пpедставлены в таблице

----------T---T-------------------------------------------------¬
¦ шаг ¦ d ¦ содеpжимое массива a ¦
+---------+---+-------------------------------------------------+
¦исходный ¦ ¦ 76 22 4 17 13 49 4 18 32 40 96 57 77 20 1 52 ¦
¦ 1 ¦ 8 ¦ 32 22 4 17 13 20 1 18 76 40 96 57 77 49 4 52 ¦
¦ 2 ¦ 8 ¦ 32 22 4 17 13 20 1 18 76 40 96 57 77 49 4 52 ¦
¦ 3 ¦ 4 ¦ 13 20 1 17 32 22 4 18 76 40 4 52 77 49 96 57 ¦
¦ 4 ¦ 4 ¦ 13 20 1 17 32 22 4 18 76 40 4 52 77 49 96 57 ¦
¦ 5 ¦ 2 ¦ 1 17 13 20 4 18 32 22 4 40 76 49 77 52 96 57 ¦
¦ 6 ¦ 2 ¦ 1 17 4 18 13 20 4 22 32 40 76 49 77 52 96 57 ¦
¦ 7 ¦ 2 ¦ 1 17 4 18 4 20 13 22 32 40 76 49 77 52 96 57 ¦
¦ 8 ¦ 2 ¦ 1 17 4 18 4 20 13 22 32 40 76 49 77 52 96 57 ¦
¦ 9 ¦ 1 ¦ 1 4 17 4 18 13 20 22 32 40 49 76 52 77 57 96 ¦
¦ 10 ¦ 1 ¦ 1 4 4 17 13 18 20 22 32 40 49 52 76 57 77 96 ¦
¦ 11 ¦ 1 ¦ 1 4 4 13 17 18 20 22 32 40 49 52 57 76 77 96 ¦
¦ 12 ¦ 1 ¦ 1 4 4 13 17 18 20 22 32 40 49 52 57 76 77 96 ¦
¦pезyльтат¦ ¦ 1 4 4 13 17 18 20 22 32 40 49 52 57 76 77 96 ¦
L---------+---+--------------------------------------------------
Зарание спасибо.
PaVeL111 вне форума Ответить с цитированием
Старый 17.04.2011, 22:47   #2
Пепел Феникса
Старожил
 
Аватар для Пепел Феникса
 
Регистрация: 28.01.2009
Сообщений: 21,000
По умолчанию

а зачем кросспостите?
я в вашей первой теме спросил что за тип seq
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.
Пепел Феникса вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
На Delphi 7 сделать игру кто хочет стать миллионером в delphi 7 666dart666 Помощь студентам 11 04.11.2010 17:57
Rad Studio 2011 XE: новое в Delphi, C++ Builder, RadPHP и Delphi Prism savva-paladin Софт 18 02.10.2010 20:24
Delphi. Как нарисовать в Delphi два движущиеся шара с определенной скоростью? redred Общие вопросы Delphi 10 11.12.2007 10:43
Как открыть БД, написанную в Delphi если нf другой машине Delphi нет? dagarik БД в Delphi 7 22.10.2007 17:54
не StringGrid1.Cells[1,1]:='Delphi'; а вот так SG1.C[1,1]:='Delphi' Nemesisking Компоненты Delphi 7 08.09.2007 03:27