获取错误:浮点异常
Getting the error: floating point exception
我是一名新手程序员,我目前正在研究Usaco培训问题以提高我的技能。这是我对"贪婪送礼者"的代码。当我提交代码时,我收到一个错误,上面写着:执行错误:您的程序("gift1")退出并显示信号 #8(浮点异常[通常是由访问内存引起的 越界])。程序运行了 0.000 CPU 秒,然后 信号。它使用了 3504 KB 的内存。"我一直在查看我的代码并尝试修复此错误一段时间了。谁能帮忙?请不要生我的气,因为这是我第一次发帖,就像我说的,我是编程的新手。
/*
ID: ashton.1
PROG: gift1
LANG: C++
*/
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main()
{
ifstream fin ("gift1.in");
ofstream fout ("gift1.out");
int initial, account[10], recipients, NP;
string names[10], giver, receiver;
fin >> NP;
for (int k = 0; k < NP; k++)
{
fin >> names[k];
account[k] = 0;
}
for (int k = 0; k < NP; k++)
{
fin >> giver >> initial >> recipients;
for (int y = 0; y < NP; y++)
{
if( names[y] == giver)
break;
}
account[k] -= initial;
account[k] += initial % recipients;
for (int y = 0; y < recipients; y++)
{
fin >> receiver;
for (int j = 0; j < NP; j++)
{
if(names[j] == receiver)
break;
}
if(recipients != 0)
{
for(int x = 0; x < NP; x++)
{
account[x] += (int)initial / recipients;
}
}
}
fout << names[k] << " " << account[k] << endl;
}
return 0;
}
当您采用初始 % 收件人时,如果没有收件人,则可能会除以零。添加一个条件语句来过滤掉这种情况;这就是给出浮点异常的原因。
相关文章:
- 异常分段错误
- C++ 异常处理错误输出
- 如何修复"ctypes"。参数错误:参数 2:<键入"异常.类型错误">:RaspberryPi 中的错误类型"错误
- 抽象包装带有异常的 C 错误处理的最佳方法
- 如何正确解包来自提升异常的错误代码
- C++ 读取文件和写入变量时未处理的异常 - getline 错误?
- c++1z动态异常规范错误
- 将异常编译器错误强制转换为void
- 异常声明错误
- 将索引超出数组边界在 C++ 中的内核之前抛出异常或错误
- 结合基于异常和错误代码的类实现
- 提升异常的错误信息
- Visual studio显示SEH异常的错误位置
- 字符串转换错误:异常还是错误代码
- 为什么Qt应用程序不给我异常或错误
- 模板多重继承异常符号错误
- 异常处理C++错误
- C++异常与错误代理
- OpenCV kmeans: N>=K 异常 , 错误 (-215)
- Qt 与 opencv 异常处理错误