我希望实现简单的等式:
i,j = -Q±√(Q 2 -4PR)/ 2P
为此,我有以下代码(注意:P = 10. Q = 7. R = 10):
//Q*Q – 4PR = -351 mod 11 = -10 mod 11 = 1, ?1 = 1
double test = Math.sqrt(modulo(((Q*Q) - ((4*P)*R))));
// Works, but why *-10 needed?
i = (int)(((-Q+test)/(P*2))*-10); // i = 3
j = (int)(((-Q-test)/(P*2))*-10); // j = 4
Run Code Online (Sandbox Code Playgroud)
简单地说,测试采用等式的第一部分并将其修改为介于0和11之间的非零整数,然后写入i和j.i和j返回正确的数字,但由于某种原因,需要*-10才能使它们正确(我想要获得正确值的数字).
如果可能的话,我想找到一种更好的方法来执行上面的等式,因为我这样做的方式似乎是错误的,只是有效.我希望按照等式所暗示的方式来做,而不是破解它的工作.
我想用MATLAB解决这些方程式,我确信有一个非零解决方案.方程是:
0.7071*x + 0.7071*z = x
-0.5*x + 0.7071*y + 0.5*z = y
-0.5*x - 0.7071*y + 0.5*z = z
Run Code Online (Sandbox Code Playgroud)
我在MATLAB中写道:
[x,y,z]=solve('0.7071 * x+0.7071 * z=x','-0.5 * x+0.7071 * y+0.5 * z=y','-0.5 * x-0.7071 * y+0.5 * z=z');
Run Code Online (Sandbox Code Playgroud)
但结果是x = y = z = 0.正如我所说,我确信有一个解决方案.任何人都可以帮忙吗?
我有一个方程组,其形式为:
eq1 : q = a*x+b*y;
eq2 : r = c*x+d*y;
Run Code Online (Sandbox Code Playgroud)
我希望它获得系数矩阵,在这个简单的情况下是:
T : matrix([a,b], [c,d]);
Run Code Online (Sandbox Code Playgroud)
这样我就可以将方程组表示为:
eq3 : Q = T . X;
Run Code Online (Sandbox Code Playgroud)
T因为我想在进一步的矩阵运算中使用。(原始方程是我从问题中得到的,我不想手动将它们转换成矩阵形式,因为这就是这种程序的用途。但我就是无法弄清楚)
我有以下等式
T2+T4-3.615*T1=0;
T1+10+2*T5-5.752*T2=0;
T1+38+2*T5-4*T4=0;
83+T4+T2+10-4*T5=0;
Run Code Online (Sandbox Code Playgroud)
我尝试了以下方法来找到T1,T2,T4,T5的值
syms T1 T3 T4 T2 T5 positive
T2+T4-3.615*T1=0;
T1+10+2*T5-5.752*T2=0;
T1+38+2*T5-4*T4=0;
83+T4+T2+10-4*T5=0;
sol=solve(T1,T2,T3,T4)
Run Code Online (Sandbox Code Playgroud)
但它不起作用。
我试图绘制这个系统:
x1 - x2 + 3x3 = 8
2x1 - x2 + 4x3 = 11
- x1 + 2x2 -4x3 = -11
Run Code Online (Sandbox Code Playgroud)
我试着用ezsurf和meshgrid,但我没能做到这一点.
clc
clear all
close all
A = [1 -1 3; 2 -1 4; -1 2 -4];
B = [8 11 -11]';
C = [A B];
R = rref(C);
% R =
% 1 0 0 1
% 0 1 0 -1
% 0 0 1 2
D = R(:,4); % salvo la 4 …Run Code Online (Sandbox Code Playgroud) 我对 C++ 很陌生,我被赋予了解决这个二次方程的任务:
5x2^ + 6x-1 = 0
我如何通过编写 C++ 代码来实现这一点?
编辑:放置了我尝试使用的代码
#include <stdio.h>
#include <iostream>
using namespace std;
int main()
{
int sq, sixq, single, sum
sq = 5 * 5;
sixq = 6;
single = -1 ;
sum = sq + sixq - single;
return sum;
}
Run Code Online (Sandbox Code Playgroud)