Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Клуб программистов > Свободное общение
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.09.2010, 11:47   #21
Gambler
Игрок
Форумчанин
 
Аватар для Gambler
 
Регистрация: 29.10.2006
Сообщений: 367
По умолчанию

люблю писать в лабах:
Код:
var A: boolean;
X: integer;
...
A:=X=3;
преподы в моем универе зависают. Они ждут
Код:
var A: boolean;
X: integer;
...
if X=3 then A:=true else A:=false;
Жизнь всегда игра. Но смерть - не всегда поражение.

#define true (Math.random()>0.5) //Удачной отладки
Gambler вне форума Ответить с цитированием
Старый 29.09.2010, 12:28   #22
Smitt&Wesson
Старожил
 
Аватар для Smitt&Wesson
 
Регистрация: 31.05.2010
Сообщений: 13,964
По умолчанию

Лет десять назад писал тотализатор.
Шесть лошадок бегут слева направо.
Какая первой добежит - та и выигрывает.
Цитата:
const TIP = 6; // Количество типов движений лошади
/*
Количество поз определённого типа загруженное из файлов. Имена папок приведены
ниже.
0 - POZICIA Выход лошади на позицию
1 - POVOROT Поворот лошади для ухода с позиции
2 - EXIT Уход лошади с позиции
3 - ZABEG Позы визуализации забега
4 - OJIDANIE Ожидание забега
*/
int kvoPoz[TIP] = {1,43,43,43,43,43};
const TRECK = 6;// Количество лошадей
int horse;// Текущая лошадь
int tip[TRECK];// Тип движения текущей лошади
int poza[TRECK];// Текущая поза лошади
int x[TRECK];// Текущая позиция лошади
int y[TRECK] = {120,186,252,318,384,450};//{124,214,304,394,484,574};// Вертикальное смещение спрайта
int zdr[TRECK];// Случайная задержка движения лошадей
int zdrPoz[TRECK];// Случайная задержка поз лошадей
int stRnd[TRECK];// Счетчик разности вероятностей выигрывания
int zamedl[TRECK];// Замедлитель (ускоритель) движения лошадей. -N - ускоряет
// +N - замедляет.
bool activ[TRECK];// Определяет активность текущей лошади
int stIgr[TRECK];// Счетчик количества игр от последнего выпуля
О структурах, я ещё тогда не знал.
Сейчас бы написал так:

struct HORSE
{
int tip;// Тип движения текущей лошади
int poza;// Текущая поза лошади
int x;// Текущая позиция лошади
int y;// Потом присвоить {120,186,252,318,384,450} Вертикальное смещение спрайта
int zdr;// Случайная задержка движения лошадей
int zdrPoz;// Случайная задержка поз лошадей
int stRnd;// Счетчик разности вероятностей выигрывания
int zamedl;// Замедлитель (ускоритель) движения лошадей. -N - ускоряет
// +N - замедляет.
bool activ;// Определяет активность текущей лошади
int stIgr;// Счетчик количества игр от последнего выпуля
};

HORSE Horse[TRECK];

Представляете как я с массивами намучился .
Пиши пьяным, редактируй трезвым.
Справочник по алгоритмам С++ Builder
Smitt&Wesson вне форума Ответить с цитированием
Старый 29.09.2010, 17:41   #23
Selestis
Форумчанин
 
Аватар для Selestis
 
Регистрация: 21.01.2009
Сообщений: 719
По умолчанию

А вот код загрузки данных для моей игрушки:
Код:
while not eof(f) do begin
   readln(f,s);
   if s = '' then continue;
   if s = 'AMMO' then begin
      SetLength(Ammos,Length(Ammos)+1);
      Ammo:=TAmmo.Create;
      Ammos[Length(Ammos)-1]:=Ammo;
      readln(f,Ammo.IDS);
      continue;
   end else
   if s = 'NAME' then begin
      repeat
         readln(f,s);
         if s = '/NAME' then break;
         if s = Language then readln(f,Ammo.Name) else readln(f);
      until s = '/NAME';
   end else
   if s = 'TEXTURE' then begin
      readln(f,s);
      Img:=FindImage(s);
      Ammo.Texture:=Img;
   end else
   if s = 'FLAMETEXTURE' then begin
      readln(f,s);
      Img:=FindImage(s);
      Ammo.FlameTexture:=Img;
      if Ammo.GlowSize <> 0 then begin
         readln(f,s);
         Ammo.GlowTexture:=FindImage(s);
      end;
   end else
   if s = 'DAMAGE' then begin
      readln(f,Ammo.Damage[0],Ammo.Damage[1],Ammo.Damage[2],Ammo.Damage[3]);
   end else
   if s = 'PENETRATION' then begin
      readln(f,Ammo.Penetration[0],Ammo.Penetration[1],Ammo.Penetration[2]);
   end else
   if s = 'FLYDISTANCE' then begin
      readln(f,Ammo.FlyRadius);
   end else
   if s = 'SPEED' then begin
      readln(f,Ammo.Speed);
   end else
   if s = 'SIGNATURE' then begin
      readln(f,Ammo.SIGNATURE);
   end else
   if s = 'FALLOFF' then begin
      readln(f,Ammo.FALLOFF);
   end else
   if s = 'ROTATION' then begin
      readln(f,Ammo.ROTATION);
   end else
   if s = 'ACTIVETIME' then begin
      readln(f,Ammo.ACTIVETIME);
   end else
...
И ещё примерно 1000 строк такого же говнокода... Но всё работает на ура =)
З.Ы.
И самое главное, быстро.
Изобретатель велосипедов

Последний раз редактировалось Selestis; 29.09.2010 в 17:56.
Selestis вне форума Ответить с цитированием
Старый 29.09.2010, 18:23   #24
ZvEr_HaCkEr
VisualC++/DirectX
Форумчанин
 
Аватар для ZvEr_HaCkEr
 
Регистрация: 16.07.2010
Сообщений: 831
По умолчанию

А у меня щаз кроме него ничего и не получается А если по теме то так создавал врагов в космической игрухе
Цитата:
procedure sozdatvraga;
begin
randomize;
e5x:=45+random(379);
e5y:=-9;
e4x:=69+random(234);
e4y:=-2;
E3x:=20+random(450);
E3Y:=-5;
E2x:=125+random(100);
E2Y:=-4;
Ex:=325+random(140);
Ey:=-7;
vrag5:=tbitmap.Create;
vrag5.LoadFromFile('pictures/e5.bmp');
vrag5.Transparent:=true;
vrag4:=tbitmap.Create;
vrag4.LoadFromFile('pictures/e4.bmp');
vrag4.Transparent:=true;
vrag3:=Tbitmap.Create;
vrag3.LoadFromFile('pictures/e3.bmp');
vrag3.Transparent:=true;
vrag2:=Tbitmap.Create;
vrag2.LoadFromFile('pictures/e2.bmp');
vrag2.Transparent:=true;
vrag:=Tbitmap.Create;
vrag.LoadFromFile('pictures/e1.bmp');
vrag.Transparent:=true;
vragBorn:=true;
vragBorn2:=true;
vragBorn3:=true;
vragborn4:=true;
vragborn5:=true;
end;
procedure ibitvrag();
begin
vrag.Free;
vragBorn:=false;
end;
procedure ibitvrag2();
begin
vrag2.Free;
vragBorn2:=false;
end;
procedure ibitvrag3();
begin
vrag3.Free;
vragBorn3:=false;
end;
ну и еще 1100 подобных строк

Последний раз редактировалось ZvEr_HaCkEr; 29.09.2010 в 18:30.
ZvEr_HaCkEr вне форума Ответить с цитированием
Старый 30.09.2010, 22:19   #25
ололошенько
Заблокирован
 
Регистрация: 10.08.2010
Сообщений: 566
По умолчанию

а что такое исходники?
ололошенько вне форума Ответить с цитированием
Старый 01.10.2010, 09:33   #26
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Это код, который ты, человек, пишешь - твоя программа, которая будет компилироваться. Что такое "исходник", "исток"? Посмотри корень этого слова
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 20.07.2011, 12:49   #27
LN_
 
Аватар для LN_
 
Регистрация: 18.07.2011
Сообщений: 9
По умолчанию

"Код не мой, но стиль....

Это игрушка.
Скомпилированый файл во вложении."



Это на си++?
Американский форум - задал вопрос, получил ответ.
Еврейский форум - задал вопрос, тебе задали вопрос.
Русский форум - задал вопрос, тебе долго объясняют какой ты мудак ))) (с-хз)
LN_ вне форума Ответить с цитированием
Старый 22.07.2011, 13:57   #28
crazy horse
ios developer
Старожил
 
Аватар для crazy horse
 
Регистрация: 16.11.2007
Сообщений: 2,885
По умолчанию

Очень часто по вполне понятным причинам (небольшие размеры проекта, сокращенные сроки сдачи, малая вероятность повторного использования в будущем) вполне нормальная и даже практическая обязательная практика писать код так, чтобы он работал и не глюкал, но отнюдь не обладал какими -либо эстетическими качествами и не обязательно следовал каким-либо парадигмам. Последнее - порой даже очень вредно, поскольку продумать структуру того же несложного графического редактора, реализованного в mvc+strategy займет времи в несколько раз больше, чем его написать как бог на душу положит. Если уж в дальнейшем предвидится нечто фундаментальное на его основе - да, рефакторинг. А если тупо модуль в код про существование которого забудешь очень скоро - то клиент никогда не платит за красоту и поддерживаемость кода.
Делайте что хотите, но чтобы через полчаса в лесу было светло, сухо и медведь!
crazy horse вне форума Ответить с цитированием
Старый 22.07.2011, 14:38   #29
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

Во, давно писал на Паскале
Код:
Unit KeyBoardAPI;

Interface

Uses CRT;

Const
		Escape   = #27;
		Enter    = #13;
		Space    = #32;
		UpKey    = #72;
		DownKey  = #80;
		LeftKey  = #75;
		RightKey = #77;
		
Var
	lastKey : Char;

Function IsInList(X : Char) : Boolean;
Function  GetKey : Char;
Procedure LogKey;
Procedure GetUntilEq(X : Char);
Procedure ResetKey;


Implementation 

Function IsInList(X : Char) : Boolean;
Begin
	  IsInList:=(X = Escape)  or (X = Enter)   or
	            (X = Space)   or (X = UpKey)   or
				(X = DownKey) or (X = LeftKey) or
				(X = RightKey);
End;

Function GetKey : Char;
Var
    T : Char;
Begin
	  T:=ReadKey;
	  If (T <> #0) and (IsInList(T)) Then
	    lastKey:=T;
End;

Procedure LogKey;
Begin
	  Case lastKey Of
	  Escape   : Writeln('lastKey = Ecsape');
	  Enter    : Writeln('lastKey = Enter');
	  Space    : Writeln('lastKey = Space');
	  UpKey    : Writeln('lastKey = UpKey');
	  DownKey  : Writeln('lastKey = DownKey');
	  LeftKey  : Writeln('lastKey = LeftKey');
	  RightKey : Writeln('lastKey = RightKey');
	  End;
End;  

Procedure GetUntilEq(X : Char);
Var
    T : Char;
Begin
	  While T <> X Do
	  Begin
			If KeyPressed Then
			   T:=GetKey;
	  End;
End;

Procedure ResetKey;
Begin
	  lastKey:=#0;
End;

End.
_-Re@l-_ вне форума Ответить с цитированием
Старый 22.07.2011, 22:33   #30
eoln
Старожил
 
Аватар для eoln
 
Регистрация: 26.04.2008
Сообщений: 2,689
По умолчанию

Не так ужасен код, как его применение.
Блокировка автоотключения жёсткого диска.
Код:
procedure TForm1.Timer1Timer(Sender: TObject);//интервал 1 минута
var
  f: file of byte;
  c: byte;
begin
  assignfile(f, 'c:\0.dsk');
  if fileexists('c:\0.dsk') then reset(f) else rewrite(f);//!!!
  c := 0;
  write(f, c);
  closefile(f);
end;
Многочасовые попытки отключить энеогосбережение не удались, пришлось вот так делать. Зато сейчас никаких проблем
eoln вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите исправить программу(условие, мой код, все присутствует!) djon_limit Общие вопросы C/C++ 1 29.10.2009 19:34
Мой форум Antoha79 О форуме и сайтах клуба 6 24.08.2009 12:29
Код игры на Паскале и на Делфи сильно отличается? Как переписать код с Паскаля в Делфи? Mclaren Помощь студентам 2 27.04.2009 22:37
Подправьте мой код пожалуйста Volchara Общие вопросы C/C++ 5 06.04.2009 17:05
Почему мой код не завершает процесс? Stilet Win Api 1 24.07.2008 20:28