Помогите пожалуйста с заданием на PASCAL, я не понимаю как реализовать это
Приложения:
BobbyFresnel:
Только тоже с var a :=
Ну или ReadArrReal для вещественных или ReadArrString для строк.
Программе пофигу, остальная часть не меняется.
Все же хотелось бы чет по проще.
Ладно, спасибо
Пожалуйста. А хотеть - оно не вредно.
Да уж)
Ну т.е. ты же не будешь пытаться меня убедить, что программа, которая в одной строчке подстраивается под любые хотелки с данными - это сложно?
Эть правильно. Именно так сейчас и пишутся современные программы. Чтобы при измении требований заказчика их можно было переориентировать в считанные минуты, а не месяцами переписывать. Такое время сейчас.
А школа - она безнадежно отстала. И учителя, и учебные программы, и идеи министерств образования.
Ответы
Ответ дал:
0
===== PascalABC.NET =====
procedure SortShell<T>(a: array of T);
where T: IComparable<T>;
// сортировка по Шеллу
begin
var n := a.Length;
var d := n div 2;
while d > 0 do
begin
var k := True;
while k do
begin
k := False;
for var i := 0 to n - d - 1 do
if a[i].CompareTo(a[i + d]) > 0 then begin
Swap(a[i], a[i + d]);
k := True
end
end;
d := d div 2
end
end;
begin
var a := ArrRandom(10, -20, 20); a.Println;
SortShell(a); a.Println
end.
Приложения:
Вас заинтересует
1 год назад
1 год назад
1 год назад
3 года назад
3 года назад
9 лет назад