看板 NTUCH-HW 關於我們 聯絡資訊
21 r=0.9641 f=99836Hz 39 right i=0.467A 47 20*0.1*0.05*0.5*cos30度*0.1A=0.0043 59 a 2.86 b1.1Am^2 78 v=E/B qvB' =v^2* m/r q/m=E/rBB' 老實講這次太簡單 我覺得有詐 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 118.168.137.105
wartmh:小心老師看板! 02/22 15:20
cranfis:單數題課本都有解答了~證明題不建議PO詳解... 02/22 22:46
jasonfghx:http://0rz.tw/QwuwX 03/07 22:46
#include <iostream> #include <iomanip> #include"matrix.h" using namespace std; #include <string> #include <fstream> #include <cstdlib> int main() { int calmatrix1[10][10],i,j,k,row,column,calmatrix2[10][10],ch,m,n,l,choice; int row1,row2,column1,column2,calmatrix3[10][10],calmatrix4[10][10],ch1,result[10][10]; matrix keyin,calmatrix,call,saveit; string filename,filename1; cout<<"if you want to plus or minus press 1. if you want to multiply press 2."<<endl; cin>>choice; system("cls"); if(choice==1) { keyin.enterbykey(calmatrix1,calmatrix2,row,column); cout<<"you want to plus, press 1. you want to minus, press 2."<<endl; cin>>ch; if(ch==1) { cout<<"matrixA+matrixB="<<endl; calmatrix.calplus(calmatrix1,calmatrix2,row,column); } if(ch==2) { cout<<"matrixA-matrixB="<<endl; calmatrix.calminus(calmatrix1,calmatrix2,row,column); } } else if(choice==2) { keyin.enterbykey1(calmatrix1,calmatrix2,m,n,l); calmatrix.calmultiple(calmatrix1,calmatrix2,m,n,l); } cout << "Please enter the name of the file you wish to open: "; cin>>filename; call.inputfromfile(filename,row1,column1,calmatrix3); cout << "Please enter another name of the file you wish to open: "; cin>>filename1; call.inputfromfile(filename1,row2,column2,calmatrix4); cout<<"you want to plus, press 1. you want to minus, press 2."<<endl; cin>>ch; if(ch==1) { cout<<"matrixA+matrixB="<<endl; calmatrix.calplus(calmatrix3,calmatrix4,row1,column1); /*cout<<"do you want to save?"<<endl; cin>>ch1; if(ch1==1) { cout << "Please enter the name of the file: "; cin>>filename; //saveit.outputscreen(filename,row1,column1,result); }*/ } if(ch==2) { cout<<"matrixA-matrixB="<<endl; calmatrix.calminus(calmatrix3,calmatrix4,row2,column2); } system("pause"); return 0; } //,int numC[10][10] #include <iostream> #include <iomanip> using namespace std; #include <string> #include <fstream> #include <cstdlib> class matrix { public: void enterbykey(int[10][10],int[10][10],int&,int&); void enterbykey1(int[10][10],int[10][10],int&,int&,int&); void inputfromfile(string,int&,int&,int[10][10]); void calplus(int[10][10],int[10][10],int,int); void calminus(int[10][10],int[10][10],int,int); void calmultiple(int[10][10],int[10][10],int&,int&,int&); void outfile(string,int,int,int[10][10]); }; void matrix::enterbykey(int number[10][10],int numB[10][10], int& row, int& column) { int i,j; cout<<"enter the row and the column"<<endl; cout<<"row:"; cin>>row; cout<<"column:"; cin>>column; for(i=0;i<row;i++) { for(j=0;j<column;j++) { cin>>number[i][j]; } } cout<<"matrixA"<<endl; for(i=0;i<row;i++) { for(j=0;j<column;j++) { cout<<setw(3)<<number[i][j]; } cout<<endl; } for(i=0;i<row;i++) { for(j=0;j<column;j++) { cin>>numB[i][j]; } } cout<<"matrixB"<<endl; for(i=0;i<row;i++) { for(j=0;j<column;j++) { cout<<setw(3)<<numB[i][j]; } cout<<endl; } } void matrix::enterbykey1(int number[10][10],int numB[10][10],int& m,int& n,int& l) { int i,j; cout<<"enter the content of matrixA(mXn) and matrixB(nXl)"<<endl; cin>>m>>n>>l; for(i=0;i<m;i++) { for(j=0;j<n;j++) { cin>>number[i][j]; } } cout<<"matrixA"<<endl; for(i=0;i<m;i++) { for(j=0;j<n;j++) { cout<<setw(3)<<number[i][j]; } cout<<endl; } for(i=0;i<n;i++) { for(j=0;j<l;j++) { cin>>numB[i][j]; } } cout<<"matrixB"<<endl; for(i=0;i<n;i++) { for(j=0;j<l;j++) { cout<<setw(3)<<numB[i][j]; } cout<<endl; } } void matrix::calplus(int numA[10][10],int numB[10][10],int row,int column) { int i,j; int numC[10][10]={0}; for(i=0;i<row;i++) { for(j=0;j<column;j++) { numC[i][j]=numA[i][j]+numB[i][j]; } } for(i=0;i<row;i++) { for(j=0;j<column;j++) { cout<<setw(3)<<numC[i][j]; } cout<<endl; } } void matrix::calminus(int numA[10][10],int numB[10][10],int row,int column) { int i,j; int numC[10][10]={0}; for(i=0;i<row;i++) { for(j=0;j<column;j++) { numC[i][j]=numA[i][j]-numB[i][j]; } } for(i=0;i<row;i++) { for(j=0;j<column;j++) { cout<<setw(3)<<numC[i][j]; } cout<<endl; } } void matrix::calmultiple(int numa[10][10],int numb[10][10],int& m,int& n,int& l) { int i,j; int numC[10][10]={0}; for(i=0;i<m;i++) { for(j=0;j<l;j++) { for(int k=0;k<n;k++) { numC[i][j]+=numa[i][k]*numb[k][j]; } } } for(i=0;i<m;i++) { for(j=0;j<l;j++) { cout<<numC[i][j]<<" "; } cout<<endl; } } void matrix::inputfromfile(string filename,int& deter_row,int& deter_column,int numA[10][10]) { char check; int sum=0,row=0,column=0,k; ifstream read; read.open(filename.c_str()); if (read.fail()) // check for a successful open { cout << "\nThe file was not successfully opened" << "\n Please check that the file currently exists." <<endl; system("pause"); exit(0); } cout << "\nThe file has been successfully opened for reading"<< endl; do { read>>numA[row][column]; column=column+1; if((check=read.get())=='\n') { row=row+1; column=0; } }while(read.good()); for(int ii=0;ii<=row;ii++) { for(int jj=0;jj<column;jj++) { cout<<setw(3)<<numA[ii][jj]; } cout<<endl; } deter_row=row+1; deter_column=column; } /*void matrix::outfile(string filename,int row,int column,int numA[10][10]) { ofstream out; int sum=0,k; out.open(filename.c_str()); if (out.fail()) // check for a successful open { cout << "\nThe file was not successfully opened" << "\n Please check that the file currently exists." <<endl; exit(0); } cout << "\nThe file has been successfully opened for reading"<< endl; for(int i=0;i<row;i++) { for(int j=0;j<column;j++) { out<<numA[i][j]<<" "; } out<<'\n'; } } */ ※ 編輯: jasonfghx 來自: 118.168.133.60 (12/26 18:04)