Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Пн Май 24 2004 12:41 Заголовок сообщения: Как не следует сдавать лабу преподавателю |
|
|
В продолжение наболевшей темы по билдеру и всяким наворотам.
Я думаю, многие из здесь присутсвующих видели, пример кода на си, который выводит на экран рождественские стишки, причем сам исходный код абсолютно нечитаем.
Вот и мне захотелось состряпать что-то подобное. Попробуйте, не компиля прогу, по исходнику определить, что она делает:)
Сколько времени вы на это затратите?
Должно работать на ТурбоСи и на 3.1
#include<stdio.h>
#include<stdlib.h>
//Пример того, как не следует сдавать лабу преподавателю
//Автор - Грачев Евгений НГТУ ФПМИ ПМ-13
//Примечание: Желательно, чтобы файл имел расширение "*.c"
# /**//**//**//**/define __ /*//*max/*/int/*/*/
#define _main() _main/*peek*/
# define void *
# define while(until) ; peek: }
/*#*/#/*//*#*/define _ main(__ _main(),__ I,__ l){
__ Ox213=0xE,put,get;__ _ __(void max)(__,__,__)=main;if(Ox213% 2
==0 ){Ox213--;main(0,-1,-1);exit(0);}if(I==0xFFFF&&l==0xFFFF){for(
;_main()<Ox213 *Ox213;_main++ )max(0x0,_main()%Ox213+(0x312^787),
_main/Ox213+1 ),(_main% Ox213+0x1-Ox213)?I:printf("%c",((_main+++
_main)* 5+_main+0xFFFA)/_main--); ;;asm jmp peek (0x40, 0x17);}(!
_main())?put=Ox213/2,get= 2:_main(), !(put==I&& get==l&&_main()!=
0xFFFF+1)?get+=(!(_main()%Ox213)&&- _main()<0xFFF6+ 0x14/2?1:-1+(
137-0x89)*(put++)),put=(put-Ox213-0x1 ?put?put:Ox213:1)+(get=get-
Ox213+ 0xFFFF?get?get:Ox213:1)% 0x213/0x573,max(_main()+0x1,I, l)
: printf( "%3d ", _main( ) ) while ( - ( _main ----- _main ++ ) ) |
|
Вернуться к началу |
|
|
Astaroth
Зарегистрирован: 17.05.2004 Сообщения: 453 Откуда: Питер
|
Добавлено: Пн Май 24 2004 12:46 Заголовок сообщения: |
|
|
Батенька, вы изващенец!
Моих познаний не хватает, признаюсь честно! Даже закрадывается мысль, что ОНО не работает, но я ее гоню нафиг. Ты Hello World так же изврати вот прикольно будет! _________________ Не очеловечивайте компы - они этого не любят! |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Пн Май 24 2004 13:17 Заголовок сообщения: |
|
|
Только, чур, если кто догадается, остальным не говорить. Так интересней будет |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Чт Май 27 2004 15:53 Заголовок сообщения: |
|
|
Скоро, по спецзаказу, выложу хелловорлд. |
|
Вернуться к началу |
|
|
Astaroth
Зарегистрирован: 17.05.2004 Сообщения: 453 Откуда: Питер
|
Добавлено: Чт Май 27 2004 16:11 Заголовок сообщения: |
|
|
Ты ответ по предыдущему кошмару дай, а то компилять лениво... и даже немножко страшно _________________ Не очеловечивайте компы - они этого не любят! |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Чт Май 27 2004 16:58 Заголовок сообщения: |
|
|
OK. Для ленивых: прога строит магический квадрат 13х13 индийским способом.
Почему - 13х13? Просто считааю его своим счастливым числом. Уж больно часто оно встречается в моей жизниМожно переделать за пять секунд в любой нечетный МК. |
|
Вернуться к началу |
|
|
Astaroth
Зарегистрирован: 17.05.2004 Сообщения: 453 Откуда: Питер
|
Добавлено: Чт Май 27 2004 17:06 Заголовок сообщения: |
|
|
А "чистый" код мона посмотреть? И что есть магический квадрат? Я понимаю что если скомпилять, то все увижу, но вопрос-то останется - может их много видов бывает А тут еще и индийским способом! _________________ Не очеловечивайте компы - они этого не любят! |
|
Вернуться к началу |
|
|
Роберто Гость
|
Добавлено: Чт Май 27 2004 18:08 Заголовок сообщения: |
|
|
Ну хорошо ,что все разьяснилось . А то я уж подумал что уважаемый Грей исходник новомодного вирусака написал. |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Чт Май 27 2004 21:04 Заголовок сообщения: |
|
|
Можно было не полениться и откомпилить.
Разьясняю. Магический квадрат 13x13 - квадрат с вписанными в него числами от 1 до 169 (без повторов), суммы цифр в каждого ряда, столбца и главных диагоналей равны между собой. (сколько именно - забыл. Считать лень, вроде 1105)
Самих квадратов заданной размерности достаточно много. Если известен один, то можно получить еще десяток при помощи поворотов и отражений.
-----
Чистый код - вот.
#include<stdio.h>
int n=14,xx,yy;
int main(int i,int x,int y,int flag)
{
if (n%2==0){n--;main(0,-1,-1,0);return(0);}
if (x==-1&&y==-1)
{for(y=1;y<=n;y++){
for(x=1;x<=n;x++){main(0,x,y,1);}printf("\n");}
return(0);}
if (i==0){xx=n/2;yy=2;}
if (xx==x&&yy==y&&i!=0){printf("%3d ",i); return(0);} else
{if (i%n==0&&i>1)yy++;
else{xx++;yy--;}
if (xx>n)xx=1;if (xx<1)xx=n;
if (yy>n)yy=1;if (yy<1)yy=n;
main(i+1,x,y,1);}
}
n - на единицу выше, чем размерность квадрата.
Только квадраты нечетной ширины (3х3, 5х5....) |
|
Вернуться к началу |
|
|
Роберто Гость
|
Добавлено: Пт Май 28 2004 08:16 Заголовок сообщения: |
|
|
Ей GREA , дай мне (пожалуйста)!!!!!!!! исходник какой нибудь игрушки .. Ну хоть не кваки так тетриса ... |
|
Вернуться к началу |
|
|
Astaroth
Зарегистрирован: 17.05.2004 Сообщения: 453 Откуда: Питер
|
Добавлено: Пт Май 28 2004 09:16 Заголовок сообщения: |
|
|
Роберто писал(а): | Ей GREA , дай мне (пожалуйста)!!!!!!!! исходник какой нибудь игрушки .. Ну хоть не кваки так тетриса ... |
Нафига козе баян? Думаешь поймешь чё-нить? Вон в верху исходник лежит - прочесть сможешь? Просто с листа? И понять что он делает? Если нет, то учи Си, а о игрушках забудь, по крайней мере до тех пор пока не поймешь, что написание игры от написания фотошопа в принципе ничем не отличается. _________________ Не очеловечивайте компы - они этого не любят! |
|
Вернуться к началу |
|
|
Роберто Гость
|
Добавлено: Пт Май 28 2004 11:49 Заголовок сообщения: |
|
|
Не возражаете если я выложу свой исходник а вы попробуете угадать , что это за прога ? |
|
Вернуться к началу |
|
|
Гость
|
Добавлено: Пт Май 28 2004 14:03 Заголовок сообщения: |
|
|
2roberto codenet.ru sources.ru
очень важно для тебя: ALGOLIST.MANUAL.RU (забудь о игрушках, пока там не побываешь)
Надеюсь, исходник не на билдере?
(Это я, GREA. Лень входить: в терминалке коннект плохой) |
|
Вернуться к началу |
|
|
Роберто Гость
|
Добавлено: Пт Май 28 2004 17:12 Заголовок сообщения: |
|
|
Ну хоть ссылочку выхлопотал .
Спасибо (хотя пока не знаю за что , ведь небывал там ) |
|
Вернуться к началу |
|
|
Shrek Гость
|
Добавлено: Ср Июн 02 2004 18:51 Заголовок сообщения: Программирование |
|
|
А вообще C - это полная $^%$&!!!!! Вот так. Assembler - это ДА! SoftIce, мозги и ты Update'тишь Must Die! |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Ср Июн 02 2004 19:50 Заголовок сообщения: |
|
|
Наконец - то инет дома поехал. Вот. Смотрим, компилим, разбираем.
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
int main()
{long int i;
clrscr();
for(i=0;i<0x62dd+ random( random(NULL));i++);
printf("%c ", random(3+ printf("%c", random(3+ printf("%c",random(3+
printf("%c", random(3+ printf("%c", random(4)+ random(2)*7+0x65))+
random(2)*7+0x65))+random(2) *7+0x65))+
random(2)*7+0x65))+random(2) *7+0x65);
for(i=0;i<0x1973a +random( random( random( random(0xf-15))));i++);
printf("%c", (random(2+ printf("%c",(random(2+
printf("%c", (random(2+ printf("%c",(random(2+
printf("%c", (random(3)*4+random(6)+6)*random(1+( random(5)>0))+0x64))*4+
random(6)+6)* random(1+ (random(5)>0))+0x64))*4+
random(6)+6)* random(1+ (random(5)>0))+0x64))*4+
random(6)+6)* random(1+ (random(5)>0))+0x64))*4+
random(6)+6)* random(1+ (random(5)>0))+0x64);
getch();
return 0;
}
Кто сможет круче, просьба выкладывать сюда. Посмотрим, кто самый извращенец %)
Опять таки, должно работать на турбо и на 3.1
На остальном вломы проверять. Если чего не так, постите сюда.[/quote] |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Сб Июн 05 2004 20:40 Заголовок сообщения: |
|
|
Обалдеть. Все сюда.
http://uucode.com/obf/
Мне такое и не снилось |
|
Вернуться к началу |
|
|
dAnIK SeNT Гость
|
Добавлено: Вт Июн 08 2004 09:08 Заголовок сообщения: |
|
|
Скажи, плиз что там такое?
А то надо из дома глядеть - на работе доступ неполный, а интересно - страсть |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Вт Июн 08 2004 15:25 Заголовок сообщения: |
|
|
Да тоже самое, примерно, что и выше в топике. Типа, работы, победившие в конкурсе программерров-извращенцев. |
|
Вернуться к началу |
|
|
Astaroth
Зарегистрирован: 17.05.2004 Сообщения: 453 Откуда: Питер
|
Добавлено: Вт Июн 08 2004 15:29 Заголовок сообщения: |
|
|
Прикольнее по моему оптимизировать. помню ваял я что-то вроде монополии, и что-то там глюкало. Так я по запарке глюк не там ловить стал... Хе! Функцию одну в процессе ужал до 6 строк. А было наверное строк 20-25. Вот это оптимизация кода получилась.
ЗЫ А глюк совсем в другой ф-ции скрывался _________________ Не очеловечивайте компы - они этого не любят! |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Вт Июн 08 2004 15:40 Заголовок сообщения: |
|
|
Имхо, количество строк - не показатель.
Можно (при большом желании) и мсворд одной строкой написать (утрирую конечно).
Если уж пошло в сторону оптимизации, мерить лучше машинными командами после компиляции. |
|
Вернуться к началу |
|
|
Astaroth
Зарегистрирован: 17.05.2004 Сообщения: 453 Откуда: Питер
|
Добавлено: Вт Июн 08 2004 15:51 Заголовок сообщения: |
|
|
Ну не скажи! Я оптимизировал по принципу - это можно сделать оптимальнее, т.е. вылетали только ненужные строки.
А мерить машинными командами, это конечно да, тут не поспоришь. _________________ Не очеловечивайте компы - они этого не любят! |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Вт Июн 08 2004 16:18 Заголовок сообщения: |
|
|
Комментарии |
|
Вернуться к началу |
|
|
Astaroth
Зарегистрирован: 17.05.2004 Сообщения: 453 Откуда: Питер
|
Добавлено: Вт Июн 08 2004 16:23 Заголовок сообщения: |
|
|
GREA писал(а): | Комментарии |
Разбирает генетический хакер цепочку ДНК и видит
//A etot kusok ubrat nafig Arhangel Gavriil _________________ Не очеловечивайте компы - они этого не любят! |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Вт Июн 08 2004 19:08 Заголовок сообщения: |
|
|
Цеочка ДНК кодируется всего четырьмя символами. Поэтому, коментарии в ней могут храниться только в зашифрованном виде |
|
Вернуться к началу |
|
|
Alex_is
Зарегистрирован: 04.06.2004 Сообщения: 4
|
Добавлено: Вт Июн 08 2004 20:07 Заголовок сообщения: |
|
|
Bilo kak to , napisal "progu " prostejshij test , a ona u menja toka bazu voprosov i otvetov sozdavala minut 15 vot izvrat |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Вт Июн 08 2004 20:24 Заголовок сообщения: |
|
|
Так результат был коректным?
Мои друган писал такую штуку.
Есть десять точек. Надо определить, сколько прямых будут проходить хотя-бы через три точки.
Считала пол часа. Выдавала правильный ответ. Умудрился как-то сдать лабу |
|
Вернуться к началу |
|
|
Astaroth
Зарегистрирован: 17.05.2004 Сообщения: 453 Откуда: Питер
|
Добавлено: Ср Июн 09 2004 06:15 Заголовок сообщения: |
|
|
GREA писал(а): | Цеочка ДНК кодируется всего четырьмя символами. Поэтому, коментарии в ней могут храниться только в зашифрованном виде |
Ну ты сказал! Это ж от системы счисления все зависит! Если в двоичной, так и двумя символами кодировать можно. К тому же у тебя просто проблема с кодировками, и некоторые символы ДНК выводятся, как пробелы _________________ Не очеловечивайте компы - они этого не любят! |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Ср Июн 09 2004 06:43 Заголовок сообщения: |
|
|
На самом деле в цепочке все сложнее, произвольные комбинации, не могут встречаться чисто физически. Из-за особенностей водородных связей. Поэтому что-бы там чего то закодить, нужно потратить миллионы лет эволюции |
|
Вернуться к началу |
|
|
Astaroth
Зарегистрирован: 17.05.2004 Сообщения: 453 Откуда: Питер
|
Добавлено: Ср Июн 09 2004 06:48 Заголовок сообщения: |
|
|
Дык на то он и архангел! _________________ Не очеловечивайте компы - они этого не любят! |
|
Вернуться к началу |
|
|
GREA
Зарегистрирован: 14.05.2003 Сообщения: 758 Откуда: Новосибирск
|
Добавлено: Ср Июн 09 2004 07:19 Заголовок сообщения: |
|
|
С этим не поспоришь. |
|
Вернуться к началу |
|
|
|