算是一个课程作业吧,找个地方存一下。小生学疏才浅,若程序中有不当的地方或是可以改进的地方,也欢迎各位大神指点指点,要是有后辈看了觉得有帮助更是小生的荣幸。 扎金花这个游戏就不在此多作介绍了,那么下面就是源代码。#include<stdio.h>
#include<time.h>
#include<stdlib.h>
struct card//结构体定义一副牌
转载
2023-10-08 07:20:05
117阅读
话不多说,代码先给出来 文件名 mahjong.go 很多的实现方法,写的注释我觉得已经很详细了,多看下注释。package main
import (
"sort"
"fmt"
)
//牌类型
type CardType int
const (
CardType_Unknown CardType = iota
CardType_W
CardType_T
CardType_S
)
转载
2024-02-14 13:16:36
314阅读
犹豫工作和自己学习了一些新的东西,今天打开博客吓自己一跳,原来自己这么久没有更新博客了。看来以后还是要坚持每周最少写一篇博客啊。在讲解麻将胡牌算法之前,先说说为什么写这么一篇博客吧。在做项目中,其实前辈们早就封装好了一些胡牌的检测算法,不过我还算是一个比较喜欢刨根问到底的人,每次调用别人写好的算法的时候总是想知道算法的具体实现。然而在看算法具体实现的时候,发现里面一个二维矩阵有点复杂,并且没有没有
转载
2024-01-16 18:32:20
13阅读
#include"a.h"
int main()
{
int pai[14] = { 0, };
int i = 0;
int sum = 0; //总的分这里默认为三家
int num = 0; //应该所得到得分数
printf("请选择底金:");
scanf("%d",&DiJ);
printf("本局底金为:%d\n", DiJ);
/*********
转载
2023-10-08 21:16:10
27阅读
# 创建一个简单的麻将游戏代码示例
在这篇文章中,我将带你完成一个简单的麻将游戏的实现流程。我们将使用Java作为编程语言。在开始之前,我们首先梳理一下整个流程。
## 实现流程
下面是我们将要遵循的步骤表格:
| 步骤 | 描述 |
|------|------|
| 1 | 设计麻将牌结构 |
| 2 | 创建麻将牌的生成和洗牌功能 |
| 3 | 设计玩家和游戏逻辑
原创
2024-09-26 05:58:52
382阅读
/** * 手牌 * *@authorzkpursuit */public classHandCards{
/** * 获取牌号最左边的一位数,如果牌为筒、条、万,则返回值为牌类型数值 * *@paramcard 牌号 *@return牌号从左至右第一位数(十位数) */ publicfinalstaticintgetCardLeftValue(intcard)
转载
2024-04-11 12:39:18
60阅读
麻将一组有1-9筒,1-9条,1-9万,中发白,东南西北,34张牌,共有四组,共136张牌。可以通过一个数组来表示则一组牌,代码如下:private final static String[] mahjong = { "1T", "2T", "3T", "4T", "5T",
"6T", "7T", "8T", "9T", "1S", "2S", "3S", "4S", "
转载
2024-05-10 09:24:06
164阅读
基于tcp通讯的麻将游戏为什么可以实现,基础还是在于一个服务器可以连接多个客户端,游戏主程序作为服务器,连接4个客户端,利用读写字符串进行游戏。 项目采用tcp工具,和控制台:游戏逻辑划分:大体的分为3个模块,一个就是发牌的模块,一个是摸牌的模块,一个是赢棋的判定。 首先,讲第一个模块的实现,发牌之前的准备,我这里直接将简化之后的,需要2个数组,一个String数组储存136张牌的牌面信息,即中文
转载
2024-06-26 11:43:01
42阅读
#coding='utf-8'#author='小罗'#麻将胡牌算法#判定规则:n*(abc)+m*(ddd)+ee#特殊牌型:7*(ee),7对。##规则:##胡牌的基础牌型:##(1)11、123、123、123、123##(2)11、123、123、123、111(1111,下同)##(3)11、123、123、111、111##(4)11、123、111、111、111##(5)11、11
转载
2024-04-22 21:00:47
1337阅读
SDL2 游戏开发日记(九) 单机麻将单机麻将的基本功能其实年前已经完成了,只是写文档麻烦,再加上懒癌和重度拖延症,就一直拖着没更新。今天周末一个人没什么事干,抽空把它更新了。麻将的表示用数组表示,int card[136];值分别是 0-135;值/40-8:表示万,9-17:表示饼,18-26:表示条,27-33:表示东南西北中发白class MahjongCard : public Rend
转载
2024-03-14 07:51:57
597阅读
过年回家在家打麻将,觉得蛮有趣的,就用java写了一个麻将小游戏(没有界面,只能在控制台玩)。 说明:使用语言:java(jdk1.7)开发工具:eclipse项目集成:maven1 麻将说明1.1 方位说明(请注意“人”这个玩家的位置)1.2 规则说明可以碰牌、杠牌不能吃牌有东西南北中发白有癞子可以自摸,可以放炮其余的麻将知识请自行百度2 架构图3 工程结构图4 代码如下:4.1关于麻将的be
转载
2023-09-01 12:20:56
18阅读
胡牌:平胡:1对将及4副(顺子/刻子)对对胡:4副刻子+1对将组成的胡牌七小对:全部牌都是1对门清:全部牌都是自己摸的,没有碰和暗杠全求人:全部碰或明杠,手上只剩一张牌,并且是点炮胡,不能自摸清一色:全部都是一色的平胡(包含万、条、筒、字)七大对:有4张一样的牌且没杠,其余牌都是对子豪华大七对:有至少两个4张一样的牌,其余牌都是对子定义麻将牌:public class MajiangCard ex
转载
2024-01-02 15:36:29
123阅读
在当今的移动应用开发中,开发者常常面临各种 UI 显示问题,其中“android 显示麻将”的问题尤其棘手。本文将详细阐述如何在 Android 应用中实现麻将的显示效果。这个过程将涵盖背景描述、技术原理、架构解析、源码分析、应用场景等方面。
在开始之前,我们想象一下麻将牌的显示流程。首先,要获取麻将牌的资源,其次,将资源进行渲染,最后展示在界面上。我们采用一个流程图来表示这一过程:
```m
记录一下麻将的通用胡牌算法实现,只要满足X*ABC + Y*DDD + EE 即可胡牌。在这里先分析一下最简单的胡牌思路:先找出所有可能的将牌,若除去两张将牌之外的所有牌都能成刻或顺,则可胡牌。将牌就是公式里唯一的对子即是EE、顺子ABC或者刻子DDD。将牌的查找:遍历每张手牌,若有两张以上相同牌就能作将,或者用一张癞子凑也可。接下来就只要判断一副牌是否成扑,伪码如下:function
转载
2024-09-06 09:44:42
525阅读
麻将胡牌算法1、麻将的基本规则2、胡牌算法解析3、麻将的表示方法一副完整的麻将表示方法手牌表示方法4、核心代码 1、麻将的基本规则常见的麻将一共有三种花色,万、条、筒。每种花色的牌都有1~9个数值,每种数值的牌有4张,总共有493=108张牌。胡牌时手牌必须满足(不包含特殊牌型,如对对胡,大对子等)mABC+nDDD+EE(m >=0,n>=0),即一对将牌除开,剩余的牌全能组成顺子
转载
2024-01-14 21:00:49
147阅读
题目描述麻将是一个中国原创的4人玩的游戏。这个游戏有很多变种,但本题只考虑一种有136张牌的玩法。这136张牌所包含的内容如下。饼(筒)牌:每张牌包括一系列题目描述麻将是一个中国原创的4人玩的游戏。这个游戏有很多变种,但本题只考虑一种有136张牌的玩法。这136张牌所包含的内容如下。饼(筒)牌:每张牌包括一系列点,每个点代表一个铜钱。本题中用1T、2T、3T、4T、5T、6T、7T、8T、9T表示
转载
2024-01-02 22:08:18
12阅读
麻将牌型主是AA,AAA,AAAA,ABC的组合构成胡牌,可以把牌分为明牌和手牌,明牌是指杠,吃,碰之后的牌,手牌指未露出来的牌,听牌只需要算手牌即可。听牌可以分为有对将,其它为圆句,只留一个需要圆句,吃牌胡,或者碰牌胡。如果无对将,则需所有为圆句和一张单牌吊将。 方法一:先取一对将,再把剩下的牌递归找整句,直到只剩两张牌,算出缺口牌即为听的牌。中间任意一步失败也该组合失败。先找整句,剩
转载
2023-06-13 21:53:21
322阅读
声明: 算法并非原创 , 但是来源已经忘记了 , 当时考虑算法的时候看了比较多的麻将胡牌算法 , 想寻找自己比较容易理解的 , 找了几篇,所以算法的出处已然忘记,不过还是感谢下原创吧 . 算法理解之后就不难了 , 下面开始详细的阐述了.1. 将麻将抽象为数字 数字 {01 ~ 09} 表示 {1 ~ 9} 筒 数字 {11 ~ 19} 表示
转载
2024-04-22 09:43:12
239阅读
这篇博客主要是记录在学习java集合中,使用相关知识点完成XX(哈哈 不能暴露了)麻将的准备牌、洗牌、发牌、看牌基本功能。 ####需求分析A:XX麻将的功能需求分析
a:具体规则:
1. 组装136张麻将
条、筒、万加到一起的数目是108张
东、西、南、北风、红中、白皮、发财是28张,总共136张
2. 将136张牌顺序打乱
转载
2023-11-20 09:14:13
44阅读
import java.util.List;
import java.util.Scanner;
public class Main {
public&
原创
2016-09-11 10:45:41
1276阅读