solidity的投票示例代码
remix官网
remix在线编辑器/编译器,这是编写solidity语言的编辑器
旧版:https://ethereum.github.io/browser-solidity/#optimize=false&version=soljson-v0.4.24+commit.e67f0147.js
新版:https://remix.ethereum.org/#optimize=false&version=soljson-v0.4.24+commit.e67f0147.js
pragma solidity ^0.4.0;
contract Ballot {
struct Voter {
uint weight;
bool voted;
uint8 vote;
address delegate;
}
struct Proposal {
uint voteCount;
}address chairperson;mapping(address => Voter) voters;Proposal[] proposals;/// Create a new ballot with $(_numProposals) different proposals.function Ballot(uint8 _numProposals) public {chairperson = msg.sender;voters[chairperson].weight = 1;proposals.length = _numProposals;}/// Give $(toVoter) the right to vote on this ballot./// May only be called by $(chairperson).function giveRightToVote(address toVoter) public {if (msg.sender != chairperson || voters[toVoter].voted) return;voters[toVoter].weight = 1;}/// Delegate your vote to the voter $(to).function delegate(address to) public {Voter storage sender = voters[msg.sender]; // assigns referenceif (sender.voted) return;while (voters[to].delegate != address(0) && voters[to].delegate != msg.sender)to = voters[to].delegate;if (to == msg.sender) return;sender.voted = true;sender.delegate = to;Voter storage delegateTo = voters[to];if (delegateTo.voted)proposals[delegateTo.vote].voteCount += sender.weight;elsedelegateTo.weight += sender.weight;}/// Give a single vote to proposal $(toProposal).function vote(uint8 toProposal) public {Voter storage sender = voters[msg.sender];if (sender.voted || toProposal >= proposals.length) return;sender.voted = true;sender.vote = toProposal;proposals[toProposal].voteCount += sender.weight;}function winningProposal() public constant returns (uint8 _winningProposal) {uint256 winningVoteCount = 0;for (uint8 prop = 0; prop < proposals.length; prop++)if (proposals[prop].voteCount > winningVoteCount) {winningVoteCount = proposals[prop].voteCount;_winningProposal = prop;}}}
solidity的投票示例代码相关推荐
- 【区块链技术开发】 Solidity使用Truffle Box工具实现预构建模板、自动化部署、创建智能合约示例代码
专栏:区块链技术开发 目录 1.介绍Truffle Box 2.Truffle Box功能方法 3.Truffle Box模板案例 truffle Box预构建模板的示例代码 运行构建模板的示例代码 ...
- 微软一站式示例代码库 7月新代码示例发布
微软一站式示例代码库 7月新代码示例发布. 下载地址: http://1code.codeplex.com/releases/view/69942 你也可以通过 示例代码浏览器 或 示例代码浏览器Vi ...
- C#运行opencv,示例代码分析
示例代码下载位置: https://github.com/shimat/opencvsharp_samples/ 错误 CS1617 /langversion 的选项"8.0" ...
- 51微投票的投票程序代码
51微投票的投票程序代码的期望 A发起智能合约,设定选择项目(比如 1,2,3,4) A设定那些人可以进行投票,先对可以进行投票的人授权 已经被授权的人可以投票,没被授权的人投票无效 计算最终那个选项 ...
- tf.squeeze示例代码
官网上对此方法有介绍,但缺少验证示例,而百度上搜到的都是从官网上翻译过来的,正确倒都是正确的,只是缺少验证示例,这边写一个示例代码,希望能帮助理解 import tensorflow as tfk = ...
- ASP.NET 2.0 读取配置文件[INI](示例代码下载)
(一). 功能 操作配置文件[*.ini]类 (二). 代码 1. 核心类文件 INIFILE.cs 代码 1 /// <summary> 2 /// INIFILE 操作类 3 / ...
- ASP.NET 2.0 HttpHandler实现生成图片验证码(示例代码下载)
学习整理了一下 (一).功能 用HttpHandler实现图片验证码 (二).代码如下 1. 处理程序文件 ValidateImageHandler.ashx代码如下 1 <%@ WebHan ...
- python目标检测与识别_Python 使用Opencv实现目标检测与识别的示例代码
在上章节讲述到图像特征检测与匹配 ,本章节是讲述目标检测与识别.后者是在前者的基础上进一步完善. 在本章中,我们使用HOG算法,HOG和SIFT.SURF同属一种类型的描述符.功能代码如下: impo ...
- 云开发使用 got 的 get/post 传参请求示例代码
使用 got 进行网络请求的步骤: 1.创建云函数,并在终端执行云函数 2.执行 npm 安装 got ,命令:cnpm install --save got 3.在云函数中使用 示例代码: // 云 ...
最新文章
- Saving Beans HDU - 3037(卢卡斯定理)
- java bean参数清空_Java互联网架构-Spring IOC底层源码分析
- Mac系统搭建java开发环境
- 外贸网站SEO优化要共享IP还是独立IP
- 华为Q22机顶盒,刷机固件及教程(当贝桌面)
- 《数字电子技术基础》3.3 CMOS门电路(下)
- 风云再续:他抖任他抖,IO诊断在我手
- MATLAB运行程序后workspace是空的
- C语言中abs()用法及其他绝对值函数
- android 多个蓝牙连接电脑,Android BLE蓝牙多设备连接
- 如何把很多照片拼成一张照片_怎样用手机将多张照片拼成一张组合图?
- 2022年终总结(学习篇)
- 台积电业绩惊人,但全球芯片行业衰退影响加剧,将加码中国市场
- 硬编码失败问题Codec reported err 0x80000000, actionCode 0, while in state 5
- QGIS插件python开发环境配置和PyCharm配置调试环境
- 引用vue-baidu-map 做一个签到打卡功能
- 易语言和python混合编程_关于易语言与Python的一点想法
- 【vijos】1006 晴天小猪历险记之Hill(dijkstra)
- POI解析1997-2003、2007版本excel
- 前端实现右键自定义菜单
热门文章
- 【Python】元组之不可修改性详解
- 丢失修改与数据库的一致性
- 【BZOJ4424】Cf19E Fairy DFS树
- CUDA 编程简介(下)
- 实现JTextField()中文本变化的实时监控
- TikZ作图教程 | 平面几何篇01——中小学数学老师的好帮手
- 使用LAPS管理本地管理员密码(1)
- 来了!被誉为“世界新七大奇迹”的大兴机场正式投运!它有多牛?你想知道的都在这里!...
- python中什么是异常_一文教你读懂 Python 中的异常信息
- 东南亚移动支付兼并洗牌