C++写一个程序模拟抛硬币,统计随机抛100次得到的正面和反面的次数并输出结果。求大神。。。。

C++写一个程序模拟抛硬币,统计随机抛100次得到的正面和反面的次数并输出结果。求大神。。。。,第1张

#include <iostreamh>

#include "stdafxh"

#include<iomaniph>

#include "stdioh"

#include "stdlibh"

void main()

{

long int i,zhengmian=0,fanmian=0,a;

for (i=1;i<101;i++)

{

a=rand()%2;

if(a==1)zhengmian=zhengmian+1;

if(a==0)fanmian=fanmian+1;

}

cout<<"正面的次数为:"<<zhengmian<<"次"<<endl;

cout<<"反面的次数为:"<<fanmian<<"次"<<endl;

}

说到硬币的正反面,可能很多人会毫不犹豫的说是有面值的那一面是正面,国徽面是反面,这是我们的直觉感观,但是有时候我们的直觉却是错误的,硬币的正面应该是国徽那一面,是不是很惊讶?一起往下看吧。

我国的硬币历史源远流长,后来在秦始皇统一了货币之后,进行了“天圆地方”的统一形制,也表明了古人内方外圆的性格特点。内方外圆的货币持续了有两千多年,而有意思的是“咸丰重宝”的货币被我们现在继承了下来,它的正面正是面值的那一面。

不知道大家是否有注意到,在各种的场合中只要是展示我国的硬币,一般都是国徽的那一面超上,硬币评级公司也是将国徽面超上,其实国徽面才是硬币的正面。作为一枚硬币,如果官方没有明确的说明正反面,那么一般都是以国徽,国名或者是国家领袖人物的头像那一面作为正面,换句话来说,也就是能够代表国家主权的那一面是硬币的正面,这么说来的话,那我们平时对硬币的认识还都是错误的。

1957年我国发行了第一枚的硬币,硬币的正反面大致都是这样来辨认的。到了21世纪,中国人民银行对硬币的版面进行了重新设计,比如说我们熟悉的菊花一元,其实它的正反面就很容易识别,有面值的那一面就是正面,而它的反面就只是一朵菊花而已。

虽然每一版的硬币都有稍微的改变,但是它的设计在我们心目中都是最美的,它的图案都是我国最有代表性的中国特色,它所取用的花种或者是建筑物都是我们所熟悉的,也都能够代表中国民族特色的,每一版的硬币升级,都代表了中国的进步。

以下是源代码:

#include <stdioh>

int Arrange(int n)//返回兑换方案

{

int oneCount=0;//1分硬币的数量

int twoCount=0;//2分硬币的数量

int fiveCount=0;//5分硬币的数量

int moneyCount=n100;//总金额元化成分

int count=0;//兑换方案数

for(oneCount=0;oneCount<=moneyCount/1;oneCount++)

for(twoCount=0;twoCount<=moneyCount/2;twoCount++)

for(fiveCount=0;fiveCount<=moneyCount/5;fiveCount++)

if(oneCount1+twoCount2+fiveCount5==moneyCount)

{

count++;

printf("%d元可兑换成%d个1分硬币和%d个2分硬币和%d个5分硬币。\n",n,oneCount,twoCount,fiveCount);

}

return count;

}

void main()

{

int n=0;

printf("请输入金额:\n");

scanf("%d",&n);

printf("以下是兑换方案:\n");

printf("兑换方案共有%d种。\n",Arrange(n));

}

印有行名、面额及年号的一面为正面。硬币,即用金属铸造的货币。在我国已有几千年历史,最早的金属铸币是商代的宝德铜贝,距今已3000多年。金属币具有使用方便,耐磨损,流通寿命长等优点。它除了自身所具备的货币职能外,还有很高艺术欣赏和收藏保值功能。

真伪识别:1、图案:真1元硬币的花蕊、稻穗、国徽、天安门等图案清晰,凹凸感强,而假币则制作粗糙,图案模糊。另外,真1元硬币正反面图案朝向一致,即使有误差也非常微小;但假币通常正反面图案朝向不一,显得正反不对称。

2、圆框边沿:真币厚薄均匀、平滑,而假币则通常厚薄不均,边沿有切割、磨损状。

3、材质:真1元硬币为镍包钢,用磁铁可以吸起,否则肯定是假币;另外很多假1元硬币用铅或铝,将其向白纸上面画,会出现铅笔线一般的清晰痕迹。当然有些含铁或不含铅的假硬币不一定能用该方法验出。

4、叠放:真1元硬币叠放在一起时非常平整,但假币由于厚薄不一致,夹在真币中叠放,会产生不协调的感觉。

# include <stdioh>

#include<timeh>

# include <stdlibh>

main(){

int N,i,j,z,a,b,c;

double randf;

N=100;

a=0,b=0,c=0;

srand((unsigned)time(NULL));

for (i=0 ; i<N ; i++)

{

z=0 ;

for (j=1 ; j<=2 ; j++)

{

randf=rand()/(double)RAND_MAX;

if(randf<05) z++;

}

int stdio=1;

if( z==0) a++;

else if (z==1) b++;

else c++;

}

printf("%d,%d%d",a,b,c);

}

在上面那位的基础上,给a,b,c赋初值0否则会出错的。

另外,这程序是不是连续扔两枚硬币100次,计算正面零次朝上,一次朝上,两次朝上的次数?

你的程序有一点问题,srand(time(NULL));应该放在for循环语句外面,同时time的函数原型在timeh中,

修改的源代码:

#include<stdioh>

#include<stdlibh>

#include<timeh>

int flip( void );

int main()

{

int a=0,b=0,x,k;

srand(time(NULL));

for( x=1;x<=100;x++ )

{

k=flip();

if(k==1)

{

printf("Heads\n");

a++;

}

else

{

printf("Tails\n");

b++;

}

}

printf("正面次数: %d\n",a);

printf("反面次数: %d\n",b);

system("pause");

return 0;

}

int flip( void )

{

return(rand()%2);

}

这是我在vs上运行过的。

JAVA练习之——抛硬币

import javautil;

import javaio;

interface game{

String get(int a);

}

interface gamefactory{

game getgame();

}

class yingbi implements game{

public String get(int a){

if(a==0) return "正面";

else return "反面";

}

}

class yingbifactory implements gamefactory{

public game getgame(){

return new yingbi();

}

}

class shazi implements game{

public String get(int a){

return StringvalueOf(a+1);

}}

class shaizifactory implements gamefactory{

public game getgame(){return new shazi(){

public void a(){Systemoutprintln("new shazi()");

}

};}

}

public class Game {

public static void games(gamefactory factory,int a){

game s1=factorygetgame();

Systemoutprintln(s1get(a));

}

public static void print(ArrayList<String> e){

for(String y:e)

Systemoutprint(y);

}

/

@param args

/

public static void main(String[] args) throws IOException{

DataInputStream in=new DataInputStream(Systemin);

while(true){

Systemoutprintln("请选择1:开始");

Systemoutprintln("1:抛硬币");

int opinion=IntegerparseInt(inreadLine());

switch(opinion){

case 1:

Systemoutprintln("开始?Y/N");

String a=inreadLine();

ArrayList<String> yin=new ArrayList<String>();

while(aequals("Y")||aequals("y")){

Random rand=new Random();

yingbifactory q=new yingbifactory();

int w=randnextInt(2);

yinadd(qgetgame()get(w));

games(q,w);

a=inreadLine();

}

print(yin);

Systemoutprintln();

break;

default:

Systemexit(0);

}

// TODO 自动生成方法存根

}

}

}

以上就是关于C++写一个程序模拟抛硬币,统计随机抛100次得到的正面和反面的次数并输出结果。求大神。。。。全部的内容,包括:C++写一个程序模拟抛硬币,统计随机抛100次得到的正面和反面的次数并输出结果。求大神。。。。、硬币正反面怎么区分,国徽是正面还是面值是正面、c语言程序编写换硬币程序:等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10636273.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-10
下一篇 2023-05-10

发表评论

登录后才能评论

评论列表(0条)

保存