Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.17;
Скачать: CL | DM;

Вниз

Продолжение на тему For i:=1 to 10 do i:=i+1   Найти похожие ветки 

 
Петя   (2002-10-07 14:26) [0]

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

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.

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


 
still ©   (2002-10-07 14:29) [1]

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


 
McSimm ©   (2002-10-07 14:30) [2]

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


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

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

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

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



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

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

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

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

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


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

Ну не нравится тебе 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

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


 
denisww ©   (2002-10-07 14:49) [6]

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


 
denisww ©   (2002-10-07 14:54) [7]

а лучше так
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) [8]

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


 
still ©   (2002-10-07 14:56) [9]


> denisww © (07.10.02 14:54)


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


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

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


 
denisww ©   (2002-10-07 15:08) [11]

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


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

> 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 и еще массу полезного.

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

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



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

Текущий архив: 2002.10.17;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.018 c
1-56199
Weare
2002-10-07 17:32
2002.10.17
Сумма прописью


7-56378
Stuart
2002-08-09 15:22
2002.10.17
Серийный номер диска


14-56334
voronkov
2002-09-25 17:22
2002.10.17
Где найти компоненты QuantumGrid для Дельфи 6 от Developer Expres


3-55983
oleg_er
2002-09-25 16:01
2002.10.17
выбрать из таблицы с инфу ближайшей датой (раньше)


14-56326
Shadow
2002-09-23 21:42
2002.10.17
Кто я такой, и зачем живу?