Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Продолжение на тему For i:=1 to 10 do i:=i+1


Петя ©   (2002-10-07 14:26:00) 

Я вот как то делал программу

For i:=0 to 255 do
For j:=0 to 255 do
For k:=0 to 255 do
For l:=0 to 255 do
Чегото

Так вот это чегото делелось максимум 2000 раз в секунду (В DOS-e).
Нетрудно подсчитать что весь цикл пройдёт за 25 дней , а реально - у меня там ещё и прогноз был за 30 дней.

Сами понимаете не реально домашний компьютер оставить включёным на месяц (И даже не из-за перебоев с электричеством)

Так вот я в теле цикла перед выходом зхапоминал текущее значение переменных i,j,k,l а при запуске их востонавливал именно в теле цикла.
А как тогда быть в Delphi ? какие есть способы обойти это ограничение.

Я личено один знаю с помощью указателей и/или ф-ии move.

какие ещё будут предложения ?


Юрий Зотов   (2002-10-08 01:58:00) [1]

> denisww

По поводу For i:=1 to 10 do i:=i+1 читайте мой ответ здесь:
http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1033981875&n=0

А по поводу "как выдернуть правильно эти #13" - нажмите F1 и прочитайте все же описание того, чем пользуетесь. Вы найдете функции Pos, Delete, StringReplace и еще массу полезного.

А по поводу "дельфи уроды" - существуют люди, способные сломать даже металлический шарик. Но уверенные, что виноваты в этом не они, а шарик.

"И это меня бесит" - вот здесь я с Вами полностью согласен.


denisww   (2002-10-07 15:08:00) [2]

хихи кто понял напишите
кто непонял пока думаем на For i:=1 to 10 do i:=i+1


denisww   (2002-10-07 15:06:00) [3]

Хорошо
сталкнулся я на самом деле Вол стакой траблой
я беру *.xls
конвертирую в *.txt saveas
потом обрабатываю
и загоняю в xls обратно
скорость обработки возрасла в 1000 раз
но вот в тексте в пару ячейках попадаеться толи #13 толи #10
и сами понимаете строка обрываеться
aaaaaaaa#9bbbbbbbbbbb#9ccccccccccccccc#9ddddddddd#13ddddd#9
и это меня бесит
кто скажет как выдернуть правильно эти #13
потомучто это и есть конец строки
length(S)=aaaaaaaa#9bbbbbbbbbbb#9ccccccccccccccc#9ddddddddd


still   (2002-10-07 14:56:00) [4]


> denisww © (07.10.02 14:54)


а вот это называется БЕЙСИК и к дельфи никакого отношения не имеет :)


denisww   (2002-10-07 14:54:00) [5]

а лучше так
L1:a[1]:=1;
a[2]:=2;
a[3]:=3;
a[4]:=4;
a[5]:=5;
a[6]:=6;
a[7]:=7;
if a[7]=7 then goto L else L1;

эт чтоб наверняка


denisww   (2002-10-07 14:54:00) [6]

L: дельфи уроды


denisww   (2002-10-07 14:49:00) [7]

asm inc(i,200); end;
но это бред
и это может так завесить


V-A-V   (2002-10-07 14:46:00) [8]

Ну не нравится тебе While ... do
что тебе мешает завести еще переменных примерно так...
For i:=stsrt_i to 255 do
For j:=stsrt_j to 255 do
For k:=stsrt_k to 255 do
For l:=stsrt_l to 255 do

и присвояй их как тебе надо...


Петя   (2002-10-07 14:45:00) [9]

>>Sectey
Я уже точно не помню - но примерно следующее (Школьная задачка).
Нужно было на шахматной доске разложить шахматы что бы они там какомуто условию удовлетворяли - и это условие как раз в ЧЕГОТО проверялось.

конесно строк на шахматной доске 8 - и следовательно циклов должно было быть 8 - но тогда при той же скорости прога работала бы без останова около 300 миллионов лет. - Я так подумал что не дождусь и сократил в двое число циклов.

P.S: Была такя легенда - что изобретателю шахмат какойто кароль предложил что угодно в награду - изобретатель втветил что хочет зерна , причём за первую клетку 1 за вторую 2 потом 4 8 и т.д. Геометр прогрессися - кароль ещё было обяделся что тот попрасил так мало - а оказалось что это в несколько миллионов раз больше зерна чем всё человечество добыло и что чтолб зерна, если не ошибаюсь в 15 тыс км, достал бы до солнца. Вот Так.

А насщёт циклов While - вы конечно правы - просто я тогда второй месяц программирование занимался.


Sectey   (2002-10-07 14:34:00) [10]

инициализация переменных
i:=... ;
j:=... ;
k:=... ;
l:=... ;

тело цикла.
while i < 256 do
while j < 256 do
while k < 256 do
while l < 256 do
ЧЕГОТО

Я конечно не знаю но мне сложно представить задачу с такой системой вложенности циклов. Не секрет, что она делает.


McSimm   (2002-10-07 14:30:00) [11]

ода FORу:
...на тебе сошелся клином белый свет...


still   (2002-10-07 14:29:00) [12]

если while ... do не нравится - юзай ASM


Наверх

Титульная страница Поиск, карта сайта Написать письмо