#include "iostream" using namespace std; class Matrix { private: double** A; //矩阵A double *b; //向量b public: int size; Matrix(int ); ~Matrix(); friend double* Dooli(Matrix& ); void Input(); void Disp(); }; Matrix::Matrix(int x) { size=x; //为向量b分配空间并初始化为0 b=new double [x]; for(int j=0;j<x;j++) b[j]=0; //为向量A分配空间并初始化为0 A=new double* [x]; for(int i=0;i<x;i++) A[i]=new double [x]; for(int m=0;m<x;m++) for(int n=0;n<x;n++) A[m][n]=0; } Matrix::~Matrix() { cout<<"正在析构中~~~~"<<endl; delete b; for(int i=0;i<size;i++) delete A[i]; delete A; } void Matrix::Disp() { for(int i=0;i<size;i++) { for(int j=0;j<size;j++) cout<<A[i][j]<<" "; cout<<endl; } } void Matrix::Input() { cout<<"请输入A:"<<endl; for(int i=0;i<size;i++) for(int j=0;j<size;j++){ cout<<"第"<<i+1<<"行"<<"第"<<j+1<<"列:"<<endl; cin>>A[i][j]; } cout<<"请输入b:"<<endl; for(int j=0;j<size;j++){ cout<<"第"<<j+1<<"个:"<<endl; cin>>b[j]; } } double* Dooli(Matrix& A) { double *Xn=new double [A.size]; Matrix L(A.size),U(A.size); //分别求得U,L的第一行与第一列 for(int i=0;i<A.size;i++) U.A[0][i]=A.A[0][i]; for(int j=1;j<A.size;j++) L.A[j][0]=A.A[j][0]/U.A[0][0]; //分别求得U,L的第r行,第r列 double temp1=0,temp2=0; for(int r=1;r<A.size;r++){ //U for(int i=r;i<A.size;i++){ for(int k=0;k<r-1;k++) temp1=temp1+L.A[r][k]*U.A[k][i]; U.A[r][i]=A.A[r][i]-temp1; } //L for(int i=r+1;i<A.size;i++){ for(int k=0;k<r-1;k++) temp2=temp2+L.A[i][k]*U.A[k][r]; L.A[i][r]=(A.A[i][r]-temp2)/U.A[r][r]; } } cout<<"计算U得:"<<endl; U.Disp(); cout<<"计算L的:"<<endl; L.Disp(); double *Y=new double [A.size]; Y[0]=A.b[0]; for(int i=1;i<A.size;i++ ){ double temp3=0; for(int k=0;k<i-1;k++) temp3=temp3+L.A[i][k]*Y[k]; Y[i]=A.b[i]-temp3; } Xn[A.size-1]=Y[A.size-1]/U.A[A.size-1][A.size-1]; for(int i=A.size-1;i>=0;i--){ double temp4=0; for(int k=i+1;k<A.size;k++) temp4=temp4+U.A[i][k]*Xn[k]; Xn[i]=(Y[i]-temp4)/U.A[i][i]; } return Xn; } int main() { Matrix B(4); B.Input(); double *X; X=Dooli(B); cout<<"~~~~解得:"<<endl; for(int i=0;i<B.size;i++) cout<<"X["<<i<<"]:"<<X[i]<<" "; cout<<endl<<"呵呵呵呵呵"; return 0; }
标签: 道理特分解法
上传时间: 2018-05-20
上传用户:Aa123456789
掌握以Java为核心的应用软件开发方案,达到能独立阅读、编制和调试一定规模的Java程序的水平。学生成绩管理系统是为了更好的管理学生考试成绩而开发的数据管理软件。
上传时间: 2019-08-28
上传用户:long12
本书通过130个精选的例子讲解了利用Delphi进行应用程序开发的多个方面,其内容涵盖了界面外观、多媒体控制与图像处理、时间控制、操作系统、程序控制、磁盘文件、数据库、网络与通信、鼠标和键盘、数学算法和程序发布等方面。本书内容突出了实用性,85%以上的实例模仿较常见的优秀软件的相关功能,其余实例是为帮助读者理解重点、难懂概念所做,并力求通过每章的例子重点讲述如何利用Delphi组件和API函数等来实现特定的功能。本书的另一个特点在于给出了实用性很强的“方案实例”而不仅仅是“功能实例”,其内容多为典型或通用的功能模块的解决方案,包括界面设计、操作流程以及代码控制等内容。本书适用于已经初步掌握Delphi编程概念、方法的读者阅读,可以帮助读者迅速掌握实际应用中的各种经验、技巧。
上传时间: 2021-01-13
上传用户:
此资料为QT4的中文学习资料,其中介绍了QT这个跨平台C++图形用户界面应用程序开发框架,有需要的敬请下载查看
标签: qt4
上传时间: 2022-01-13
上传用户:canderile
5G移动通信网络关键技术综述.pdf陈 婧,韩远兵,徐 川 (重庆邮电大学未来网络研究中心 重庆 400065) 摘 要: 为适应未来海量移动数据的爆炸式增长,加快新业务新应用的开发,第五代移动通信( fifth generation mo- bile communication network,5G) 网络应运而生。目前,国内外已经逐渐明确了 5G 的愿景和需求,如何将现有技术和 多种潜在的新技术进行融合以实现 5G 网络成为下一步的研究与发展重点。面向未来 5G 的技术发展,介绍 5G 的 概念、应用场景以及终端用户对 5G 的相关需求; 然后,重点阐述 5G 在无线网络方面具有发展前景的 10 大关键技 术,包括: 超密集异构网络、自组织网络、D2D( device-to-device) 通信、M2M( machine-to-machine) 通信、软件定义无线 网络、
上传时间: 2022-02-25
上传用户:zhaiyawei
PDF电子书-keil+C51教程完整精华版1270页断发展,以 C 为主流的单片机高级语言也不断被更多的单片机爱好者 和工程师所喜爱。使用 C 语言肯定要使用到 C 编译器,以便把写好的 C 程序编译为机器码, 这样单片机才能执行编写好的程序。KEIL uVISION2 是众多单片机应用开发软件中优秀的 软件之一,它支持众多不同公司的 MCS51 架构的芯片,它集编辑,编译,仿真等于一体, 同时还支持,PLM,汇编和 C 语言的程序设计,它的界面和常用的微软 VC++的界面相似, 界面友好,易学易用,在调试程序,软件仿真方面也有很强大的功能。 以上简单介绍了 KEIL51 软件,要使用 KEIL51 软件,必需先要安装它,这也是学习编 程语言所要求的第一步――建立学习环境。KEIL51 是一个商业的软件,对于普通爱好者可 以到 KEIL 中国代理周立功公司的网站上下载一份能编译 2K 的 DEMO 版软件 (http://www.zlgmcu.com/download/downs.asp?ID=480),基本可以满足一般的个人 学习和小型应用的开发。(安装的方法和普通软件相当这里就不做介绍了) 安装好后,您是不是迫不及待的想建立自己的第一个 C 程序项目呢?下面就让我们一 起来建立一个小程序项目吧。
上传时间: 2022-03-25
上传用户:qdxqdxqdxqdx
CodeWarrior能做些什么?当你知道自己能写更好的程序时,你一定不会再使用别人开发的应用程序。但是常常会发生这种情况,就是当你写了无数行代码后,却找不到使得整个程序出错的那一行代码,导致根本没法编译和链接整个程序。这可能更令人灰心丧气。本文将告诉你如何使用CodeWarrior这一工具解决上述问题从现在开始,我们将集中精力学习如何在CodeWarrior中使用C/C++进行编程。为了学习本课程,你必须已经能够比较熟练地使用上述两种语言之一.CodeWarrior也可以支持Java开发,但那是另一门课程的内容。本课程仅限于在Windows平台上使用CodeWarrior进行的开发。一旦你精通了CodeWarrior编程后,你可以试试在其它平台上使用CodeWarrior,本文中讨论过的大部分内容都可以应用到开发Mac应用程序中,CodeWarrior能够自动地检查代码中的明显错误,它通过一个集成的调试器和编辑器来扫描你的代码,以找到并减少明显的错误,然后编译并链接程序以便计算机能够理解并执行你的程序。你所使用过的每个应用程序都经过了使用象CodeWorrior这样的开发工具进行编码、编译、编辑、链接和调试的过程。现在你在我们的指导下,自己也可以去做这些工作了你可以使用CodeWarrior来编写你能够想象得到的任何一种类型的程序。如果你是一个初学者,你可以选择编写一个应用程序(比如一个可执行程序),比如象微软公司的文本编辑器WordPad这样的应用程序。应用程序可能是最容易编写的程序了,而那些庞大的商业软件,比如象Adobe Photoshop.Microsoft Word以及CodeWarrior软件都是极其复杂的。其它类型的程序指的是控制面板(control panels),动态链接库(dynamic linked libraries,DLLs)和插件(plug-ins),我们先来简单的讨论一下这些类型的程序。
标签: codewarrior
上传时间: 2022-05-29
上传用户:
【摘要】:基于传统的方法在很多特殊场合:如带腐蚀的液体,强电磁干扰,有毒等恶劣条件下,测量距离存在不可克服的缺陷,超声波测距能很好的解决此类的问题。本论文主要对单片机超声波测距系统的原理,单片机的应用等进行了分析:对超声波的发生电路和接收电路,DS18B320温度采集电路,LCD显示电路,硬件制作和软件设计;对系统进行误差分析。【关键词】:超声波测距,单片机,DS18B20温度补偿,LCD显示,软件设计,误差分析。嵌入式系统无疑是当前最热门、最具有发展前景的IT应用之一。嵌入式系统的应用可以使传统的电子系统升级成为智能化的电子产品,使其成为具有“生命”的现代化智能系统。嵌入式系统一般应用于对实时响应要求较高的设备中,单片机作为嵌入式系统的核心部件,其应用使电子系统的智能化出现了意想不到的效果,常常无需对硬件资源做任何改动,只需更新系统软件就能使系统功能升级。现代社会中嵌入式系统无处不在,早已被应用在国防、国民经济、以及人们日常生活的各个领域,主要可以归纳为以下几个方面。(1)军事装备:各种武器控制(火炮控制、弹道控制、炮弹引信等),坦克、舰船、轰炸等各种电子装备,雷达、电子对抗、军事通讯装备等。(2)家用电器:各种家电产品,如数字电视、机顶盒、数码相机、VCD,DVD.可视电话、洗衣机、电冰箱、手机、智能玩具等。(3)工业控制:各种智能仪器仪表、数控装置、可编程控制器、分布式控制系统、工业机器人、机电一体化设备、汽车电子设备等。(4)商用设备:各种收款机、POS系统、电子秤、条形码阅读器、商务终端、IC卡输入设备、自动柜员机、防盗系统等。(5)办公用品:复印机、打印机、传真机、扫描仪、手机、个人数字助理(PDA).变频空调设备、通信终端、程控变换机、网络设备等。6)医疗电子设备:各种医疗电子仪器,如 光机、超声诊断仪、心脏起搏器、监护仪器等,以及辅助诊断系统、专家系统等。单片机应用系统的设计包括单片机基本扩展、外围电路设计和程序设计、单片机应用系统开发环境、系统可靠性设计、电磁兼容性设计等内容。通常开发一个单片机系统的步骤如下:
上传时间: 2022-06-18
上传用户:
随着嵌入式技术的不断发展,嵌入式芯片的不断革新,嵌入式操作系统也逐渐成为嵌人式系统中不可或缺的部分。嵌入式操作系统的运用不仅能够更有效、更合理的利用现有的CPU的资源,而且能够简化应用软件的设计,缩短应用的开发周期,保证系统的可靠性和实时性。本文主要研究基于STM32芯片的硬件平台,由于RAM资源的限制,只能使用占用资源少的小型操作系统,常见的主要有uC/os-Il eCos,FreeRTOS等,与uC/Os-1 eCcos等商业收费的操作系统不同,FreeRTOS操作系统是一个源码公开的免费实时操作系统,能够很好地移植于各种体系结构的微型处理器。1 FreeRTOS操作系统的体系结构作为一款轻量级操作系统,FreeRTOS提供了任务管理、时间管理、信号量、消息队列、内存管理、记录等功能,并且具有源码公开、可裁减、可移植、调度策略灵活的特点[1-2,。本文主要从任务调度机制、系统时间管理机制、内存分配机制、任务通信与同步机制介绍操作系统的体系结构,并针对时下流行的C/OS-1系统进行类
上传时间: 2022-06-20
上传用户:
在2011年举行的Google I/O开发者大会上, Google发布了基于Arduino的Android Open Accessory标准和ADK工具,这使得大家对Arduino的前景十分看好。Phillip Torrone大胆地预测Google将用Android+Arduino的形式掀起自己的“Kinect模式”浪潮。 目前, 国内关注Arduino的人越来越多, 但介绍Arduino的书籍却很少。笔者由于工作的关系, 接触Arduino较早,所以希望通过自己的努力让更多的人了解Arduino, 在近一年的时间里, 通过不断学习、 查阅Arduino相关知识, 终于完成了书稿的撰写工作。 但在书稿完成之后, 心中却一直忐忑不安, Arduino是一个介于软件与硬件之间的产品, 系统性不是很强, 加上笔者水平有限, 拙著中一定存在不少的缺点与漏洞, 为此, 笔者先为书中的不足之处致以真诚的歉意, 同时诚挚地欢迎广大读者提出宝贵的意见并不吝赐教。
上传时间: 2022-06-21
上传用户:d1997wayne