[an error occurred while processing this directive]
"Для тех, кто утверждает, что удобочитаемость и "красота" программы - вещи не нужные, а главное, чтоб программа выполняла возлагаемые ею функции {Господин SM и иже с ним} привожу в теле этого топика скан из книги Т.А.Павловской <C/C++. Программирование на языке высокого уровня>. Надеюсь после этого ни у кого не останется сомнений, нужна ли "красота" {термин SM-а} в программе"...... ©Доктор ТуамОсес inc.
(«Телесистемы»: Конференция «Микроконтроллеры и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено ТуамОсес(который Доктор) 15 августа 2006 г. 13:49

если какое либо действие можно запрограммировать разными способами, то предпочтение должно отдаваться не наиболее компактному и даже не наиболее эффективному, а такому, который легче для понимания. Особенно это важно в том случае, когда пишут программу одни, а сопровождают другие, что является широко распространенной практикой. Если вы еще не прониклись приведенным выше тезисом, попробуйте разобрать-ся в приведенной ниже программе.

Несмотря на то, что на первый взгляд2 она кажется полнейшей абракадаброй, это программа на С, и она работает {Примечание Доктора ТуамОсеса: так как этот текст был отсканирован и распознан программой Fine Reader, то за 100%-ю безошибочность приводимой программы я не отвечаю - она лишь иллюстрация необходимости удобочитаемости программы}:


#include ,.
main (int t, int _, char *a){return!0main(-86,0,a+1)+a)): 1,t<_ ? main(t+l,_,a):3,main(-94,-27+t,a)&&t==2\
?_<13?main(2,_+1,"%s %d %d\n"):9:16:t<0?t<-72?
main(_,t,"@n' +,#' /*s{}w+/w#cdnr/+,{}r/*de}+,/*{*+,/w{%+,/w#q#n+,/#{l+,/n\
{n+./+#n+./# ;#q#n+./+k#;*+,/T : 'd*'3,}{w+K w'K: '+}e#' ;dq#'l q#'+d'K#!\
/+k#;q#'r}eKK#}Wr}eKK{nl]'/#;#q#n'){)#}w'){){m]7+#n';d}rw' i;# ){nl]!\
/n{n#':,r{#w'r nc{nl]7#{l. + 'K {rw' iK{;[{nl]7w#q#n'wk nw' iwk{KK{nl]!/\
w{ri##w#' i; :{nl]7*{q#'ld:r'}{nlwb!/*de}'c ; ;{.nl '-{}rw]7+.}##"*}\
#nc,',#nw]7+kd'+e}+;#Tdq#w! nr'/ ') }+}{n#'{n' ')#}'+}#(!!/")
:t<-50?_==*a?putchar(31[a]):
main(-65._..a+l):
main((*a==7')+t._.a+l):
0:*a==7'||main(0,main(-61,*a, >
"!ek;dc i(@bK'(q)-[w]*^n+r3#1 ,{}:\nuw1oca-0;m .vpbks.fxntdCeghiry"

Для тех, кто поленился набрать приведенный выше текст на клавиатуре, скомпилировать его и запустить программу на выполнение, приведу фрагмент ее вывода:


On the first day of Christmas my true love gave to me a partridge in a pear tree.
On the second day of Christmas my true love gave to me
two turtle doves
and a partridge in a pear tree.
On the third day of Christmas my true love gave to me three french hens, two turtle doves and a partridge in a
pear tree.
On the twelfth day of Christmas my true love gave to me


_______________________________________________________________________________
2 А также на второй, третий и пятнадцатый.

................................

15.08.2006 13-49
©Доктор ТуамОсес inc.


Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа
Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 
URL изображения: 


Rambler's Top100 Рейтинг@Mail.ru
Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание