银行业

效验是否为银行卡

浪尽此生 提交于 2019-12-22 15:24:28
http://www.oschina.net/code/snippet_86738_3128 效验是否为银行卡,用于验证 现行 16 位银联卡现行卡号开头 6 位是 622126~622925 之间的,7 到 15 位是银行自定义的, 可能是发卡分行,发卡网点,发卡序号,第 16 位是校验码。 16 位卡号校验位采用 Luhm 校验方法计算: 1,将未带校验位的 15 位卡号从右依次编号 1 到 15,位于奇数位号上的数字乘以 2 2,将奇位乘积的个十位全部相加,再加上所有偶数位上的数字 3,将加法和加上校验位能被 10 整除。 6 2 2 5 8 8 1 4 1 4 2 0 7 4 3 * 2 2 2 2 2 2 2 2 -------------------------------------------------- 12 2 4 5 16 8 2 4 2 4 4 14 4 6 将上面的数字加和:1+2+2+4+5+1+6+8+2+4+2+4+4+1+4+4+6 = 60 由于 60 加上 0 才能被 10 整除,所以校验位为 0 因此该卡号为 6225 8814 1420 7430 如果其中一位数字换掉的话,直接导致最后校验位错误。 标签: 银行卡 public class Test { public static void main(String[] args) {

操作系统实验之“银行家算法”

南楼画角 提交于 2019-12-17 03:02:02
一、前言 银行家算法主要用于判断内存分配是否安全合理。 1、是否合理 主要是看进程的请求是否小于所需值,以及是否小于现有资源量。这个部分比较简单,根据available,need这两个二维矩阵就可以直接判断。 2、是否安全 主要根据安全性检查算法,主要思路是,对于分配后的available,allocation,need三大矩阵,是否能找到一种顺序能使得所有进程都能运行完。步骤如下: (一般描述中使用available的副本work作为剩余资源量,笔者源代码中也是这么做的,但为了叙述清楚,这里还是用available矩阵来描述) (1)在需求矩阵need与可分配矩阵available之间循环比较 如果某进程所有的需要都能被满足,那么就分配给这个进程。等待其运行完后回收其所有资源。 (2) 这样一来,如果能分配,那么我们可用资源只会越来越多。 如果最终所有进程都能运行完,则分配后状态安全; 如果某次循环中没有任何一个进程得到分配,那么我们可以断定下次循环也不会有分配,因此系统会出现死锁,所以系统状态不安全。 二、源代码(带注释) 这里笔者按照ppt上的例子初始化了程序,带有简单的分配界面。 另外由于浅拷贝造成的数据混淆,这里笔者用了两次copy模块中的深拷贝, #coding:gbk import copy def request ( p , r , n , available ,

银行家算法实现

℡╲_俬逩灬. 提交于 2019-12-10 22:44:34
银行家算法实现 两天写完的,更改痕迹还没删,可能不是很严谨,有不足的地方欢迎更正。 # define _CRT_SECURE_NO_WARNINGS # include <iostream> # define N 10 # define LEN sizeof(PCB) /*typedef struct Ziyuan { int a[N]; int b; }Zy;*/ /*typedef struct Juzhen { Zy max;//最大资源 Zy allocation;//已分配 Zy need; }Jz;*/ int z = 3 ; int m = 5 ; int available [ N ] ; int request [ N ] ; int copy [ N ] ; int copy2 [ N ] ; typedef struct PCB { char name ; int max [ N ] ; //最大资源 int allocation [ N ] ; //已分配 int need [ N ] ; int biaoji ; //完成标记 struct PCB * up ; struct PCB * next ; } PCB ; PCB * safe [ N ] ; PCB * creat ( ) { m = 0 ; char name ; char k = '0'

银行家算法

断了今生、忘了曾经 提交于 2019-12-09 05:53:28
原文地址: https://zh.wikipedia.org/wiki/%E9%93%B6%E8%A1%8C%E5%AE%B6%E7%AE%97%E6%B3%95 背景 在银行中,客户申请贷款的数量是有限的,每个客户在第一次申请贷款时要声明完成该项目所需的最大资金量,在满足所有贷款要求时,客户应及时归还。银行家在客户申请的贷款数量不超过自己拥有的最大值时,都应尽量满足客户的需要。在这样的描述中,银行家就好比操作系统,资金就是资源,客户就相当于要申请资源的进程。 处理程序 Allocation   Max   Available   ABCD  ABCD  ABCD P1 0014  0656  1520  P2 1432  1942  P3 1354  1356 P4 1000  1750 我们会看到一个资源分配表,要判断是否为安全状态,首先先找出它的Need,Need即Max(最多需要多少资源)减去Allocation(原本已经分配出去的资源),计算结果如下: NEED ABCD 0642  0510 0002 0750 然后加一个全都为false的栏位 FINISH false false false false 接下来找出need比available小的(千万不能把它当成4位数 他是4个不同的数) NEED  Available ABCD  ABCD 0642  1520

vue2.0实现银行卡类型种类的选择

半城伤御伤魂 提交于 2019-12-06 05:39:44
功能效果:vue2.0实现银行卡类型种类的选择 图片.png 参考代码如下: <template> <div class="app"> <header> </header> <div class="details"> <div @click="memberRank"> <span>卡类型</span> <span>{{name}}</span> <i class="el-icon-arrow-right"></i> </div> </div> <mt-actionsheet :actions="actions2" v-model="sheetVisible2" cancel-text=""> </mt-actionsheet> </div> </template> <script> export default { data() { return { actions2: [], //底部弹出提示框 sheetVisible2: false,//透明遮罩背景 name: "普卡"//默认数值 }; }, computed: { }, components: { }, methods: { // 点击显示会员等级 memberRank() { this.sheetVisible2 = true; }, //赋值到框里 commonCard() { this.name = "普卡"; }

银行利息

牧云@^-^@ 提交于 2019-12-05 08:35:07
描述 农夫约翰在去年赚了一大笔钱!他想要把这些钱用于投资,并对自己能得到多少收益感到好奇。已知投资的复合年利率为R(0到20之间的整数)。约翰现有总值为M的钱(100到1,000,000之间的整数)。他清楚地知道自己要投资Y年(范围0到400)。请帮助他计算最终他会有多少钱,并输出它的整数部分。数据保证输出结果在32位有符号整数范围内。 输入一行包含三个整数R,M,Y,相邻两个整数之间用单个空格隔开。输出一个整数,即约翰最终拥有多少钱(整数部分)。样例输入 5 5000 4 样例输出 6077 1 #include<iostream> 2 #include<cstdio> 3 using namespace std; 4 int main(){ 5 double r,m,y; 6 int x; 7 scanf("%lf%lf%lf",&r,&m,&y); 8 r/=100; 9 r+=1; 10 for(int i=1;i<=y;i++){ 11 m*=r; 12 } 13 x=(int)m; 14 printf("%d",x); 15 return 0; 16 } Tips:复利 W=a*(1+i)*t-a a:本金;i:利率;t:时间 来源: https://www.cnblogs.com/bjt1015/p/11915477.html

手机号,银行卡断开方式

梦想与她 提交于 2019-12-03 17:38:14
// 银行卡每个四个字符加一个空格 addBlank(v) { if (/\S{5}/.test(v)) { return v.replace(/\s/g, "").replace(/(\d{4})(?=\d)/g, "$1 ") } }, // 手机号断开方式 phponeBlank (val) { return val.replace(/(?=(\d{4})+$)/g," ") }    来源: https://www.cnblogs.com/js-liqian/p/11805315.html

银行转账功能(二)

匿名 (未验证) 提交于 2019-12-03 00:27:02
银行转账功能(二) 1、上一篇我们说过了 同行转账 ,就是同库转账。其原理无非是一个减钱,一个加钱。 转账实质上我们可以理解为跨数据库转账。那么如果说是这样的话: PublicAccount ),这个账号存在的意义主要是用来处理跨行业务。 文章来源: 银行转账功能(二)