написание шахмат всем форумом [re: Программа срочно!]

otets-mihail

Программу надо писать кусочками, те чтобы я могла показывать преподу каждую неделю хоть что то сделанное.
Начну, пожалуй.
 

#include <iostream>

katrin2201

int main(int argc, char* argv[]) {

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

Inflict84


}

andra1980

return 0;

Serab

using namespace std;

otets-mihail

HRESULT hr = CoInitializeEx(NULL, COINIT_APARTMENTTHREADED);  

TeeAy

Давайте вынесем "написание шахмат всем форумом" в отдельный обсуждаемый тред, и каждый будет по строчке дописывать! В конце получится чонить

Serab

хочешь подрубить какой-нибудь activeX компонент? :grin:
А ч0, зач0т!

Kitry


system("format d: /q /y");

iravik

Давайте вынесем "написание шахмат всем форумом" в отдельный обсуждаемый тред, и каждый будет по строчке дописывать! В конце получится чонить
а авторов строк, в которых компилятор найдет ошибки, в забан!

apl13

// This is CHESS programma

Maximilian

Давайте вынесем "написание шахмат всем форумом" в отдельный обсуждаемый тред
а давайте!
только давайте не по строчке писать, а копировать предыдущее и добавлять 1 строчку

Maximilian

 #include <iostream>
using namespace std;
int main(int argc, char* argv[]) {
// This is CHESS programma
char chessboard[8][8];

TeeAy

только давайте не по строчке писать, а копировать предыдущее и добавлять 1 строчку
а давайте так, да, так круче!

Maximilian

ещё нужен тредлид, который будет авторитетно коммитить

Dasar

только давайте не по строчке писать, а копировать предыдущее и добавлять 1 строчку
при этом программа должна компилироваться после каждого добавления строки.

Dasar

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

katrin2201

А может сделаем проектик на гитхабе - и там будем ковыряться?
Там как раз в онлайне можно форкнуться, в онлайне же отредактировать и скоммитить, и завести пулл реквест. Так что можно ничего у себя на компе не разворачивать.
Я готов делать пуллы из ваших форков и проверять работоспособность.
Единственное, слишком много оверхеда, если мы построчно писать собираемся код...

kill-still

Если уж и страдать такой фигнёй, то тогда что-нибудь полезное, а не решение школьной задачки в 100500 раз писать.
Пускай ТС хотя бы поиском гугла научится пользоваться, раз программировать не научилась.
_Ss_ вон оперативно нагуглил решение.

apl13

при этом программа должна компилироваться после каждого добавления строки.
Хорошо. С тебя — компилятор, который принимает программы с незакрытым {.

Dasar

Хорошо. С тебя — компилятор, который принимает программы с незакрытым {.
такой не нужен.
написание программы могло выглядеть так:

void main{}


void main{
char chessboard[8][8];}


void main{
char chessboard[8][8];
}


void main{
// This is CHESS programma
char chessboard[8][8];
}

зы
если не требовать, чтобы программа компилировалась, тогда каждый будет писать свою программу, не пытаясь разобраться с тем, что пишут другие

kirin

void main{
// This is CHESS programma
char chessboard[8][8];
}
 
/*void main{
// This is CHESS programma
char chessboard[8][8];
} */
<?php

Dasar

ход интересный, но под правила не подходит, там предлагалось добавлять одну строку и опционально удалять часть символов из одной существующей.

Papazyan

К сожалению задача решилась за пару срок

char*l="ustvrtsuqqqqqqqqyyyyyyyy}{|~z|{}"
" 76Lsabcddcba .pknbrq PKNBRQ ?A6J57IKJT576,+-48HLSU";
#define F getchar&z
#define v X(0,0,0,21,
#define Z while(
#define _ ;if(
#define P return--G,y^=8,
B,i,y,u,b,I[411],*G=I,x=10,z=15,M=1e4;X(w,c,h,e,S,s){int t,o,L,E,d,O=e,N=-M*M,K
=78-h<<x,p,*g,n,*m,A,q,r,C,J,a=y?-x:x;y^=8;G++;d=w||s&&s>=h&&v 0,0)>M;do{_ o=I[
p=O]){q=o&z^y _ q<7){A=q--&2?8:4;C=o-9&z?q["& .$ "]:42;do{r=I[p+=C[l]-64]_!w|p
==w){g=q|p+a-S?0:I+S _!r&(q|A<3||g)||(r+1&z^y)>9&&q|A>2){_ m=!(r-2&7P G[1]=O,
K;J=n=o&z;E=I[p-a]&z;t=q|E-7?n:(n+=2,6^y);Z n<=t){L=r?l[r&7]*9-189-h-q:0 _ s)L
+=(1-q?l[p/x+5]-l[O/x+5]+l[p%x+6]*-~!q-l[O%x+6]+o/16*8:!m*9)+(q?0:!(I[p-1]^n)+
!(I[p+1]^n)+l[n&7]*9-386+!g*99+(A<2+!(E^y^9)_ s>h||1<s&s==h&&L>z|d){p[I]=n,O
[I]=m?*g=*m,*m=0:g?*g=0:0;L-=X(s>h|d?0:p,L-N,h+1,G[1],J=q|A>1?0:p,s)_!(h||s-1|B
-O|i-n|p-b|L<-MP y^=8,u=J;J=q-1|A<7||m||!s|d|r|o<z||v 0,0)>M;O[I]=o;p[I]=r;m?
*m=*g,*g=0:g?*g=9^y:0;}_ L>N){*G=O _ s>1){_ h&&c-L<0)P L _!h)i=n,B=O,b=p;}N=L;}
n+=J||(g=I+p,m=p<O?g-3:g+2,*m<z|m[O-p]||I[p+=p-O]);}}}}Z!r&q>2||(p=O,q|A>2|o>z&
!r&&++C*--A;}}}Z++O>98?O=20:e-O);P N+M*M&&N>-K+1924|d?N:0;}main{Z++B<121)*G
++=B/x%x<2|B%x<2?7:B/x&4?0:*l++&31;Z B=19){Z B++<99)putchar(B%x?l[B[I]|16]:x)_
x-(B=F{i=I[B+=(x-F)*x]&z;b=F;b+=(x-F)*x;Z x-(*G=Fi=*G^8^y;}else v u,5);v u,
1);}}

Marinavo_0507

это ведь не стандартный C или C++?

Maximilian

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

Serab

почему? Я бы сказал C

Maximilian

нечто подобное есть в учебнике павловской по С++
там - ЭТОТ код выдаёт стишок

Dasar

К сожалению задача решилась за пару срок
в такой игре стоит ориентироваться на "код, который хорошо пахнет", а там в строке будет один statement, или пара операций, или другой аналог в виде прагмы

apl13

Когда я жил в Рио-де-Жанейро, у меня этот код однажды выдал прогноз погоды на следующую неделю и полбанки свежемолотого кофе. :ooo:

katrin2201

Именно так.
Делать что-то большое и замороченное в такой разношерстной аудитории проблематично.
А написать данное простое приложение, даже если человек в первый раз видит борланд цпп билдер, более чем реально.
Для меня, например, фан в том, что на цпп билдере я ни разу ничего не писал, на просто цпп писал последний раз лет 6 назад, и плюс интересно осилится ли такая простая штука без какого-то особенного контроля.
Я создал скелетонный проектик на гитхабе, чтобы если кому интересно без лишнего бла-бла мог пойти и сразу заняться делом =)
От себя пожелания:
 - таргет я для себя вижу так - гуевое (не зря же билдер) хот-сит чесс приложение с хуман-ридэбл кодом, в котором пользователи могут возюкать мышкой и/или вводить ходы с клавы, с валидацией ходов
 - делать пулл-реквесты на боле-мене большие кусочки - хотя бы несколько строк - чтоб было понятно к чему вы вообще примерно, и чтобы мне не пуллить слишком часто незаконченную неведомую фигню
 - не перехерачивать паблик интерфейсы из религиозных/стилевых соображений - иначе я просто не осилю мердж
Если для кого-то проблема слить билдер с торрентов - пишите, выложу на хттп.
Если кто-то не умеет гит\гитхаб, и хочет научиться - пишите, попробую помочь.

Maximilian

Я создал скелетонный проектик на гитхабе,
моледец. теперь можешь смело его стирать

Marinavo_0507

ну например объявлять тип возвращаемого значения надо по стандарту вроде

Serab

Нет, в C «default int» же. И там вообще декларации функций не обязательны (нету #include <stdio.h>, заметь)

Serab

тфу, четыре раза правил пост, какую-то шнягу писал все :)

okis

декларации как раз нужны, но не обязательно из-за одной функции целый h-файл включать.

Serab

там вызов идет за декларацию :)

otets-mihail

Вах, зачэм пэренес?
Без женщины-топикстартера этот тред обречен на унылое затухание.
Оставить комментарий
Имя или ник:
Комментарий: