鱼C论坛

 找回密码
 立即注册
查看: 2993|回复: 8

老虎机程序疑难求助

[复制链接]
发表于 2016-10-18 20:34:14 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 江上客-无类 于 2016-10-21 18:19 编辑

首先感谢 clb929 的分享

原文地址http://bbs.fishc.com/forum.php?mod=viewthread&tid=34808

通过他的实例 基本了解了一下 老虎机的基本构架和实现方法

代码比较简练 大多能看的懂
但对于 temp 这个值的用法存在疑虑 现将源码(考虑太长有适当删减) 贴在下方 求过路大神指点迷津

unit tiger;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
   ...
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var                                //变量基础值和声明
  Form1: TForm1;
  Jifen: Integer = 100;
  Shu: Integer = 0;
  Niu: Integer = 0;
  Hu: Integer = 0;
  Tu: Integer = 0;
  Long: Integer = 0;
  She: Integer = 0;
  Ma: Integer = 0;
  Yang: Integer = 0;
  Hou: Integer = 0;
  Gou: Integer = 0;
  Ji: Integer = 0;
  Zhu: Integer = 0;                //以上为十二个候选位置
  Sign: Integer = 0;                //确定是否在进行中
  Result: Integer = 0;        //确定结果
[b]  Temp: Integer =0;                //不明白是干什么的[/b]
  Time: Integer = 2;

implementation

{$R *.dfm}


procedure TForm1.FormCreate(Sender: TObject);                 //窗口初始化积分
begin
  Label17.Caption:= IntToStr( Jifen );
end;

procedure TForm1.Button2Click(Sender: TObject);         //按下相关按钮开始加注 //共计12个按钮
begin
  if ( Sign = 0 ) and ( Jifen > 0 )
  then
    begin
      Shu:= Shu + 10;
      Jifen:= Jifen - 10;
      Label31.Caption:= IntToStr( Shu );
      Label17.Caption:= IntToStr( Jifen );
    end;
end;
...

procedure TForm1.Button1Click(Sender: TObject);        //按下开始摇奖按钮
begin
  if ( Sign = 0 ) and ( ( Shu + Niu + Hu + Tu + Long + She + Ma + Yang + Hou + Gou + Ji + Zhu ) <> 0 )
  then
    begin
      Randomize;                        
      Sign:= 1;                                //进入摇奖模式
      Result:= Random( 16 );        //在十二个候选和2个特2个空总计16 个选项中计算出结果
      Timer1.Enabled:= True;        //打开时间控件
    end;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if ( Temp <= (Result + 16) )   //此处为疑问点,temp并未赋值 初始仅为0 Result的随机值为0~15 加16以后一定是大于Temp 这个判断究竟判断了什么?
  then
    begin
         case ( Temp ) of         //这里就更迷糊了Temp只是0 如何进行case? 并没有随机赋值之类他的0以上的值从那来的呢?
        0,16:  //形成转动效果
          begin
            Label16.Color:= clAqua;
            Label1.Color:= clRed;
          end;
...
        15,31:
..
      end;
   Temp:= Temp + 1;  //这个也是一样不知道是计算了个什么?
    end
  else
    begin
      Timer1.Enabled:= False;
      case ( Result ) of
        0: Jifen:= Jifen + Shu * 2 * Time;  //根据结果计算出中奖积分  *Time 是相当于四倍么?比如押了10 中了得40?
..
        15: Jifen:= Jifen + Zhu * 2 * Time;
      end;
      Label17.Caption:= IntToStr( Jifen ); //获得中奖积分
      Shu:= 0;
  ..
      Zhu:= 0;  
      Sign:= 0;
      Result:= 0; //清零
      Temp:=0; //temp又变成0了。。。
      Label31.Caption:= IntToStr( Shu );
      Label32.Caption:= IntToStr( Niu );
      Label33.Caption:= IntToStr( Hu );
      Label34.Caption:= IntToStr( Tu );
      Label35.Caption:= IntToStr( Long );
      Label36.Caption:= IntToStr( She );
      Label37.Caption:= IntToStr( Ma );
      Label38.Caption:= IntToStr( Yang );
      Label39.Caption:= IntToStr( Hou );
      Label40.Caption:= IntToStr( Gou );
      Label41.Caption:= IntToStr( Ji );
      Label42.Caption:= IntToStr( Zhu );
    end;
end;

end.

游客,如果您要查看本帖隐藏内容请回复

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2016-10-18 20:36:08 | 显示全部楼层
感谢各位大神的回复和帮助~!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-10-18 23:34:22 | 显示全部楼层
超级玛丽 顶~~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-10-19 03:23:38 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-10-19 09:23:55 | 显示全部楼层
mark
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-10-19 11:57:10 | 显示全部楼层
看看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2016-10-20 10:34:14 | 显示全部楼层
顶顶求关注
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-1-31 15:05:36 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-1-31 15:15:10 | 显示全部楼层
temp这个变量一般在C语言里只用于中介   你看过指针吗  你看过C语言吗  你应该好好看下C语言 那是一本好书
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-2 21:54

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表