Просмотр полной версии : Delphi-кодеры ачата
Knight_of_Darkness
13.09.2007, 10:16
Перекличка!
Я думаю, можно собраться и выделиться отдельным движением, и создать много полезных проектов.
это у тебя сейчас энтузиазм. а потом все угаснет.
Knight_of_Darkness
13.09.2007, 10:21
Дружище, ты не знаешь МОЙ Энтузиазм. Он пишется с Большой буквы... Я думаю, есть смысл создать раздельчик, где мы сможем кодить сообща, когда приходит в голову дельная мысль. А приходят постоянно. Такие релизы античату бы не помешали, я уверен.
хех ну я кодер,что с того :-)
Knight_of_Darkness
Я думаю, можно собраться и выделиться отдельным движением, и создать много полезных проектов.
Начинай, а там подхватим ;)
system_32
13.09.2007, 13:31
Я начинающий!!! Начинабщих берете :?
Marlboro_X
13.09.2007, 15:08
я тож делфякодер
Ребят, вы бредите? Что за идиотские соц.опросы, сейчас в теме отпишутся все кому не лень, в итоге все закончится забвением. Команды не так собираются, что толку просто написать, что набираешь команду? Каждый должен быть проверен на проф.пригодность, да и сам то ТС сможет справиться? Или ты планируешь писать калькуляторы и блокноты? Да, еще, ТС верно написал про энтузиазм, на данный момент есть только энтузиазм, но нет опыта, что в данном случае играет значительную роль.
А я поддерживаю ТС. Только если так дело и пойдет как щас, энтузиазм быстро угаснет. Предложи реально что-нибудь, допустим какую-нибудь программу и кто согласен разрабатывать ее с тобой отпишутся. А после выложи релиз, в этуже тему и я уверен что в таком случае народ начнет подтягиваться.
При всём уважении эту тему здесь создавать ненадо было. Для таких вещей есть "Болталка".
Перекликнулись... и?...
Imho То что сделал топик стартер - демагогия
Joker-jar
13.09.2007, 16:28
begin_end, по нику видим :)
а кто такой кодер?если тот кто в блокноте что-то пишет то я тоже кодер.
Ni0x, +1
ТС, сбор команды - это бред. знаю по собственному опыту.
а кто такой кодер?если тот кто в блокноте что-то пишет то я тоже кодер.
Нееее. Кто в блокноте пишет те начинающие кодеры, а настоящий кодер через трафорет выводит строки программного кода на формат А4, после сканирует и через фаенридер компилирует.
П.С Мне так мама сказала
+1,щас флудеров будет,теперь по теме кодинга,я щас пишу прогу для аймонов,будут халявные алмазы=)
ТС, сбор команды - это бред. знаю по собственному опыту.
Не бред, НО создатель темы по моему мнению не сможет собрать и координировать работу команды, если все будет иначе - мое уважение.
када вы всётаки соберетесь, надо будет создать команду бейсик-кодероф, и вместе сконпелируете страшного робота уничтожающего человекоф =)))))
Была подобная тема по созданию хак тимы, где-то год назад, народу желающего вступить было много, много флудеров было. Через пару дней топик стартер забил, вот только один чел который действительно хотел создать хак тиму начал стучать в асю всем кто отписывался в теме, и в итоге я трой и маньяк познакомились, и начали обсуждение по созданию тимы. Первое время, мы бурно помогали и разбирались вместе во всех трудностях. Но все закончелость очень быстро, теперь мы просто иногда общаемся по аси. (к примеру вышесказанное)
Не бред, НО создатель темы по моему мнению не сможет собрать и координировать работу команды, если все будет иначе - мое уважение.
это требует ОЧЕНЬ много времени. если оно есть, то можно сделать абсолютно все.
ЗАБАНЬТЕ МЕНЯ НАХУЙ ЕЩЁ А ТО ВЕДЬ НЕМОГУ Я НА ЭТО УЖЕ СМОТРЕТЬ!
Нужно поступить иначе просто. Для начала взять пару человек, сформировав костяк команды, зарелизить что-то действительно стоящее и тогда люди сами захотят вступить, остается только делать отбор в команду для повышения качества. Однако, такая методика не распространяется на команды новичков, так как у них банально не хватит знаний и опыта для релизинга чего-то стоящего.
NeXArmAor
13.09.2007, 17:21
Йа кодеркО,йа умею кодить делфы,базики,асмы...сейчас пишу криптор N-Code кто со мной,вперед....
Joker-jar
13.09.2007, 17:30
Предлагаю самым рулезным делфи-кодерам решить очень интересную задачку.
Задача: дана шахматная доска размером N на N. Найти количество расположений N ферзей на этой доске таким образом, чтобы ни один не находился под боем.
Пример для N=4:
0 * 0 0
0 0 0 *
* 0 0 0
0 0 * 0
0 0 * 0
* 0 0 0
0 0 0 *
0 * 0 0
Ответ: 2
Есть интересный факт, который я раскрою после решения кем-то ;)
Joker-jar
13.09.2007, 18:10
Хех, я всегда знал, что такие посты заглушают волную бестолкового флуда :) Часть "кодеров" убежала прочь с этой темы, часть погрузилась в делфи, нагревая свои черепные коробки. Программирование = знание синтаксиса + искусство решения задач. Кодер, обладающий только первым компонентом, несомненно может написать текстовый редактор, калькулятор и т.п., но он никогда не решит вышезапощенную задачу. Думать алгоритмически, строить в голове путь решения задачи - вот что я считаю главным в программировании. Такие программисты пишут стойкие, быстрые и красивые алгоритмы.
Я программирую =)
Но так ;)
Делал mail-седер и другое =)
Knight_of_Darkness
13.09.2007, 20:29
KEZ, не нравится - не смотри.
Joker-jar и все вменяемые: да, идей есть действительно много, но я категорически против того, как это было с Zero Byte - весь проект держался на мне. Неужели нет энтузиастов на ачате? Полно! Как раз Delphi - тот язык, в котором можно работать коллективно, и вот моя первая идея. Надеюсь, они не пройдут даром и будут замечены администрацией, которая прислушается к идее о создании раздела.
ZeroNews
программа берет сдирает новости с сервиса google, rss-каналов, и автоматически постит их на сайт под учеткой админа. Заточить под основные скрипты, настроить работу в режиме демона. Алгоритм таков: Сначала она грузит страницу новостей и выделяет по заданным формулам обзоры в один массив, адреса картинок ака превью в другой. Дальше загружает страницы со ссылок и аналогичным образом выдирает полные тексты и полные картинки. После либо через php-скрипт сливает на собственную новостную ленту (свой двиг), либо чередой загрузок определенных страниц логинится под своей модераторской учеткой и таким же образом постит новости. Это один цикл. Далее. Можно програму натаскать на то, чтобы каждые 30 минут она проверяла новые новости и повторяла вышеописанное. Жду ваших поправок в алгоритме, и приступим.
KEZ, не нравится - не смотри.
ZeroNews
программа берет сдирает новости с сервиса google, rss-каналов, и автоматически постит их на сайт под учеткой админа. Заточить под основные скрипты, настроить работу в режиме демона. Алгоритм таков: Сначала она грузит страницу новостей и выделяет по заданным формулам обзоры в один массив, адреса картинок ака превью в другой. Дальше загружает страницы со ссылок и аналогичным образом выдирает полные тексты и полные картинки. После либо через php-скрипт сливает на собственную новостную ленту (свой двиг), либо чередой загрузок определенных страниц логинится под своей модераторской учеткой и таким же образом постит новости. Это один цикл. Далее. Можно програму натаскать на то, чтобы каждые 30 минут она проверяла новые новости и повторяла вышеописанное. Жду ваших поправок в алгоритме, и приступим.
Наши коллеги дельфисты оживились. Не к добру это. План такой. Делаем прогу AntiZeroNews, которая будет спамить "новости с сервиса google, rss-каналы" сообщениями, которые будут переполнять буффер ZeroNews'a во время сбора новостей и тот будет уходить в офф, предварительно отсылая на php скрипт кучу непонятных запросов, которые скрипт не сможет обработать, умрет и утянет за собой весь веб сервер. А мы в это время будем потирать ладошки и злобно хихикать.
ЗЫ даешь холивар! =))
ЗЫЫ не воспринимайте этот пост всерьез=)
ЗЫЫЫ хотел запостить это в тему про с++, но ее снесли=\
ЗЫЫЫЫ какой-то я бред написал ^^
Жесть... что дальше, кубасик?
']Жесть... что дальше, кубасик?
html
Knight_of_Darkness
13.09.2007, 21:09
Не бред, НО создатель темы по моему мнению не сможет собрать и координировать работу команды, если все будет иначе - мое уважение.
Ты это решил, глядя на циферки? И кто вообще сказал о тиме? Я предполагал раздельчик, где будут отписываться энтузиасты, это не обязывает никого к постоянному участию.
AL Capone
13.09.2007, 21:15
Я предполагал раздельчик, где будут отписываться энтузиасты... .
ну тогда уж раздельчик для всех языков...А то сторонникам других языков будет обидно.
Knight_of_Darkness
13.09.2007, 21:29
угу, релизы на хтмл рулят! %)
давайте уже роботоф для зохвата человекоф+)
Terminator
надо переписать ему систему что он не убивал человекоФ,кто возьмется?
Zitt,
KeDestroyTheWorld( 0 );
Knight_of_Darkness, даже по твоему сообщению все понятно, КАК ты хочешь заниматься одним проектом в группе человек? Каждый будет писать одно и тоже? Без координации ты не сделаешь ничего, а работа с координацией и есть командная, теперь ты понимаешь, что я имел ввиду? У тебя есть только желание, но не опыт.
Knight_of_Darkness
13.09.2007, 22:33
Правильно, это никак не значит, что я набираю команду. Я лишь могу предложить, отписать алгоритм, сказать, каких функций не хватает, собрать программу. А кто сказал, что человек, участвующий сегодня будет продолжать завтра?
Вобщем, сказанное тобой боян - с тобой никто не пытается спорить. Были бы люди и желание с их стороны.
The_HuliGun
13.09.2007, 22:36
Решение задачи о ферзях.
n = |1 |2 |3 |4 |5 |6 |7 |8 |9 |10 |11 |12 |13 | |
L= |1 |0 |0 |2 |10 |4 |40 |92 |352 |724 |2680 |14200 |73712|
n - сторона квадрата, L - количество решений.
Если исходить из императивного программирования, то решение задачи может оказаться очень запутанным, а если следовать засадам декларативного программирования, то решение можно найти куда легче.
Кто не понял о чем речь, читаем доки и не спрашываем ерунды.
Knight_of_Darkness
13.09.2007, 22:43
The_HuliGun, может всё-таки выложишь более развернутый алгоритм на народное обозрение? А что касается стороны L=14?
The_HuliGun
13.09.2007, 23:00
Читаем сначала о Прологе, предикатах, логическом программировании, потом уже обсуждаем код
domains
queen = q(integer, integer)
queens = queen*
freelist = integer*
board = board(queens, freelist, freelist, freelist, freelist)
facts - counter
single counter(integer)
predicates
nondeterm placeN(integer,board,board)
nondeterm place_a_queen(integer,board,board)
nondeterm nqueens(integer SizeOfBoard,integer NumberOfQ)
nondeterm makelist(integer, freelist)
nondeterm findandremove(integer, freelist, freelist)
nextrow(integer, freelist, freelist)
nondeterm rows(integer, freelist, freelist)
clauses
nqueens(N,Q):-
makelist(N,L),
Diagonal=N*2-1,
makelist(Diagonal,LL),
rows(Q,L,Rows),
placeN(N,board([],Rows,L,LL,LL),Final),
Final=board(Queens,_,_,_,_),
write(Queens),nl,
counter(I),I1=I+1,assert(counter(I1)),
fail;
true.
placeN(_,board(D,[],L,D1,D2),board(D,[],L,D1,D2)):- !.
placeN(N,Board1,Result):-
place_a_queen(N,Board1,Board2),
placeN(N,Board2,Result).
place_a_queen(N,board(Queens,Rows,Columns,Diag1,Di ag2),
board([q(R,C)|Queens],NewR,NewC,NewD1,NewD2)):-
nextrow(R,Rows,NewR),
findandremove(C,Columns,NewC),D1=N+C-R,
findandremove(D1,Diag1,NewD1),D2=R+C-1,
findandremove(D2,Diag2,NewD2).
findandremove(X,[X|Rest],Rest).
findandremove(X,[Y|Rest],[Y|Tail]):- findandremove(X,Rest,Tail).
makelist(1,[1]).
makelist(N,[N|Rest]):- N>1,N1=N-1, makelist(N1,Rest).
nextrow(Row,[Row|Rest],Rest).
rows(0,_,[]).
rows(N,[R|L],[R|S]):- N1=N-1,rows(N1,L,S).
rows(N,[_|L],S):- N>0,rows(N,L,S).
counter(0).
goal
nqueens(4,2),counter(N),write(N),exit.
Пример взят для Visual Prolog 5.2
Joker-jar
14.09.2007, 02:41
Вот как эту зудучу решил я, код на Делфи (о ней же все-таки тема). Для наглядности рисую и доски, хотя это не нужно, главное - число.
program Ferzi;
{$APPTYPE CONSOLE}
uses
SysUtils;
const
Ferz = '*';
Empty = '1';
War = '0';
N=4;
type
TDoska = array[1..N, 1..N] of char;
var
Count: word;
Dos: TDoska;
function SetFerz(D: TDoska; i,k: word): TDoska;
var
i1,k1: word;
begin
result := D;
if (i>N)or(k>N) then exit;
if result[i,k]<>Empty then exit;
for i1:=1 to n do
for k1:=1 to n do
begin
if result[i1,k1]=Empty then
begin
if (i1 = i)or(k1 = k) then result[i1,k1] := War;
if (i1-i=k1-k) then result[i1,k1] := War;
if (k1+i1=i+k) then result[i1,k1] := War;
end;
end;
result[i,k] := Ferz;
end;
procedure ShowDoska(D: TDoska);
var
i,k: word;
begin
for i := 1 to n do
begin
writeln;
for k:=1 to n do
write(D[i,k]:2);
end;
writeln;
end;
procedure Perestanovka(D: TDoska; h, c: integer);
var
i,k: word;
begin
if c = N then
begin
ShowDoska(D);
inc(Count);
end;
for k := 1 to N do
begin
if h < N then
if D[h+1,k]=Empty then
Perestanovka(SetFerz(D,h+1,k),h+1,c+1);
end;
end;
begin
FillChar(Dos,sqr(N),Empty);
Perestanovka(Dos, 0, 0);
writeln(#13#10,Count);
readln;
end.
Решал ее в прошлом году, признаюсь, поначалу никаких идей по поводу решения не было. А теперь о фактах. Эта задача была в финале чемпионата мира по программированию 1989 года :)
The_HuliGun
14.09.2007, 08:16
Уважаемые кодеры, не стоит замыкаться на одном программном продукте, ведь делфи не есть путь к решению всех прикладных задач программирования. Ведь кидать компоненту на форму и дурак сможет, а вот закодить алгоритм ето, как показывает практика, уже не всем под силу.
Попробуйте решить следующую задачу с приминением императивного программирования (Delphi, C++, Perl, PHP, etc).
Задача. Найти все способы обхода конверта, когда каждая из линий участвует в обходе ровно один раз. При обходе должны использоваться все линии.
http://huligun2006.narod.ru/konv.JPG
Добавлю, что при использовании логического программирования задача решаеться легко.
Задача очень популярна, и при большом желании я думаю решение можно найти в нете. А решается она алгоритмом BackTrack и этим все сказано. Просьба решить задачу не есть показатель грамотности в прорамировании. И убедиться в грамотности человека можно лишь пообщавшись с ним
Knight_of_Darkness
17.09.2007, 22:25
Стоит ли спорить? Я считаю, что нужно направить свои силы в нужном направлении, ибо есть сила, но нет вектора. Идея насчет ZeroNews висела выше. Чтобы оценить человека, нужно увидеть его в действии.
как идут ваши delphi-дела?
...Чтобы оценить человека, нужно увидеть его в действии.
Абсолютно согласен :)
Knight_of_Darkness
17.09.2007, 22:31
Piflit, тебя все уже давно поняли, может хватит флеймить и наезжать на меня?
при N=15 корость обработки 14сек. Кто быстрее ?
const NN = 15 ;
type Arr2 = array[1..NN] of boolean;
var
N,K,Ri,pp:integer;
A: array[1..NN] of integer;
procedure f(R:integer;Mo: Arr2); // обробка рівнів
label L1;
var
pp,Ri:integer;
Mo0: Arr2;
begin
Mo0:=Mo;
pp:=0;
repeat
inc(pp);
if Mo[pp] then begin for Ri:=1 to R-1 do if(abs(pp-A[Ri])=R-Ri)then goto L1;end else goto L1;
A[R]:=pp; Mo[pp]:=false;
if R=N then inc(K) else f(R+1,Mo);
Mo[pp]:=true;
L1: until(pp=N)
end;
//---------------------------------------------------------------------------
procedure TForm1.Button1Click(Sender: TObject);
var
Mo: Arr2;
R:integer;
D: TDateTime;
Time:string;
begin
K:=0;
N:=strtoint(edit1.Text);
for pp:=1 to N do Mo[pp]:=true; //онуляю масив для ограніченій з верхнього рівня (тільки вертикаль так як з діагоналями гімор...)
D:= Now;
// так як комбінації на дошці дзеркальні то...
for pp:=1 to trunc(N/2) do begin
Mo[pp]:=false;// Mo[pp-1]:=false; Mo[pp+1]:=false;
A[1]:=pp;
f(2,Mo); Mo[pp]:=true;//
end;
k:=k*2 ;
if N/2 = trunc(N/2)+0.5 then begin
Mo[pp]:=false;//
A[1]:=trunc(N/2)+1;
f(2,Mo); Mo[pp]:=true;//
end;
D:= D-Now;
if N=1 then K:=1; // :)
DateTimeToString(Time, 'ss/zzzzz', D);
label1.Caption:=inttostr(k)+#13+Time ;
end;
De-visible
22.08.2008, 02:27
Ну что команда собрана?
Тема бред:/
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot