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

Вниз

Я на грани самоубийства!!!   Найти похожие ветки 

 
Околокомпьютерный   (2005-01-25 13:13) [40]

а компилитор тебе еще сочувствовать не начал???


 
Marser ©   (2005-01-25 13:22) [41]


> MacroDenS ©   (24.01.05 20:02) [38]
> Держись, Kerk. Мы все тебе сочуствуем.
> // Ты б у начальства навел справки про предыдущего прогера,
> что б весь пыл на него направить, а то суицид - енто не
> круто.

Дадад. И паяльник ватт на 25 прихвати :-)


 
Рамиль ©   (2005-01-25 13:35) [42]

Marser ©   (25.01.05 13:22) [41]
За такой код лучше утюг:)


 
Delphin ©   (2005-01-25 14:40) [43]

Рамиль ©   (25.01.05 13:35) [42]
> Дадад. И паяльник ватт на 25 прихвати :-)
Настоящие программисты/хакеры используют паяльник :))


 
basken   (2005-01-25 15:13) [44]


> Настоящие программисты/хакеры используют паяльник :))

а также – электрические вспоминатели (кипятильники) …))


 
TUser ©   (2005-01-25 15:20) [45]

Автора кода надо заставить до конца жизни пользоваться одной-единственной шариковой мышкой, в том числе при работе с программами PhotoShop, QuarkXPress, PageMaker, AutoCAD, 3D Max, Сапер, а также УниверсальныйЗаменитьСломавшейсяКлавиатуры (рисует изображение клавиатуры и позволяет тыкать туда мышью).


 
alt84   (2005-01-25 22:11) [46]

Ой..... Дэээээ?????
Что-то до боли знакомые строчки ;)
Смотрю, вам закусить нечем? :)
Тогда вот из последнего моего проджекта:
\s*СУПЕРМАРКЕТ "ДАСТАРХАН"
\s*серия №xxxxx лиц.номер xxxxxxx
\s*телефон доставки: xx-xx-xx
\s*ДОБРО ПОЖАЛОВАТЬ !
\s*Касса № [0-9]*
\s*Кассир:(?P<cashier_name>.*)
(?P<item_cod>\d+).(?P<item_name>.*)
((?P<item_count>[0-9.]+) Х (?P<item_price>[0-9.]+)\s*)*Стоимость\.*(?P<item_total>[0-9.]+)
(\s*Сторно\s*)*=+
Всего\.*(?P<total>[0-9.]+)
В том числе НДС [0-9]+%\.*[0-9]+
[0-9]+\s*=[0-9.]+
ИТОГ\s*=[0-9.]+
\s*НАЛИЧНЫМИ\s*=(?P<agree>[0-9.]+)
(СДАЧА\s*=[0-9.]+\s*)*ККМ\s+[0-9]+\s+ИНН\s+[0-9]+\s+#(?P<check_number>[0-9]+)
[0-9.]+\s+[0-9:]+\s+.*
.*ПРОДАЖ\S+\s+№[0-9]+
\s*ФП


Что-то не ясно? :) Парсер чеков для супермаркета в Казахстане :)
Ребят, вы что? Забыли, где Чуйская долина находиться? :)
А если это дело еще и с музончиком от нашей "Адаптация" забадяжить, то вообще такая отменная дурь получается, что только за комп и проги писать :) Гыыыыыыыыы :)


 
Kerk ©   (2005-01-25 22:12) [47]

alt84   (25.01.05 22:11) [46]

твое понятнее.. :)
когда свое закончу, на твое перейду.. чтоб постепенно было.. без ломки..


 
Marser ©   (2005-01-26 18:14) [48]


> УниверсальныйЗаменитьСломавшейсяКлавиатуры (рисует изображение
> клавиатуры и позволяет тыкать туда мышью).

Простите за ламерство, а как это чудо будет работать, если в CMOS "halt on all errors""?

> Рамиль ©   (25.01.05 13:35) [42]
> Marser ©   (25.01.05 13:22) [41]
> За такой код лучше утюг:)

Нет, точечные воздействия имеют больший эффект при меньших послдествиях :-)


 
Soft ©   (2005-01-26 19:50) [49]

Вполне нормально. Я сам так иногда пишу. А с конструкцией with можно вполне запутаться самому.

procedure TNTDScreen.CalculateHosts;
var i:integer;
Var TextSize:TSize;
begin
//Подсчет координат узлов
If (NTDSystem.N_Hosts>0) then
  for i:=1 to NTDSystem.N_Hosts do
     begin
     //вычисляем индекс картинки
     NTDSystem.Hosts[i].IndexPicture:=GetPointerPictureByParam(NTDSystem.Hosts[i].testing,NTDSystem.Hosts[i].TypeHost,NTDSyst em.Hosts[i].Status);
     //вычисление координат вывода пиктограммы
     NTDSystem.Hosts[i].PPicture.X:=NTDSystem.Hosts[i].X+StartCord.X-(Trunc(NTDSystem.Images[NTDSystem.Hosts[i].IndexPicture] .Image.Width*IconSize/100) div 2);
     NTDSystem.Hosts[i].PPicture.Y:=NTDSystem.Hosts[i].Y+StartCord.Y-(Trunc(NTDSystem.Images[NTDSystem.Hosts[i].IndexPicture] .Image.Height*IconSize/100) div 2);
     //Вычисление координат вывода описания узла
     NTDSystem.Hosts[i].PAbout.Y:=NTDSystem.Hosts[i].PPicture.Y+Trunc(NTDSystem.Images[NTDSystem.Hosts[i].IndexPicture].Image .Height*IconSize/100);
     TextSize:=WritedPicture.Bitmap.Canvas.TextExtent(NTDSystem.Hosts[i].AboutName);
     NTDSystem.Hosts[i].PAbout.X:=NTDSystem.Hosts[i].X+StartCord.X-(TextSize.cx div 2);
     //Вычисление координат вывода времени тестирования узла
     NTDSystem.Hosts[i].PTime.Y:=NTDSystem.Hosts[i].PAbout.Y+TextSize.cy;
     NTDSystem.Hosts[i].TimeString:=FormatDateTime("dd.mm.yyyy hh:nn",NTDSystem.Hosts[i].TimeWhenTest);
     //при выходе узла из строя выводим продолжительность
     if (NTDSystem.Hosts[i].Status=4) then
     NTDSystem.Hosts[i].TimeString:=NTDSystem.Hosts[i].TimeString+"("+FormatDateTime("hh:nn",now-NTDSystem.Hosts[i].Timeout)+ ")";
     TextSize:=WritedPicture.Bitmap.Canvas.TextExtent(NTDSystem.Hosts[i].TimeString);
     NTDSystem.Hosts[i].PTime.X:=NTDSystem.Hosts[i].X+StartCord.X-(TextSize.cx div 2);
     //Вычисление начальных и конечных координат пиктограммы
     NTDSystem.Hosts[i].PTop.X:=StartCord.X+NTDSystem.Hosts[i].X-(Trunc(NTDSystem.Images[NTDSystem.Hosts[i].IndexPicture].Ima ge.Width*IconSize/100) div 2);
     NTDSystem.Hosts[i].PTop.Y:=StartCord.Y+NTDSystem.Hosts[i].Y-(Trunc(NTDSystem.Images[NTDSystem.Hosts[i].IndexPicture].Ima ge.Height*IconSize/100) div 2);
     NTDSystem.Hosts[i].PBottom.X:=StartCord.X+NTDSystem.Hosts[i].X+(Trunc(NTDSystem.Images[NTDSystem.Hosts[i].IndexPicture]. Image.Width*IconSize/100) div 2);
     NTDSystem.Hosts[i].PBottom.Y:=StartCord.Y+NTDSystem.Hosts[i].Y+(Trunc(NTDSystem.Images[NTDSystem.Hosts[i].IndexPicture]. Image.Height*IconSize/100) div 2);

     end;

end;


 
Soft ©   (2005-01-26 20:09) [50]

>>Kerk ©   (24.01.05 10:56)  
>>Скажите что-нибудь приятное.. чтоб жить захотелось!!!

Онлайновый клуб самоубийц учит людей суициду
http://www.membrana.ru/print.html?1044291600

Так что если соберешься, сделай это профессионально... а то получится как с тем кодом.


 
esu ©   (2005-01-26 20:51) [51]


> alt84   (25.01.05 22:11) [46]

ну тут-то как раз все нонятно :)

А вот с [0] действительно тяжко... И много там кода в таком стиле ?


 
jack128 ©   (2005-01-26 22:16) [52]

Soft ©   (26.01.05 19:50) [49]
Ну не знаю.. По мне вот так на порядок понятнее и прозрачнее

procedure TNTDScreen.CalculateHosts;
var
 i:integer;
 TextSize:TSize;
begin
 //Подсчет координат узлов
 if (NTDSystem.N_Hosts>0) then
   for i:=1 to NTDSystem.N_Hosts do
   begin
     Host := NTDSystem.Hosts[i];
     //вычисляем индекс картинки
     Host.IndexPicture:=GetPointerPictureByParam(Host.Testing, Host.TypeHost, Host.Status);
     HostImage := NTDSystem.Images[Host.IndexPicture].Image;
     //вычисление координат вывода пиктограммы
     Host.PPicture.X:=Host.X+StartCord.X-(Trunc(HostImage.Width*IconSize/100) div 2);
     Host.PPicture.Y:=Host.Y+StartCord.Y-(Trunc(HostImage.Height*IconSize/100) div 2);
     //Вычисление координат вывода описания узла
     Host.PAbout.Y:=Host.PPicture.Y+Trunc(HostImage.Height*IconSize/100);
     TextSize:=WritedPicture.Bitmap.Canvas.TextExtent(Host.AboutName);
     Host.PAbout.X:=Host.X+StartCord.X-(TextSize.cx div 2);
     //Вычисление координат вывода времени тестирования узла
     Host.PTime.Y:=Host.PAbout.Y+TextSize.cy;
     Host.TimeString:=FormatDateTime("dd.mm.yyyy hh:nn",Host.TimeWhenTest);
     //при выходе узла из строя выводим продолжительность
     if (Host.Status=4) then
       Host.TimeString:=Host.TimeString+"("+FormatDateTime("hh:nn",now-Host.Timeout)+ ")";
     TextSize:=WritedPicture.Bitmap.Canvas.TextExtent(Host.TimeString);
     Host.PTime.X:=Host.X+StartCord.X-(TextSize.cx div 2);
     //Вычисление начальных и конечных координат пиктограммы
     Host.PTop.X:=StartCord.X+Host.X-(Trunc(HostImage.Width*IconSize/100) div 2);
     Host.PTop.Y:=StartCord.Y+Host.Y-(Trunc(HostImage.Height*IconSize/100) div 2);
     Host.PBottom.X:=StartCord.X+Host.X+(Trunc(HostImage.Width*IconSize/100) div 2);
     Host.PBottom.Y:=StartCord.Y+Host.Y+(Trunc(HostImage.Height*IconSize/100) div 2);
   end;
end;


 
Kerk ©   (2005-01-27 00:01) [53]

Soft ©   (26.01.05 19:50) [49]
Вполне нормально. Я сам так иногда пишу.


Нормально??? Да давить за такое надо!!!

(Зря ты признался.. :))


 
Soft ©   (2005-01-27 00:52) [54]

>>Kerk ©   (27.01.05 00:01) [53]

Зато заказчик доволен как слон и поддерживать программу не дадут в другие руки. Удобно.


 
Kerk ©   (2005-01-27 00:56) [55]

Soft ©   (27.01.05 0:52) [54]

вот вот.. только о себе и думаешь. давить.


 
Gero ©   (2005-01-27 01:03) [56]


> Soft ©   (27.01.05 00:52)

Я б на месте твоего начальства за такой код уволил бы тебя не задумываясь.


 
nikkie ©   (2005-01-27 01:05) [57]

>[54] Soft
и этот человек учит меня не ковырять в носу?

>[55] Kerk
похоже у Керка суициидальные настроения сменились жаждой мести авторам такого кода. оно правильно. это более конструктивный подход.


 
Erik1 ©   (2005-01-27 10:36) [58]

Я тоже много чего приятного встречал, однажды в мои руки попал проект использующий в качестве базы MsAccess + Delphi 3. Для начала автор подключил для доступа к Access BDE, но ему этого показалась мало и он добавил ODBC. Далее понапихол в проект кучу стороних компонент для красоты, разумеется без указания, что это за компоненты и где их взять. После этого там был написан "миленкий" код, этого шедевра повторить немогу! Но он умел открывать форму для просмотра 20000 локальных записей 4 минуты. И кажется смог добится экспотенциального падения производительности, при увеличении данных. Когда мне дали код, формы разумеется неоткрывались и я нашол все компоненты, чтото сделал с программой и она даже заработала. В конце концов переписал ее заного полностью на MsAccess. Смотря только на тех. задание, там различий дохрена было.
 Мне вобще везет на перлы, главное в этом деле, понять как это должно работать. После просто переписываеш.


 
Kerk ©   (2005-01-27 10:42) [59]

esu ©   (26.01.05 20:51) [51]
А вот с [0] действительно тяжко... И много там кода в таком стиле ?


34,2 тыс строк


 
Bel ©   (2005-01-27 10:47) [60]

Мне тоже приходилось доделывать проект за одним чудиком. Мало того, что он написал свой интерпретатор, документацию по нему не оставил, так он еще и реализовал его так, что черт ногу сломит. Вот, например, этот кусок у меня в 6 Делфи не скомпилировался, сказал, что не может одну переменную цикла использовать. (Он писал на 3 Делфи). Как вообще такое можно писать?

function FldByTblFLdNm(const mTbl,NmFld:string):TmyFields;
  var i,j:integer;
begin
  Result := Flds[0];
  for i := 1 to FldCount do begin
    j := i;
    if Flds[i].F <> nil then
    if ( lowerCase(trim(Flds[i].F.DataSet.Name )) + "#" = (lowerCase(trim(NmTbl))+ "#") )
    then begin
      for i := i to FldCount do begin
        j := i;
        if not (lowercase(trim(Flds[j].F.DataSet.Name) ) + "#" = lowercase(trim(NmTbl))+ "#" ) then begin
           for i := FldCount downto j do begin
             if  (lowercase(trim(Flds[i].F.DataSet.Name) ) + "#" = lowercase(trim(NmTbl))+ "#" )
             and (uppercase(trim(Flds[i].F.FieldName )) + "#" = uppercase(trim(NmFld))+ "#" )
             then begin Result := Flds[i]; exit; end;
           end;
           Result := Flds[0];
           exit;
        end;
        if (uppercase(trim(Flds[j].F.FieldName )) + "#" = uppercase(trim(NmFld))+ "#" )
        then begin Result := Flds[j]; exit; end;
      end;
      break;
    end;
  end;
end;


 
Kerk ©   (2005-01-27 10:49) [61]

Bel ©   (27.01.05 10:47) [60]

LOL. Оригинальный чувак был. :))


 
Nous Mellon ©   (2005-01-27 11:05) [62]


>
> LOL. Оригинальный чувак был. :))

Думаешь, его уже убили?


 
TUser ©   (2005-01-27 11:13) [63]

Интересно, а ко мне вот студенты на курсовые работы пришли. Стоит ли ждать такого?


 
Kerk ©   (2005-01-27 11:16) [64]

Nous Mellon ©   (27.01.05 11:05) [62]

ну мало ли.. за такое можно. :)

TUser ©   (27.01.05 11:13) [63]

тех, кто сдаст что-то подобное лучше сразу отрави.



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

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

Наверх




Память: 0.59 MB
Время: 0.031 c
1-1106684239
Ser_max
2005-01-25 23:17
2005.02.20
Маска ввода


4-1104885038
suxx
2005-01-05 03:30
2005.02.20
запретить нажатие комбинации клавиш


4-1104434734
leonidus
2004-12-30 22:25
2005.02.20
Как поставить хук на щелчек левой клавиши мыши?


3-1106245115
Alexandr--
2005-01-20 21:18
2005.02.20
VarbinaryToVarchar ?


1-1107424602
dreamse
2005-02-03 12:56
2005.02.20
Как определить какие строки выделены в DbGrid





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский