zoukankan      html  css  js  c++  java
  • 第一次编程作业修改

    #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,k;
    char a[10];
    for(i=0;i<=20&&str[i]!='(';i++);//找到字符转换启示位置
    for(j=0;j<=20&&str[j]!=',';j++);//找到字符转换的终止位置
    for(k=0;k<=10&&i<j;k++){
    i++;
    a[k]=str[i]; // 字符转换
    }
    p(0,0)=atof(a);
    i=i+1;
    for(;j<=20&&str[j]!=')';j++);//第二段字符转换
    for(k=0;k<=10&&i<j;k++){
    i++;
    a[k]=str[i];
    }
    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;
    }

  • 相关阅读:
    apache配置虚拟主机及虚拟目录
    Apache的443端口被占用解决方法
    Windows下XDebug 手工配置与使用说明
    php中输入这个网站的网址跳转到你定义的页面代码
    XAMPP的使用说明
    Linux致命命令
    wget 命令用法详解
    Linux 关机命令详解
    LINUX视频教程下载地址
    ubuntu 开机自动开启数字小键盘
  • 原文地址:https://www.cnblogs.com/martinyideng/p/5109333.html
Copyright © 2011-2022 走看看