第一次软件练习

#include<iostream>
#include<stdlib.h>
#include<Eigen/Dense>
#include<math.h>
using namespace std;
using Eigen::MatrixXd;
MatrixXd exchange(char str[])
{MatrixXd p(1,2);
int i,j;
char a[10];
i=1;
j=0;
do{
a[j]=str[i];
i++;
j++;
}while(str[i]!=‘,‘);
p(0,0)=atof(a);
j=0;
i=i+1;
for(i<20&&str[i]!=‘)‘;i++;)
{a[j]=str[i];
j++;
}
p(0,1)=atof(a);
return p;
}
int main()
{
char name[10];
int n;
double deg;
const float Pi=3.1415927;
char str1[20];
char str2[20];
char str3[20];
char str4[20];
char str5[20];
char str6[20];
MatrixXd r(2,2);
MatrixXd p1(1,2);
MatrixXd p2(1,2);
MatrixXd p3(1,2);
MatrixXd p4(1,2);
cout<<"请输入类型";
cin>>name;
cin>>n;
switch(n)
{
case 1:
cin>>str1;
p1=exchange(str1);
break;
case 2:
cin>>str1;
p1=exchange(str1);
cin>>str2;
p2=exchange(str2);
break;
case 3:
cin>>str1;
p1=exchange(str1);
cin>>str2;
p2=exchange(str2);
cin>>str3;
p3=exchange(str3);
break;
default:cout<<"输入错误";
}
cout<<"请输入变换"<<endl;
cin>>str4;
if(str4[0]==‘m‘&&str4[1]==‘o‘&&str4[2]==‘v‘&&str4[3]==‘e‘&&str4[4]==0)
{
cin>>str5;
cin>>str6;
p4=exchange(str6);
if(n==1)
{
p1=p1+p4;
cout<<"("<<p1<<")"<<endl;
}
else if(n==2)
{
p1=p1+p4;
p2=p2+p4;
cout<<"("<<p1<<")"<<"("<<p2<<")"<<endl;
}
else
{
p1=p1+p4;
p2=p2+p4;
p3=p3+p4;
cout<<"("<<p1<<")"<<"("<<p2<<")"<<"("<<p3<<")"<<endl;
}
}
else if(str4[0]==‘r‘&&str4[1]==‘0‘&&str4[2]==‘t‘&&str4[3]==‘a‘&&str4[4]==‘t‘&&str4[5]==‘e‘&&str4[6]==0)
{
cin>>str5;
cin>>deg;
r(0,0)=cos(deg*Pi/180);
r(0,1)=sin(deg*Pi/180);
r(1,0)=-sin(deg*Pi/180);
r(1,1)=cos(deg*Pi/180);
if(n==1)
{
p1=p1*r;
cout<<"("<<p1<<")"<<endl;
}
else if(n==2)
{
p1=p1*r;
p2=p2*r;
cout<<"("<<p1<<")"<<"("<<p2<<")"<<endl;
}
else
{
p1=p1*r;
p2=p2*r;
p3=p3*r;
cout<<"("<<p1<<")"<<"("<<p2<<")"<<"("<<p3<<")"<<endl;
}

}
else
{cout<<"输出错误"<<endl;
}
return 0;
}

每次输入之后都是这个样子,然后把程序发给同学电脑上试一下,却又出现了另外的问题。推测可能是exchange函数出了问题,然而能力有限无法找出。

时间: 2024-10-05 17:55:32

第一次软件练习的相关文章

第一次软件工程作业

工具类软件 :Visual Studio 2015 类型:运行环境windows操作系统,可在线模式也可以单机运行. 在这里分享一下使用Visual Studio 2015的感受,刚开始在学校设计程序时使用的软件是VC6.0,后来就上网搜索有哪些程序设计软件,于是就找到了这一款,在软件介绍中被它的多样化功能所吸引,体现在以下几方面: 特点一:支持多种编程语言,可以开发多种项目. 它支持C\C++\C#\Android\ios\javascript\vb等等,也就是说可以用这一个工具来做不同种类的

为什么结构化编程、面向对象编程、软件工程、架构设计最后没有成为软件领域的银弹

为什么结构化编程.面向对象编程.软件工程.架构设计最后没有成为软件领域的银弹? 从计算机语言开始讲,一步一步的概述和讲解,最终会有一个结论,大家往后看,即可明白. 1.机器语言(1940年之前) 机器语言,直接使用二进制码0和1来表示机器可以识别的指令和数据. 比如0100011111000010101,请问你知道是什么意思吗?反正我是不知道. 当然了,不可否认的是机器语言是最底层与CPU直接交互. 机器语言之所以没有流行下来,原因三个方面: (1)太难读了; (2)太难写了; (3)太难改了(

多年收集的一些稀有软件2

QQ:365543212 Fuel Economy Calculator v1.1 B.001(汽车工程软件,用于预测车辆燃油消耗率,是目前此类软件中最为全面的,能接收从最新的发动机分析程序Engine Analyzer自动发送来的强大的游标和发动机规格) Psat v5.1 1CD ProScan.v5.1 1CD PowerFlow v3.3p3a for Linux 1CD(Exa公司的汽车外气流计算软件) Rotating Inertia Calculator v1.1 A.000(一款

论云计算对传统软件工程的影响

如今,云这种概念已经越来越深入人心,似乎云已经成了我们生活的一部分.那么,这种近几年兴起的技术,是否对我们传统的一些行业有所影响. 首先了解一下软件工程的概念.软件工程是一门研究用工程化方法构建和维护有效的.实用的和高质量的软件的学科.工程是科学和数学的某种应用,通过这一应用,使自然界的物质和能源的特性能够通过各种结构.机器.产品.系统和过程,是以最短的时间和精而少的人力做出高效.可靠且对人类有用的东西.而软件工程作为一种工程,则是应用计算机科学.数学.逻辑学及管理科学等原理,开发软件的工程.

软件工程第二次作业—结对编程

一. 作业要求 两人组成一队,进行结对编程. 从第一次软件工程作业中选出一人的作业作为这次作业的基础. 设计一个图形界面(GUI)的四则运算应用程序,可以是PC桌面的图形界面程序.网页程序或者手机程序. 设计的应用程序可以完成加法.减法.乘法.除法运算. 应用程序可以完成真分数的四则运算. 例如:1/2 + 1/3 = 5/6 例如:1/5 + 3/10 = 1/2(而不是5/10) 例如:1'1/3 - 2/3 = 2/3 (是1'1/3而不是4/3,注意:" ' "为1'1/3整数

第二次软工作业

1.必做: 两人组成一队,进行结对编程,从第一次软件工程作业中选出一人的作业作为这次作业的基础设计一个图形界面(GUI)的四则运算应用程序,可以是PC桌面的图形界面程序.网页程序或者手机程序设计的应用程序可以完成加法.减法.乘法.除法运算应用程序可以完成真分数的四则运算. 基本版面如下: 回答真确时的版面: 回答错误的版面 2.选做: 1.逐步扩展功能和可以支持的表达式类型,最后希望能支持下面类型的题目 (最多10个运算符,括号的数量不限制): 25 - 3 * 4 - 2 / 2 + 89 =

python之面向对象的程序设计

第一:程序设计思想与发展历程(了解) 1940年以前:面向机器编程最早的是采用机器语言编程,也就是直接使用二进制码来表示机器能够识别的指令和数据.优点:机器语言由机器直接执行,速度快缺点:写起来非常困难,并且不容易修改 汇编语言:用助记符号代替机器指令的操作码,用地址符号或者标号代替指令或操作数的地址优点:比机器语言的二进制码编写方便些缺点:汇编语言本质上还是一种面向机器的语言,编写困难,易出错 脱离机器后:面向过程编程面向过程的结构化程序设计强调功能的抽象和程序的模块化, 它将解决问题的过程看

《失业的程序员》终极花絮:跌倒了请对原地做个标记,并在其他地方爬起来

<失业的程序员>程序员连载章节入口:第一章      第二章   第三章  第四章  第五章  ........... 小提示:其实我本身只是一个创业中的程序员.偶尔在博客园连载了一些我的个人真实创业经历,没想到竟然会成书.(呵呵 一下吧) 以下是我去年首次写IT创业经历连载之前的花絮(写于昨日凌晨) -------------------------------------------------------------------------------------------------

如何判断自己买的笔记本是否是翻新机

1. 开机是否直接进入桌面?如果是新机,正常进入的是设置界面.如果没有特别向卖家说明,卖家为了避嫌,不会主动帮你设置: 2.   cmd 查看 systeminfo, 往上翻,第一次软件安装的时间.正常,应是当天你开机的时间. 3.  查看电池使用状况 4. 鲁大师,查看硬盘操作次数及电池使用情况: