问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

编程求不定方程组 在区间[-100,100]上的整数解的个数,并打印出所有的整...

发布网友 发布时间:2024-10-04 08:56

我来回答

3个回答

热心网友 时间:2024-10-05 08:33

我先补充一下,我假设x ,y,z 都在[-100,100]。
由上面的式子可以推出:
z = x*y/16
3x + 4y -32 = x * y / 16

算法的空间复杂度,时间杂度度就不分析了。
另外由上面的式子可推出:x * y - 48x - 64y + 512 = 0 ,类似的不定方程的理论和求解方法见:
http://baike.baidu.com/view/375208.htm
http://wenku.baidu.com/view/650d2f80d4d8d15abe234e15.html
java的实现程序如下:
/**
* @author borqs.slieer
*/
public class Test {
final static double MAX_X_VALUE = 100;
final static double MIN_X_VALUE = -100;
final static double MAX_Y_VALUE = 100;
final static double MIN_Y_VALUE = -100;
final static double MAX_Z_VALUE = 100;
final static double MIN_Z_VALUE = -100;

public static void main(String...args){
execute();
}

/**在闭区间[-100,100]中,求解方程组3x+4y-z=32 x*y = 16z*/
public static void execute() {
double x = 0.0;
double y = 0.0;
double z = 0.0;
long count = 0;
for(double i = MIN_X_VALUE; i < MAX_X_VALUE; i++){
for(double j = MIN_Y_VALUE; j < MAX_Y_VALUE; j++){
double ij = i * j;
z = (ij) / 16 ;
if(z < MIN_Z_VALUE || z > MAX_Z_VALUE){
break;
}
if((i * j) % 16 == 0.0){
if(48* i + 64 * j - 512 == ij){
x = i;
y = j;
System.out.println("x,y,z :" + x + "," + y + "," + z);
count ++;
}
}
}
}

System.out.println("count value:" + count);
}
}
执行结果:
x,y,z :-16.0,16.0,-16.0
x,y,z :0.0,8.0,0.0
count value:2

热心网友 时间:2024-10-05 08:35

java代码:
public class EqualizationSolving {
/**
* @author Saler
* @param args
* @target 在区间【-100,100】中求解方程组,3x+4y-z=32 x*y = 16z
*/
public static void main(String[] args) {
Soving();
}

private static void Soving() {
int left = 0;
int right = 0;
int z = 0;
for(int x=-100;x<=100;x++){
for(int y=-100;y<=100;y++){
left = x*y;
right = 16*(3*x+4*y+32);
if(left==right){
z = (x*y)/16;
System.out.println("x="+x+"y="+y+"z="+z);
}
}
}

}
}
c语言实现:
#include<stdio.h>
/**
* @author Saler
* @param args
* @target 在区间【-100,100】中求解方程组,3x+4y-z=32 x*y = 16z
*
*/

int main(void)
{
int left = 0;
int right = 0;
int z=0;
int x,y;
for(x=-100;x<=100;x++){
for(y=-100;y<=100;y++){
left = x*y;
right = 16*(3*x+4*y+32);
if(left==right){
z = (x*y)/16;
printf("x=%d,y=%d,z=%d\n",x,y,z);
}
}
}
return 0;

}

热心网友 时间:2024-10-05 08:32

我是用C编的程序,主要用了三个嵌套的循环,源码如下:
#include "stdio.h"
void main ()
{
int x,y,z;
int num=0;
printf("方程组的解为:\n");
for(x=-100;x<=100;x++)
for(y=-100;y<=100;y++)
for(z=-100;z<=100;z++)
if(!(3*x+4*y-z-32)&&!(x*y-16*z))
{
num++;
printf("x=%3d,y=%3d,z=%3d\n",x,y,z);
}
printf("共有解%d个",num);
getchar();

}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
八月中国最凉快的地方 八月份哪里最凉快,去哪旅游好?美丽的地方 乱字同韵字是什么意思 华硕笔记本电脑触摸板怎么开笔记本电脑触摸板怎么开启和关闭_百度知 ... 陕西职务侵占案立案准则 结婚后我的恋情维系了十年,怎么做到的? 玉米仁子饭产自哪里 中国期货交易所的交易品种有哪些? 历史要怎么读,有啥诀窍 高中历史诀窍 大神 我DPI该怎么设置 华为p7升级emui3.1后拍照能用流光快门吗 华为p7升级emui3.1关机闹钟不响 华为P7 l07 用的是官方包emui3.1 不能进入recovery 按照网上的教程进入... 联想电脑如何去除开机密码 如何在开机界面消除电脑开机密码 java编程:输入a,b,c,求方程 ax^2+bx+c=0 的解.(提示:可使用Math.pow... 用Java语言编写求解一元二次方程的解,方程系数从键盘输入若a为零输出... 用Java语言编写求解一元二次方程的解,方程系数从键盘输入若a为零输出... ...刷牙后也有味、喉咙里有痰吐不尽,入夏以来不怎么爱吃饭(虽然肚子里... 早上起来老是有痰,嘴巴很苦还有点口臭,口非常干。这是什么原因? 医疗保险是不是就是医保卡? ...急!!! 最好有图片,谢谢!棱块我都会,请大侠指点! ...元,年利率是百分之3.24,3年后赵玉可得利息多少元,本金和利息一共多少... ...是百分之3.24,到期后,她能拿到税后利息多少元?(税后利..._百度知... ...3年,年利率3.24%,到期后她可以从银行取出多少钱?(写详细,写结果... ...岁钱买了3年期的国债,年利率为3.24%,到期后可取回本息()元。(国债... ...年利率是3.24%。三年后,妈妈可以从银行取回本金和税后利息共多少元... ...定期三年,年利率是3.24%,到期时,去掉利息税王叔叔可拿本息 方城县保和蝎子养殖专业合作社怎么样? 想用JAVA写个四阶龙格库塔法解三元微分方程组,需要源码,请赐教!十分... 求帮忙看看这个java script求解二元一次方程组哪里有问题,执行不出来... java 跪求写一个函数,参数为数字,输出对应字母,数字最大254 如何在java应用程序中画直线y=ax+b? ...了~谁能告诉我火影动画里哪几集有卡卡西的啊~哪怕就露个脸也算... ...海贼王,那个更好看,更有亮点要理由,我看过火影,感觉100多集后乱糟... 各位高手帮忙找个NVTDIA GeForce2 MX/MX 400的驱动程序 我电脑还是XP... JAVA编写一个关于一元二次方程根的类 编写Java应用程序,求解一元二次方程,要求求出复数解. GeForce2 MX\MX 400的驱动 跪求计算机JAVA大神用eclipse解一元二次方程,求答案,基础一点,蟹蟹 怎样用JAVASCRIPT解一元二次方程 ...师,但没从事过相关工作,应该先考标准化助理工程师吗? 请问下火影忍者里面初代火影,二代,三代,四代的出场集数(包括回忆) ...if做一个能算一元二次方程的java程序,具体条件 薛蟠为什么叫呆霸王 求高手帮忙解一个三次方程 快来高手帮忙解个一元三次方程 我急需一元三次方程公式解!高手帮忙! 高手帮忙求一个一元三次方程