Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Вниз

Pascal   Найти похожие ветки 

 
Defunct ©   (2004-11-17 04:22) [40]

> Тоже самое, но чтобы
> if First > max then First := 0

или еще тупее:
First := First * byte( First <= Max );


 
Defunct ©   (2004-11-17 04:33) [41]

> First:=First+1;
> if First>max then
> First:=1

 First := 1+(First * byte(First < Max));


 
Pat ©   (2004-11-18 12:06) [42]

Defunct ©   (17.11.04 0:30) [36]
Это уже олимпиадная задачка. Больше интересуют задачи на формат данных, хранение в памяти (например то, что в памяти вначале записываются младшие байты для word, integer) и т.д.
>jack128 ©   (17.11.04 1:53) [37]
Напиши как.. :)


 
_Lucky_   (2004-11-18 23:35) [43]

Pas
First := (byte (Not ((First + 1) > Max))) * (First + 1) + (byte (((First + 1) > Max)));
- хрен разберешь, предидущие решения куда приятнее :-)

C++
nFirst = (((nFirst+1) > nMax) ? (1) : (nFirst+1));


 
Defunct ©   (2004-11-19 01:16) [44]

_Lucky_  
А [40] видели.
First := First * byte( First <= Max );

Pas все таки лучше.


 
Кто---то ©   (2004-11-19 03:09) [45]


> Тестировщица ©   (12.11.04 21:26) [13]
> Verg ©   (12.11.04 21:07) [6] Может, лучше  так:
> First:=(First mod max)+1;

Между прочим на ассемблере это шесть команд, а вариант со сложением и условием только пять. Кроме того понятность и читаемость кода с условием и прибавлением единицы куда выше, чем этой формулы.


 
SergP ©   (2004-11-19 05:13) [46]


>  [32] Pat ©   (16.11.04 23:20)
> >SergP ©   (16.11.04 22:21) [31]
> Строки одинаковой длины? :-)


Допустим имеются две нуль-терминальных строки (pchar) одинаковой длины.

Дополнительных переменных не использовать совсем.


 
Pat ©   (2004-11-20 00:32) [47]

Извините за долгое отсутствие - жена, работа.. :)
>SergP ©   (19.11.04 5:13) [46]
var p1,p2:PChar;
begin
p1:="В лесу родилась елочка";
p2:="В лесу она росла";
showmessage(p1+#13+p2);
p1:=pointer(integer(p1) xor integer(p2));
p2:=pointer(integer(p1) xor integer(p2));
p1:=pointer(integer(p1) xor integer(p2));
showmessage(p1+#13+p2);
end;


 
default ©   (2004-11-20 00:50) [48]

First := Byte(First + 1 <= max) * First + 1


 
Defunct ©   (2004-11-20 01:28) [49]

default ©   (20.11.04 00:50) [48]

[41]
на одно сложение меньше


 
default ©   (2004-11-20 01:36) [50]

Defunct ©   (20.11.04 01:28) [49]
да, не принципиально
но вряд-ли в книге такой изврат имелся ввиду скорее просто if


 
Кто---то ©   (2004-11-21 02:39) [51]

А такое задание.
Можно ли одной формулой сделать следующее :

if      v >  77 then v :=  77
else if v < -77 then v := -77;


 
GuAV ©   (2004-11-21 02:44) [52]

Кто---то ©   (21.11.04 2:39) [51]
:)
v := v * ord(abs(V) < 77) + ord(abs(v) >= 77) * 77 * sign(v);


 
Кто---то ©   (2004-11-21 03:17) [53]


> GuAV ©   (21.11.04 02:44) [52]
> Кто---то ©   (21.11.04 2:39) [51]
> :)
> v := v * ord(abs(V) < 77) + ord(abs(v) >= 77) * 77 * sign(v);


С логическими операторами и дурак сделает.


 
KilkennyCat ©   (2004-11-21 03:26) [54]


> Кто---то ©   (21.11.04 03:17) [53]


> С логическими операторами и дурак сделает.


то есть, если я не смогу, я - вообще даун?
нафига спрашивали, если такой умный.


 
Кто---то ©   (2004-11-21 04:19) [55]

Ну, чего никто не может ?
А используя всякие and or xor и т п ?


 
jack128 ©   (2004-11-21 12:36) [56]

Pat ©   (18.11.04 12:06) [42]
вот примерно так:
Pat ©   (20.11.04 0:32) [47]

;-)



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

Форум: "Основная";
Текущий архив: 2004.12.05;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.54 MB
Время: 0.037 c
14-1100533327
grig_p
2004-11-15 18:42
2004.12.05
Посоветуйте по поводу моющего пылесоса


1-1100808505
xkiller
2004-11-18 23:08
2004.12.05
Как программно свернуть popupmenu?


14-1100521065
Vlad Oshin
2004-11-15 15:17
2004.12.05
Поможите найти ГОСТы на хранение орг.техники?


1-1100942077
viksoft
2004-11-20 12:14
2004.12.05
Как работать с конверторами CNV


1-1101306761
makingoff
2004-11-24 17:32
2004.12.05
открытие проги из списка "открыть с помощью"





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский