- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我为我的 C 语言编程大学类(class)编写了一个程序。无论如何,我总是收到不确定的错误。我已经手动检查了我的数学,并没有出现任何奇怪的情况。我一直在网上寻找建议,但最终找到了同样的东西:它与我的操作有关。但是,我不认为我所做的任何事情是“奇怪的”。
如果有人能帮助我发现我的错误,我将不胜感激。
#include "stdafx.h"
#include <stdio.h>
#include <math.h>
#define C 3e8 //symbolic constant C
int main() {
/* Initalize variables, including the constant "pi" */
int l1=380E-9, l2=600E-9;
const float pi = 3.14;
float time1 = 1E-14,
time2 = 5E-14,
time3 = 8E-14;
/* I've split up each "y" variable to make it cleaner */
double ySOL1, ySOL2, ySOL3;
double y1_SOL1, y1_SOL2, y1_SOL3;
double y2_SOL1, y2_SOL2, y2_SOL3;
/* Equations to compute time=1E(-14)*/
y1_SOL1 = 3 * (sin(2 * pi*(C / l1)*time1));
y2_SOL1 = 5 * (sin(2 * pi*(C / l2)*time1));
ySOL1 = y1_SOL1 + y2_SOL1;
printf("The value of Y for Time_1 is: %f", ySOL1); //prints value of y for time1
/* Equations to compute time=5E(-14) */
y1_SOL2 = 3 * (sin(2 * pi*(C / l1)*time2));
y2_SOL2 = 5 * (sin(2 * pi*(C / l2)*time2));
ySOL2 = y1_SOL2 + y2_SOL2;
printf("\n\nThe value of Y for Time_2 is: %f", ySOL2); //prints value of y for time2
/* Equations to compute, time=8E(-14) */
y1_SOL3 = 3 * (sin(2 * pi*(C / l1)*time3));
y2_SOL3 = 5 * (sin(2 * pi*(C / l2)*time3));
ySOL3 = y1_SOL3 + y2_SOL3;
printf("\n\nThe value of Y for Time_3 is: %f\n", ySOL3); //prints value of y for time3
return 0;
}
最佳答案
你除以零。您的变量 l1
和 l2
应该是 float
或 double
。因为它们是整数,所以它们被截断为零,这在浮点除法中将导致正无穷大或负无穷大。 (这就是文本 -1.#IND00
的意思)
旁注:如果您正在进行浮点计算,您可能应该始终使用 float
或 double
之一,最好是 double
。还有:
const float pi = 3.14;
这是一个粗略的估计,不是吗?
关于找不到我的错误,不断得到 "-1.#IND00",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21413458/
函数返回一个包含float值的列表。如果我绘制此列表,我会发现一些 float 值等于 -1.#IND。我还检查了这些 -1.#IND 值的类型。它们也是float类型。但我如何理解这个 -1.#IN
这里很简单的问题:当我测试错误的数据输入时,我给出了一条错误消息,但是 -1.#IND 在它之后出现? 例如,我在应该是正数的地方输入了负数,结果出现“wrong input dummy-1.#IND
我正在尝试通过使用极坐标以及平均值和西格玛值生成两个标准正态变量 r1、r2 来生成随机变量。然而,当我运行我的代码时,我不断得到一个“-nan(ind)”作为我的输出。 我在这里做错了什么?代码如下
假设我正在评估 a/b,其中 a 和 b 都是浮点类型。 如果 b 为零,则答案为 -1.#IND。 是否有任何其他 b(和 a)值会给我 -1.#IND,或者正在检查非零 b 足以避免得到这个结果吗
我目前正在为二叉树编写 C++。整件事都写好了,但是,无论我想评估什么表达式,我都会让命令提示符告诉我 -1.#IND。关于解决此问题的任何想法,甚至这意味着什么? 提前致谢 代码: #include
我有一个 float 组,它存储一些由某些函数计算的值。但是,当我从数组中检索一个值时,有些值是 -1。#IND,这是一个浮点错误或我猜是某种错误。 所以这是我的小问题,我如何使用 if 语句来检查
我正在尝试获取which(..., arr.ind = TRUE)函数的结果,并删除不是第一个“彼此连接”的行。 示例: #example 1 example 2 example
我正在尝试将一个“大”因素转换为 R 中的一组指标(即虚拟、二进制、标志)变量: FLN <- data.frame(nnet::class.ind(FinelineNumber)) 其中 Finel
已关闭。这个问题是 not reproducible or was caused by typos 。目前不接受答案。 这个问题是由拼写错误或无法再重现的问题引起的。虽然类似的问题可能是 on-top
我正在尝试编写一个 Scaler 类,该类采用具有分数的子测试。 Scaler 使用其子级分数类的缩放方法来重新缩放其值(例如 1/1 缩放 5 = 5/5 或 0/1 缩放 5 = 0/5)。 但是
我有一些代码可以让我绘制新月形状,并提取了要绘制的 excel 值。但是,代替某些数字的是 -1.#IND。首先,如果有人能解释这意味着什么,因为谷歌返回 0 个链接。其次,是否有办法阻止它发生。 我
我正在为 iPad 开发一个应用程序。该应用程序具有以下详细信息: 基础 SDK:4.2部署目标:3.2 该应用程序是一个游戏应用程序,有 10 轮。 在每一轮中,我加载 6 个 Controller
我已经提取了一些我想查看的元素的数组索引,如下所示: mat = matrix(0,10,10) arrInd = which(mat ==0,arr.ind = T) 然后我对该矩阵进行更多操作,最
我正在尝试插入一个 2D 角度,它在 99.9% 的时间内都有效。出于某种原因,我得到 -nan(ind) 某些值,例如: lastAngle = -0.0613451 currentAngle =
我喜欢使用 akeneo 中的自定义命令从数据库中获取一些产品。我正在使用 ProductRepositoryInterface public function read() { return
我对这个问题很困惑。我正在运行的代码是: double dotProduct = dot(A, B); std::cout ; } else if (value>=1.0) {
我有: double score = cvMatchContourTrees( CT1, CT2, CV_CONTOUR_TREES_MATCH_I1, 0.0 ); cout<
这是 VB.NET 中的一个奇怪的计算错误。我已将我的问题简化为以下内容。我可以写: Console.WriteLine(-0.78125 ^ 2.5) 并获得 -0.5394796609394436
问题的不相关理由 : 我在调用 Lua 时遇到错误 format : integer overflow attempting to store -1.#IND 变量的 type(n)真的是number
我已经尝试了检测奇数(NaN、QNaN 等)的所有常规技巧,但我似乎无法检测到 -1。#IND。任何帮助将不胜感激。 最佳答案 试试这个: http://www.johndcook.com/IEEE_
我是一名优秀的程序员,十分优秀!