我的代码解决二次方程(在游戏逻辑滴答中)来解决任务 - 找到沿着空间中可移动物体轨道的卫星刻度线偏移.我在判别(更远D)的计算中遇到了错误.我会提醒:D = b^2 - 4ac.因为它是大对象的轨道,我a,b&c是订单的数量,如:
1E+8
1E+12
1E+16
因此,b^2是关于订单的数量1E+24,4ac也是约1E+24.但是这个方程根数要少得多,因为它们只是场景上的坐标.所以根本就是1E+3 ... 1E+4.
问题(更新-具体化):因为浮浮(双打)的值的b^2和4ac有误差,这是足够小(相对于这些非常大的数字[测得的绝对误差大约有秩序1E+18]),但作为D==的区别其中,所以当D(从较大的值侧)到所述不准确度为(1E+18)的顺序值时,其值在范围内开始波动+1E+18 .. -1E+18(即波动范围大于实际的[-100%.. + 100%]值!
显然,这种波动会导致错误(甚至是错误的定向)嘀嗒声.我的卫星开始摇晃(这很糟糕)).
注意:当我说"何时D接近零"实际上D仍然远离零时,所以我不能只在这个值范围内将它分配给zerro.
我考虑过使用定点计算(这可以帮助我解决问题).但是,建议不要在刻度逻辑中使用(因为它们的优化程度要低得多,而且可能会非常慢).
我的问题:我怎样才能解决我的问题?对我的案子可能有一些常见的解决方案吗?非常感谢任何建议!
PS:所有公式都很好(我在excel中计算了所有结果,并且在我的代码中浮动时失败了).
PPS:我尝试双打insted的花车(不是所有的计算,但我的a,b和c双打现在)的问题并没有消失.
更新:我犯了一个错误 - 命令的混乱顺序a, …
我正在尝试为我的数据表添加利润,这将是收入减去成本.
现在我的代码在html上看起来像这样.
<ng-container matColumnDef="margin">
<mat-header-cell *matHeaderCellDef mat-sort-header>Margin</mat-header-cell>
<mat-cell *matCellDef="let project">{{project.revenue - project.cost}}</mat-cell>
</ng-container>
Run Code Online (Sandbox Code Playgroud)
该应用程序显示正确的数字,但我无法按升序或降序对列进行排序.我猜是因为我在HTML中计算它.我该如何解决这个问题?
我正在尝试使用 angular 6 反应形式从标价计算折扣百分比或折扣金额。
form.component.html(简化版)
...
<form [formGroup]="productForm">
<mat-form-field class="quat-width">
<span matPrefix>$ </span>
<input matInput type="number" name="CostPrice" formControlName="CostPrice">
</mat-form-field>
<mat-form-field class="quat-width">
<span matPrefix>$ </span>
<input matInput type="number" name="ListPrice" formControlName="ListPrice">
</mat-form-field>
<mat-form-field class="quat-width">
<span matPrefix>$ </span>
<input matInput type="number" name="DiscountAmount" formControlName="DiscountAmount">
</mat-form-field>
<mat-form-field class="quat-width">
<span matPrefix>% </span>
<input matInput type="number" name="DiscountPercent" formControlName="DiscountPercent">
</mat-form-field>
</form>
Run Code Online (Sandbox Code Playgroud)
form.component.ts(简化)
...
export class ProductFormComponent implements OnInit {
productForm: FormGroup;
constructor(
private fb: FormBuilder,
private productService: ProductsService) { }
ngOnInit() {
this.createForm();
}
createForm() { …Run Code Online (Sandbox Code Playgroud) 我在简单的solidity代码下面写了这个来计算一些数字。但是,以太坊区块链在每个函数上给出不同的输出。我的代码有什么问题还是以太坊区块链问题?
我的可靠性代码:
pragma solidity ^0.4.24;
contract Calculate {
uint balance = 50000000000000000000;
function done() public pure returns (uint) {
return (50000000000000000000 / 3000) * 3000;
}
function fail() public view returns (uint) {
return (balance / 3000) * 3000;
}
}
Run Code Online (Sandbox Code Playgroud)
输出:
done() function returns 50000000000000000000
fail() function returns 49999999999999998000
Run Code Online (Sandbox Code Playgroud)
请在此处查看现场示例: https : //ropsten.etherscan.io/address/0xf45a2a66be9835fdc9e1065875808616cb8e752e#readContract
我正在使用pandas,并执行一些计算和转换,最终得到两个数据框,它们或多或少是这样的:
ID 'abc' 'def'
Total 4 5
Slow 0 0
Normal 1 2
Fast 3 3
ID 'abc' 'def'
Total 3 4
Slow 0 0
Normal 0 1
Fast 3 3
Run Code Online (Sandbox Code Playgroud)
现在,给定这两个数据帧,我想生成第三个数据帧,以某种方式返回第二个数据帧完成的第一个数据帧的百分比。这样我希望结果是这样的:
ID 'abc' 'dfe'
Total 75.0% 80.0%
Slow None None
Normal 0.0% 50.0%
Fast 100.0% 100.0%
Run Code Online (Sandbox Code Playgroud)
如果第一个数据帧中有 0,那么在结果数据帧中,我们将该单元格设置为None或其他值。整个想法是,最后我将结果写入 Excel 文件,因此我希望 Excel 中必须None为空的单元格。任何想法如何在 Python 中使用pandas?
我有两个形状矩阵(43, 25520),它们被称为m1和m2。
if m1 <= m2:
distance = (m1 - m2) / m2
else:
distance = (m1 - m2) / m1
Run Code Online (Sandbox Code Playgroud)
因此,对于每一个指标i,我想减m2[i]从m1[i],并通过这两个的较大值除以。
我的错误信息是
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
Run Code Online (Sandbox Code Playgroud)
我如何修复错误并完成我想要的。
我总是得到
-bash: warning: command substitution: ignored null byte in input
Run Code Online (Sandbox Code Playgroud)
执行以下代码时出现警告:
BW=`bc <<< "$(cat $TMP | grep -Pzo '(?<="outgoing_traffic": )(.*)(?=,)')/1024^3"`
Run Code Online (Sandbox Code Playgroud)
如果结果不为零,也会出现该警告。
我怎样才能避免这种情况?
当它确实为 0 时,我怎样才能跳过该错误?
更新我尝试了下面提供的解决方案:
tr -d '\0'
Run Code Online (Sandbox Code Playgroud)
但该代码不起作用:
BW=tr -d '\0' < `bc <<< "$(cat $TMP | grep -Pzo '(?<="outgoing_traffic": )(.*)(?=,)')/1024^3"`
Run Code Online (Sandbox Code Playgroud)
输出:
-bash: warning: command substitution: ignored null byte in input
-bash: `bc <<< "$(cat $TMP | grep -Pzo '(?<="outgoing_traffic": )(.*)(?=,)')/1024^3"`: No such file or directory
Run Code Online (Sandbox Code Playgroud)
有趣的侧面事实,它不是 0
BW=`bc <<< "$(cat $TMP | grep -Pzo '(?<="outgoing_traffic": )(.*)(?=,)')/1024^3"` …Run Code Online (Sandbox Code Playgroud) 我有两个列表,我希望它们一一计时并创建一个新列表,如下所示:
vx=[40.00000000000001, 32.00000000000001, 27.528951416567008, 24.787883378136915, 23.02339491459251, 21.846818145611152, 21.027776019653995, 20.413445666052425, 19.89116281938412, 19.368416481078107, 18.760291921319446]
t= [0, 0.5, 1.0, 1.5, 2.0, 2.5, 3.0, 3.5, 4.0, 4.5, 5.0]
new list : [ vx[0]*t[0],vx[1]*t[1],vx[2]*t[2],...]
Run Code Online (Sandbox Code Playgroud)
我应该如何实现它?
我有一个将要更改的初始字符串,我想知道添加了多少新字符(即使删除了其他字符)。
举个例子:
初始字符串==>“我非常喜欢编程” 更改字符串==>“我曾经喜欢编程” 变化: “习惯”添加了 8 个字符 "这么多" 8 个字符已删除
我想要的结果是添加的字符数为 8。
有人可以帮我吗?
编写一个函数来计算在javaScript中用一根手指键入数字所需的毫秒数
我试图解决这个问题,但我不知道如何解决这个问题。
calculation ×10
javascript ×3
python ×3
angular ×2
algorithm ×1
bash ×1
blockchain ×1
c++ ×1
dataframe ×1
datatable ×1
ethereum ×1
milliseconds ×1
numpy ×1
pandas ×1
percentage ×1
reactjs ×1
solidity ×1
string ×1
time ×1
timer ×1
variables ×1