Вниз
Скачать: CL | DM;

Телефон - нофелеТ   Найти похожие ветки 

 
Pat ©   (2003-07-17 22:09) [0]

Как перевернуть строку, не используя цикл?


 
Романов Р.В. ©   (2003-07-17 22:12) [1]

Используй рекурсию


 
panov ©   (2003-07-17 22:45) [2]

Никак.


 
Anatoly Podgoretsky ©   (2003-07-17 22:51) [3]

Романов Р.В. © (17.07.03 22:12)
Рекурсия особый вид цикла, частный случай


 
Palladin ©   (2003-07-17 22:51) [4]


function Reverse(const value:string):string;
begin
if value="" then result:="" else
if length(value)=1 then result:=value else
result:=value[length(value)]+Reverse(copy(value,1,length(value)-1));
end;


 
iXuSs   (2003-07-17 22:54) [5]

Используя Goto и метки.


 
DrPass ©   (2003-07-17 22:54) [6]


> Никак.

Оператор goto никто не отменял.
Вопрос в том, что считать циклом - любой повторяющийся участок программы, или конкретные операторы for, repeat и while.
Кроме того, можно ведь сделать и последовательно - если длина строки заранее известна


 
Palladin ©   (2003-07-17 22:55) [7]


> iXuSs (17.07.03 22:54)
> Используя Goto и метки.

в конечном итоге это все называется циклами... ибо присутствуют итерации

возможно автор имел ввиду без использования цикла for


 
Pat ©   (2003-07-17 23:06) [8]

Всем спасибо :)
Просто я имел ввиду какой-нибудь трюк с памятью (чтение наоборот)


 
Palladin ©   (2003-07-17 23:09) [9]

:) а трюком чтения в решеточку ты не интересовался? :)


 
Anatoly Podgoretsky ©   (2003-07-17 23:34) [10]

Pat © (17.07.03 23:06)
Тогда это к ассемблеру, команда MOVSB с установленным направлением, в данном случае мы можем считать что нет программного цикла, в этом случае он реализуется на аппаратном уровне.


 
Pat ©   (2003-07-18 02:19) [11]

>Anatoly Podgoretsky © (17.07.03 23:34)
Вот, достал в инете:

Команда: MOVSB .
Логика:
(ES:DI) = (DS:SI)
if DF = 0
SI = SI + 1
DI = DI + 1
else
SI = SI - 1
DI = DI - 1 .

Т.е. SI и DI уменьшаются или увеличиваются одновременно. А нужно, чтобы источкник уменьшался, а приемник увеличивался...Значит, без цикла никак :-\


 
Vlad Oshin ©   (2003-07-18 10:03) [12]

СХ то все равно используется :)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.012 c
1-100760
tovSuhov
2003-07-16 15:58
2003.07.31
TSaveDialog


1-100812
Школьник
2003-07-17 13:56
2003.07.31
Дизайнер формы


1-100743
alexts
2003-07-14 12:33
2003.07.31
Помогите в выборе метода решения


1-100816
@Ujin
2003-07-17 15:12
2003.07.31
В чем разница? : M2 := TMemo(M1) и M2 := (M1 as TMemo)?


1-100673
Sirus
2003-07-18 08:51
2003.07.31
Как в TStringGrid сделать выравнивание текста по правому краю???




   Наверх