`
cqh520llr
  • 浏览: 509719 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

随机数+组合

 
阅读更多
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title></title>
<script type="text/javascript">
	var xmlhttp;
	function createXmlHttpReq() {
		if (window.ActiveXObject) {
			xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
		} else if (window.XMLHttpRequest) {
			xmlhttp = new XMLHttpRequest();
		}
	}
	function createAcct() {
		createXmlHttpReq();
		xmlhttp.open("GET",'<c:url value="/fundAcct.do"/>',false);
		xmlhttp.onreadyStateChange = handleRes;
		xmlhttp.send(null);
	}
	function handleRes() {
		if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
			var div = document.createElement("div");
			div.style.width=document.documentElement.offsetWidth-22;
			div.style.height=document.documentElement.offsetHeight-22;
			div.style.position="absolute";
			div.style.top="0";
			div.style.left="0";
			div.style.background="#D4D4D4";
			div.style.filter = "alpha(opacity=80)";
			document.body.appendChild(div);
			document.getElementById("result").innerHTML = xmlhttp.responseText;
		}
	}
</script>
</head>
<body bgcolor="#EBEEF7">
<c:if test="${empty RES}">
	<c:if test="${not empty ERR}">
		<div><font style="font-weight: bold;" color="red"><c:out value="${ERR}"/></font></div>
	</c:if>
	<form id="myForm" action="<c:url value="/fundAcct.do"/>" method="post" target="targetFrame">
		编号:<input type="text" tabindex="0" name="fundNo" value="<c:out value="${fundAcctDTO.fundNo }"/>"/><br/>
		名称:<input type="text" tabindex="1" name="fundName" value="<c:out value="${fundAcctDTO.fundName }"/>"/><br/>
		<input type="submit" value="提交" id="sub">
	</form>
	<hr/><br/>
	<iframe name="targetFrame" src="/blank.screen" frameborder="0"></iframe>
	<script type="text/javascript">
		parent.document.all.targetFrame.style.height=document.documentElement.scrollHeight;
		parent.document.all.targetFrame.style.width=document.documentElement.scrollWidth;
	</script>
</c:if>
<c:if test="${not empty RES}">
	<table>
		<tr><td>结果</td></tr>
		<c:if test="${empty account}">
			<tr><td>无结果</td></tr>
		</c:if>
		<c:if test="${not empty account}">
			<c:forEach items="${account}" var="acc" varStatus="s">
				<tr><td>
					<c:out value="${acc}"/>----<c:out value="${blue[s.index]}"/>
				</td></tr>
			</c:forEach>
		</c:if>
	</table>	
</c:if>
</body>
</html>




import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

import com.paic.pafa.app.lwc.service.databinding.BindException;
import com.paic.pafa.app.web.servlet.ModelAndView;
import com.paic.pafa.app.web.servlet.mvc.SimpleFormController;
import com.pingan.nts.extrading.invest.dto.FundAcctDTO;

public class FundAcctController extends SimpleFormController {

	private static final Log LOG = LogFactory.getLog(FundAcctController.class);

	@Override
	protected ModelAndView onSubmit(HttpServletRequest request,
			HttpServletResponse response, Object command, BindException errors)
			throws Exception {
		response.setContentType("text/html; charset=utf-8");
		LOG.info("ENTER.....");
		FundAcctDTO fundAcctDTO = (FundAcctDTO)command;
		Map<String, Object> model = new HashMap<String, Object>();
		if (StringUtils.isEmpty(fundAcctDTO.getFundNo())) {
			model.put("ERR", "账号编码不能为空!");
			return new ModelAndView(getFormView(), model);
		}
		model.put("RES", "RES");
		if (StringUtils.isEmpty(fundAcctDTO.getFundName())) {
			model.put("account", randomNote(33, 6, 5));
			model.put("blue", randomNote(16, 1, 5));
		}
		return new ModelAndView(getSuccessView(), model);
	}

	private static List<String> ls_ball = new LinkedList<String>();
	private static void init(int range) {
		ls_ball.clear();
		for (int i = 1; i <= range; i++) {
			ls_ball.add(i<10?"0"+i:""+i);
		}
	}
	
	public static void main(String[] args) {
		System.out.println(getVal(33, 6));
		randomNote(33, 6, 1);
		randomNote(16, 1, 1);
	}
	
	private static String[] randomNote(int range, int number, int numbers) {
		String[] result = new String[numbers];
		for (int i = 0; i < numbers; i++) {
			result[i] = randomNum(number, range);
			System.out.println(result[i]);
		}
		return result;
	}
	
	private static String randomNum(int number, int range) {
		init(range);
		StringBuilder result = new StringBuilder();
		for (int i = 0; i < number; i++) {
			int size = random(ls_ball.size());
			result.append(", ").append(ls_ball.get(size));
			ls_ball.remove(size);
		}
		return result.substring(2);
	}
	
	private static int random(int deep) {
		return (int)(Math.random() * deep);
	}
	
	private static String getStrVal(int num1, int num2) {
		if (num1 == 1) {
			return "1";
		}
		StringBuilder result = new StringBuilder();
		for (int i = 1; i <= num2; i++) {
			result.append("-").append(num1--);
		}
		return result.substring(1);
	}
	
	private static int getVal(int num1, int num2) {
		String str1 = getStrVal(num1, num2);
		String str2 = getStrVal(num2, num2-1);
		int dividends = 1;
		int divisors = 1;
		int[] nums1 = getVal(str1);
		int[] nums2 = getVal(str2);
		for (int i = 0; i < nums2.length; i++) {
			for (int j = 0; j < nums1.length; j++) {
				if (nums1[j] % nums2[i] == 0) {
					nums1[j] = nums1[j] / nums2[i];
					nums2[i] = 1;
					break;
				}
			}
		}
		for (int n1 : nums1) {
			dividends *= n1;
		}
		for (int n2 : nums2) {
			divisors *= n2;
		}
		
		return dividends / divisors;
	}
	
	private static int[] getVal(String str) {
		String[] strs = str.split("-");
		int size = strs.length;
		int[] nums = new int[size];
		for (int i = 0; i < size; i++) {
			nums[i] = Integer.parseInt(strs[i]);
		}
		return nums;
	}
	
	private static void px(String targetStr, int number) {
		StringBuilder sb = new StringBuilder();
		String src = null;
		for (int i = 1; i <= number; i++) {
			src = i<10?"0"+i:""+i;
			if (targetStr.contains(src)) {
				sb.append(", ").append(src);
			}
		}
		System.out.println(sb.substring(2));
	}
	
}
分享到:
评论

相关推荐

    matlab生成随机数+源代码

    在MATLAB中生成随机数是一项常见的任务,广泛应用于模拟...通过组合不同的函数和参数,你可以生成满足特定需求的随机数据集,用于仿真、建模或测试目的。在实际应用中,根据具体场景选择合适的分布和参数是十分重要的。

    计算统计学课程作业30种随机数发生器(组合随机数发生器)matlab代码

    本课程作业聚焦于30种不同的随机数发生器,其中包括5种基础的随机数发生器及其两两组合形成的25种组合随机数发生器。所有这些实现均采用MATLAB编程语言,这是一款广泛应用于科学计算的软件。 首先,我们来探讨...

    易语言源码取随机数的两种方法比较.rar

    在易语言编程环境中,生成随机数是常见的需求,特别是在模拟、测试、游戏开发等领域。本压缩包文件"易语言源码取随机数的两种方法比较.rar"提供了对易语言中生成随机数的两种方法的比较分析。下面我们将详细探讨这两...

    excel中批量设置随机数

    默认情况下,Excel提供的RAND()函数会生成0到1之间的随机浮点数,每次打开工作簿时,这个函数都会重新计算,产生新的随机数。然而,这并不符合某些场景下对稳定随机数的需求。这时,我们可以借助VBA(Visual Basic ...

    C#生成不重复字母数字组合的随机数

    标题提到的是“C#生成不重复字母数字组合的随机数”,这通常涉及到`Random`类和字符串操作。 `Random`类是C#中的一个内置类,用于生成随机数。它的工作原理是基于当前时间戳作为种子,生成一系列看似随机但实际上可...

    thinkphp 返回当前时间戳+随机数的 唯一文件名

    本节介绍的功能主要是在ThinkPHP框架中创建一个函数,该函数可以返回一个由当前时间戳和随机数组合而成的唯一文件名。具体来说,该函数首先获取当前的时间戳作为文件名的基础部分;然后生成一个四位数的随机数,并将...

    随机数设计专家(随机数弄好软件)2.2官方安装版

    随机数设计专家(随机数弄好软件)是一款免费好用的的随机数功能... 随机数设计专家功能特点 生成模式: 本软件有数值范围模式、列举模式、密码模式、图片模式4种基本生成模式,以及支持组合多个模式的组合模式编辑器

    Winform-随机数生成器

    对于生成随机序列号,可能需要包含字母和数字的组合,这可以通过扩展`Random`类或者使用`Guid`类来实现。例如,创建一个包含数字和字母的10位随机字符串: ```csharp public static string GenerateRandomString...

    JavaScript随机数的组合问题案例分析

    本文实例讲述了JavaScript随机数的组合问题。分享给大家供大家参考,具体如下: 随机数的组合问题在面试时是经常考的,比如之前我就被问到:“有一个可以生成1-5的随机数函数,怎样把它扩大到1-7?” 在解决这...

    Keil C51 中产生随机数的方法

    在Keil C51开发环境中,生成随机数是嵌入式系统编程中常见的需求,尤其在游戏、加密算法、测试工具等领域。本文将详细介绍在Keil C51中如何使用标准库函数`rand()`和`srand()`来生成随机数,并通过实例代码进行演示...

    多维随机数的生成方法

    1. **各维度独立**:当多维随机变量的维度之间相互独立时,可以通过分别生成每个维度上的随机数,然后将它们组合成一个向量来实现。这种方法简单且直观。 2. **协方差矩阵生成多元正态分布**:对于多元正态分布,...

    matlab开发-拉普拉斯随机数发生器

    通常,MATLAB的标准库并不直接提供拉普拉斯分布的随机数生成,但可以通过组合其他函数实现,如`randn`(产生标准正态分布的随机数)和`exp`(指数函数)。 下面是一个可能的`laprnd.m` 函数实现: ```matlab ...

    计算统计学课程作业30种随机数发生器(组合随机数发生器)matlab代码.zip

    这份"计算统计学课程作业30种随机数发生器(组合随机数发生器)MATLAB代码.zip"的压缩包文件很可能包含了30个不同的MATLAB脚本或函数,每个都实现了特定类型的随机数发生器。 1. **随机数发生器类型**:在MATLAB中...

    C#年月日小时分秒数构成随机数

    为了将日期时间各部分与随机数进行组合,我们需要先将这些整数转换为字符串形式。 示例代码: ```csharp string yearStr = year.ToString(); string monthStr = month.ToString(); string dayStr = day.ToString();...

    随机数程序

    此程序能够生成超过10万个随机数,并通过特定的方式将这些随机数进行组合,从而得到更多的随机数序列。 #### 二、程序结构解析 ##### 1. 包含头文件 程序首先包含了以下头文件: - `&lt;iostream&gt;`:用于输入输出操作...

    STM32L496实现硬件随机数【HAL库驱动,支持STM32L4系列单片机】.zip

    此外,根据具体应用的需求,可能还需要对生成的随机数进行进一步的处理,如取模运算以限制随机数范围或与其他数据进行组合。 在实际项目中,开发者可以通过将这些驱动程序集成到自己的代码中,轻松地在STM32L496上...

Global site tag (gtag.js) - Google Analytics