Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
 |
Да оно нигде не компиляется :) Там же синтаксические ошибки, посмотрите выход препроцессора. 11.04.03 21:20 Число просмотров: 1127
Автор: Ktirf <Æ Rusakov> Статус: Elderman
|
|
|
|
<humor>
|
Консольные шахматы. 09.04.03 16:36
Автор: Green Статус: Незарегистрированный пользователь Отредактировано 09.04.03 16:37 Количество правок: 1
|
Это консольные шахматы.
#define f 9999 - это статистический критерий по нему принимается решение о положительности или отрицательности хода
В случае проигрыша будет вот это: H"Rats!\n"
Если она тебя поимеет то орет: H"\nHar har.\n"
Когда глубины просмотра 3 уже играем на кандидата.
А теперь сам код:
#include <stdio.h>
#include <stdlib.h>
#define m(x)(x<0?-1:!!x)
#define g tj()-J
#define a(x)(x<0?-x:x)
#define h(x)((x)<=K?x:N-(x))
#define f 9999
#define A return
#define H printf(
#define R double
#define U int
#define V for
#define b else
#define u while
#define B if
U v,w,Y= -1,W,J,p,F,o=f,M,N,K,X,YY,_,P[f],s(); typedef U(*L)(); L q[f]; tj(){
U S=m(v)+(m(w)<<K); B(!S)A J; V(v=W+S; v!=J&&!q[v]; v+=S); A v; } k(){ _=K; A
v?a(v)>1||w-Y||!q[J]:(w-Y&&(w-Y*2||q[W+Y*(N+1)]|(J>>K)-K+(Y-1)/
v?a(v)>2))||q[J];
} z(){ _=5; A v*w||g; } e(){ _= -2; A(v*v*v-v||w*w*w-w)&&(J-W-2||(W&N)-4||(W>>K!=(Y-1?N:0))|
q[W+1]||q[W+2]||q[W+K]!=z||P[W+K]*Y<0); } R VR(){ int PZ=0x7fff;
A(R)(rand()&PZ)/(R)PZ; } l(){ _=K+1; A(v*w&&a(v)-a(w))||g; } R UC(){ R i=0,d;
u((i+=d=VR())<1.0); A d; } c(){ _= -11; A a(v)-a(w)||g; } I(ur,n,x){ W=ur;
J=n; B(P[W]!=Y||P[J]==Y)A J+1; v=(J&N)-(W&N); w=(J>>K)-(W>>K); A q[W]()|x&&QL(W,J,s)); } TT(W){ v=w=0; A q[W]()+K; } s(){ U j= -1,i; Y= -Y;
V(i=0; i<M; ++i){ B(j<0&&P[i]== -Y&&TT(i)&&_== -2) { j=i; i= -1; } b
B(j>=0&&!I(i,j,0))A Y= -Y; } A!(Y= -Y); } bb(){ _=1; A a(v*w)-2; } uv(){
V(v=0; v<f; ++v){ B(h(v>>K)==0){ U S=h(v&N);
q[v]=!S?z:(S==1?bb:(S==2?c:(v&N>K?l:e))); } b B(h(v>>K)==1)q[v]=k; b q[v]=0;
P[v]=!!q[v]*(28-v); } } y(){ U G=Y,i; J=0; V(i=0; i<M; ++i){
i%8||H"\n%4o ",i); B((Y=P[i]=m(P[i]))&& TT(i))H"%c ",_+93+Y*16); b H"- "); }
H"\n "); do H"%2d",i++&N); u(i&N); Y=G; H"\n"); } O(W,J){
B((q[J]=q[W])==k&&h(J>>K)==0)q[J]=l; B(q[W]==e)B(J-W==2)O(J+1,J-1); b
B(W-J==2)O(W-1,W+1); P[J]=P[W]; q[W]=0; P[W]=0; } QL(W,J,D)L D; { U
HQ=P[J],YX; L AJ=q[J],XY=q[W]; O(W,J); YX=D(); O(J,W); q[J]=AJ; q[W]=XY;
P[J]=HQ; A YX; } C(){ U i,j,BZ=0; V(i=0; i<M; ++i){ L Z=q[i]; B(Z){ U
r=h(i>>K)+h(i&N),G=Y, S=Z==z?88:(Z==k?11 +r+(P[i]<0?N-(i>>K):(i>>K)):
(Z==l?124-((YY<8&&((i&N)!=K|(i>>K)!=(P[i]>0?0:N)))?M:0):
(Z==c?41+r:(Z==e?f-r-r:36+r+r)))); Y=P[i]; V(j=0; j<M;
++j)B(!I(i,j,0))S+=(P[j]?5:1); BZ+=G==Y?S:-S; Y=G; } }
B(!(++X&M-1))write(1,".",1); A BZ; } PX(){ U i,Q=0,XP=0,JZ=M*M,E= -f,t,S=o;
B(!F--)A++F+C(); V(i=0; i<JZ; ++i)B(!I(i>>K+K,i&M-1,1)){ Y= -Y; o= -E; t=
-QL(i>>K+K,i&M-1,PX); Y= -Y; B(t>E){ ++XP; Q=i; E=t; B(E>=S) A++F,E; } }
B(!XP)E=s()?-f+1:0; p=Q; A++F,E; } RZ(){ U i,j,T=0; V(; ; ){ y(); o=f; do{
H"\n%d %d %d %s ",X,T,C(),s()?"!":">"); fflush(stdout); }
u(scanf("%o%o",&i,&j)!=2||I(i,j,1)); O(i,j); y(); X=0; ++YY; Y= -Y; T=PX();
i=p>>(K<<1); j=p&(M-1); B(I(i,j,1)){ H"Rats!\n"); A; } O(i,j); Y= -Y;
B(T>M*M)H"\nHar har.\n"); } } main(ac,av)char**av; { long
B(T>time(),j=time(&j);
R i=0; srand((U)j); V(M=0; M<=f; ++M)i+=UC(); M=i/100; B(M&3)++M; B(M&1)--M;
V(N=1; N*N<M; ++N); K= --N/2; F=ac>1?atoi(av[1]):2; uv(); RZ(); }
|
 |
Да оно нигде не компиляется :) Там же синтаксические ошибки, посмотрите выход препроцессора. 11.04.03 21:20
Автор: Ktirf <Æ Rusakov> Статус: Elderman
|
|
|
 |  |
Для ленивых - не компиляется вот здесь 11.04.03 21:45
Автор: Ktirf <Æ Rusakov> Статус: Elderman Отредактировано 11.04.03 21:46 Количество правок: 2
|
Ищем начало функции k(). Обнаруживаем конструкцию
Av?a(v)>1||w-Y||!q[J]:(w-Y&&(w-Y*2||q[W+Y*(N+1)]|(J>>K)-K+(Y-1)/v?a(v)>2))||q[J];
^
---
A, в соответствии с дефайном - это return. А дальше методом пристального взгляда замечаем, что у помеченного знака вопроса отсутствует соответствующее ему двоеточие! Еще две ошибки находятся в main: нарушен баланс круглых скобок и после long сразу идет B (то есть if после препроцессинга).
|
 |  |  |
А это так и задумано или автора память подвела? 11.04.03 22:18
Автор: Killer{R} <Dmitry> Статус: Elderman
|
|
|
 |  |  |  |
Кто-нибудь скомпилил? Хоть поделитесь впечатлениями... Стиль игры, наверное, на Deep Blue похож? ;-))))))))) 12.04.03 06:17
Автор: HandleX <Александр М.> Статус: The Elderman
|
|
|
 |
Тоже не компиляется — Open Watcom C/C++ 1.0 11.04.03 20:29
Автор: HandleX <Александр М.> Статус: The Elderman
|
|
|
 |
эээ... не компиляется Ж:-(. MSVC 6.0 10.04.03 12:13
Автор: Killer{R} <Dmitry> Статус: Elderman
|
Deleting intermediate files and output files for project 'conchess - Win32 Debug'.
--------------------Configuration: conchess - Win32 Debug--------------------
Compiling...
StdAfx.cpp
Compiling...
conchess.cpp
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(31) : error C2065: 'tj' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(31) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(32) : error C2065: 'k' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(32) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(35) : error C2143: syntax error : missing ',' before ')'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(37) : error C2065: 'z' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(37) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(37) : error C2065: 'e' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(37) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(39) : error C2446: '!=' : no conversion from 'int' to 'int (__cdecl *)(void)'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(39) : error C2040: '!=' : 'int (__cdecl *)(void)' differs in levels of indirection from 'int'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(39) : error C2601: 'VR' : local function definitions are illegal
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(40) : error C2065: 'l' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(40) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(40) : error C2601: 'UC' : local function definitions are illegal
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(41) : error C2065: 'c' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(41) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(41) : error C2065: 'I' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(41) : error C2065: 'ur' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(41) : error C2065: 'n' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(41) : error C2065: 'x' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(41) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(43) : error C2065: 'QL' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(43) : error C2065: 'TT' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(43) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(43) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(46) : error C2065: 'bb' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(46) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(46) : error C2065: 'uv' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(46) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(49) : warning C4554: '&' : check operator precedence for possible error; use parentheses to clarify precedence
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(49) : error C2440: '=' : cannot convert from 'int' to 'int (__cdecl *)(void)'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(49) : error C2440: '=' : cannot convert from 'int' to 'int (__cdecl *)(void)'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(50) : error C2065: 'y' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(50) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(52) : error C2065: 'O' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(52) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(53) : error C2446: '==' : no conversion from 'int' to 'int (__cdecl *)(void)'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(53) : error C2040: '==' : 'int (__cdecl *)(void)' differs in levels of indirection from 'int'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(53) : error C2440: '=' : cannot convert from 'int' to 'int (__cdecl *)(void)'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(53) : error C2446: '==' : no conversion from 'int' to 'int (__cdecl *)(void)'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(53) : error C2040: '==' : 'int (__cdecl *)(void)' differs in levels of indirection from 'int'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(54) : error C2065: 'D' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(54) : error C2146: syntax error : missing ';' before identifier 'L'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(54) : error C2146: syntax error : missing ';' before identifier 'D'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(54) : error C2275: 'L' : illegal use of this type as an expression
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(31) : see declaration of 'L'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(56) : error C2065: 'C' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(56) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(58) : error C2446: '==' : no conversion from 'int' to 'int (__cdecl *)(void)'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(58) : error C2040: '==' : 'int (__cdecl *)(void)' differs in levels of indirection from 'int'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(58) : error C2446: '==' : no conversion from 'int' to 'int (__cdecl *)(void)'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(58) : error C2040: '==' : 'int (__cdecl *)(void)' differs in levels of indirection from 'int'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(60) : error C2446: '==' : no conversion from 'int' to 'int (__cdecl *)(void)'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(60) : error C2040: '==' : 'int (__cdecl *)(void)' differs in levels of indirection from 'int'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(61) : error C2446: '==' : no conversion from 'int' to 'int (__cdecl *)(void)'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(61) : error C2040: '==' : 'int (__cdecl *)(void)' differs in levels of indirection from 'int'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(61) : error C2446: '==' : no conversion from 'int' to 'int (__cdecl *)(void)'
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(61) : error C2040: '==' : 'int (__cdecl *)(void)' differs in levels of indirection from 'int'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(63) : error C2065: 'write' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(63) : error C2065: 'PX' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(63) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(64) : warning C4554: '>>' : check operator precedence for possible error; use parentheses to clarify precedence
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(65) : warning C4554: '>>' : check operator precedence for possible error; use parentheses to clarify precedence
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(66) : error C2065: 'RZ' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(66) : error C2143: syntax error : missing ';' before '{'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(70) : warning C4508: 'main' : function should return a value; 'void' return type assumed
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(71) : error C2065: 'ac' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(71) : error C2065: 'av' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(71) : error C2144: syntax error : missing ';' before type 'char'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(72) : warning C4091: '' : ignored on left of 'long' when no variable is declared
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(72) : error C2143: syntax error : missing ';' before 'if'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(72) : error C2065: 'T' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(72) : error C2065: 'time' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(72) : error C2065: 'j' : undeclared identifier
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(72) : error C2143: syntax error : missing ')' before ';'
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(74) : warning C4390: ';' : empty controlled statement found; is this the intent?
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(74) : warning C4244: '=' : conversion from 'double' to 'int', possible loss of data
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(76) : error C2562: 'main' : 'void' function returning a value
D:\Program Files\Microsoft Visual Studio\MyProjects\conchess\conchess.cpp(23) : see declaration of 'main'
Error executing cl.exe.
conchess.exe - 71 error(s), 7 warning(s)
|
 |  |
А оно и не должно компилиться - в этом-то вся и фишка-))))) 11.04.03 21:37
Автор: JINN <Sergey> Статус: Elderman
|
|
|
 |
Скоро все анекдоты будут представлены отрывками... 09.04.03 23:17
Автор: zonny <Sasha> Статус: Member
|
|
... кода а говорить будем двоичным годом: высокий писк - 1, низкий - 0. Прям как момеды =)
|
|
|