c - “无效”问题:模拟病毒的程序
问题描述
我正在尝试为学校项目模拟病毒。基本上,在一个 50*50 的矩阵中,称为island
有随机的东西:可能有一个人(x
),如果有,他可能被感染(p
)或没有。然后,如果他们不使用保护措施,他们可能会被感染。当然,他们也可能通过治愈获得免疫力(i
)。调用“感染”程序infecter()
;免疫者称为medic()
。
问题来了:我调用的最后一个程序(发生这种情况infecter()
, medic()
)不会做我想做的一切。事实上,如果是最后一个medic()
,我将无法判断我是否想在岛上找医生;如果最后一个是infecter()
,它会感染,但我无法判断人们是否使用口罩,ecc。
//INFECTER
void infecter()
{ //prog to infect ppl: if there are 2 pos close to the person, 50%; if there arent, 20%;
//
[... full of surely bad indented and still working stuff...]
}
//MEDIC
void medic()
{ //program to save ppl==> 25% of possiblities to get no longer virus'd
[full of badly indented but working stuff]
printf("\n***************************************************\n");
//
infecter();
medic();
printf("\n");
return 0;
}
PS:我是这样工作的,以创建void
s:我在函数中编写代码main()
,然后将其复制粘贴到void
一个中,显然试图使其工作。感谢所有试图帮助我的人...
已编辑:当我看到评论告诉我这是太多代码时,我会以另一种方式表达。
infecter()
并且medic()
肯定会工作。他们在这个问题之前工作过,并且仍然在做他们的工作。问题是:为什么在main()
函数结束时调用它们时它们不能完全工作?
编辑的第二部分:我很震惊,如果我只是medic()
在前面放,一切正常infected()
。但是那样medic()
就没有意义了(医务人员会帮助并拯救很少的感染者,基本上......)所以我试着在之前和之后调用它,如下所示:
medic();
printf("\n");
infecter();
printf("\n");
fake();
printf("\n");
medic();
现在infecter()
不能正常工作。
解决方案
推荐阅读
- c++ - OpenGL用鼠标移动顶点
- excel - 命令条代码在标准模块中有效,但在“ThisWorkbook”模块中无效
- c - sizeof 运算符的操作数
- liferay-7.1 - 是否可以在 Liferay 7.1 中使用 JavaScript 或 api/jsonws 从 portal-ext.properties 读取属性?
- python - 从另一个脚本调用主程序中的一个类
- r - 使用“Cookbook for R”中的函数汇总 data.frame 仅输出 NA / NaN(ggplot 中的误差线需要)
- liquibase - liquibase 通过 maven 调用,无法设置自定义属性
- c - 动态分配内存上指针算法的未定义行为
- c# - Blazor:管理环境特定变量
- sql-server - 有没有办法加入 2 个表并验证它们拥有的数据