第一阶段作业答案

更新时间:2023-11-04 11:02:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

//2.编程序,从键盘输入正整数n,求出n与其反序数之和并输出。 //例如,输入2038,输出应为 2038+8302=10340。 #include using namespace std; int main() {

cout<<\请输入一个小于10000的正整数\int x,a,b,c,d,m,n; cin>>x; a=x; m=(x-a)/10; b=m; n=(m-b)/10; c=n; d=(n-c)/10;

if(x>1000) cout<100,x<=1000) cout<10,x<=100) cout<

//4. 编程序,输入正整数m,它代表一个人民币钱数(元数)。

//求取这样一个方案,使用最少张数的人民币纸币,凑成上述的钱数m,并输出求取结果。 //注意,现在共有7种元以上面值的人民币纸币,分别为:100,50,20,10,5,2,1。 #include using namespace std; int main() {

int m,a,b,c,d,e,f,g;

cout<<\请输入钱数(为正整数)\cin>>m; a=m/100;

b=(m-a*100)/50;

c=(m-a*100-b*50)/20;

d=(m-a*100-b*50-c*20)/10; e=(m-a*100-b*50-c*20-d*10)/5; f=(m-a*100-b*50-c*20-d*10-e*5)/2; g=(m-a*100-b*50-c*20-d*10-e*5-f*2)/1; cout<<\元纸币数目为:\cout<<\元纸币数目为:\cout<<\元纸币数目为:\cout<<\元纸币数目为:\cout<<\元纸币数目为:\

cout<<\元纸币数目为:\cout<<\元纸币数目为:\return 0; }

#include #include using namespace std;

int day[12]={31,28,31,30,31,30,31,31,30,31,30,31};

string week[7]={\bool IsLeapYear(int year) {

return (year%4 == 0 && year0 != 0) || (year % 400 == 0); }

int main() {

int x; int year; int month; int date;

cout<<\请输入该年第一天是星期几(输入数字)\ cin>>x;

cout<<\输入年、月、日\ cin>>year>>month>>date; if(IsLeapYear(year)) day[1] += 1; int sum=-1;

for(int i=0; i<12; ++i) {

sum +=day[i]; }

int result=((sum%7)+date+x-1)%7;

cout<<\ return 0; }

//7.将输入的罗马数据化为10进制数。假设罗马数据中只使用如下7个\基值\字母:M、D、C、L、X、V、I,

//分别用来表示1000、500、100、50、10、5、1。如,罗马数据LXXXVII表示10进制的87。

//将输入的10进制正整数转换为罗马数据。

#include #include using namespace std; int main() {

int x,a,b,c,d,e,f,g;

string LM[7]={\ cout<<\请输入一个小于10000的正整数\ cin>>x; a=x/1000;

b=(x-1000*a)/500;

c=(x-1000*a-500*b)/100;

d=(x-1000*a-500*b-100*c)/50;

e=(x-1000*a-500*b-100*c-50*d)/10; f=(x-1000*a-500*b-100*c-50*d-10*e)/5; g=x-1000*a-500*b-100*c-50*d-10*e-5*f; int A=0,B=0,C=0,D=0,E=0,F=0,G=0; cout<<\转化为罗马数据为:\ while A

//8.编程序,循环进行如下的处理过程:由计算机生成简单的四则运算题;

//用户给出答案;计算机判断对错。直到用户回答说不再继续做了时结束程序。 #include #include #include int main(void) { int time, width, type, tmp, right = 0; int a, b, c; printf(\运算次数: \ scanf(\ tmp = time; printf(\操作数位数: \

scanf(\width = pow(10, width);

printf(\运算类型(+ -> 0, - -> 1, * -> 2, / ->3): \scanf(\while (tmp--) { a = rand() % width; b = rand() % width;

switch (type) {

case 0: printf(\ scanf(\ if (a + b == c) { printf(\ right++; } else printf(\ break; case 1: printf(\ scanf(\ if (a - b == c) { printf(\ right++; } else printf(\ break; case 2: printf(\ scanf(\ if (a * b == c) { printf(\ right++; } else

printf(\ break; case 3: printf(\ scanf(\ if (a / b == c) { printf(\ right++; } else printf(\ break; default: printf(\ } } printf(\ return 0; }

//9. 编程序,按如下要求来求解任意阶数满秩矩阵的逆矩阵。 //(1) 矩阵行数(阶数)n之值由用户通过键盘输入;

//(2) 将欲求逆的\原始矩阵\另加一个\单位矩阵\存放在于数组A之中,而n行2n列的A存储空间通过new来动态分配,且\原始矩阵\的各元素值也由用户通过键盘输入;

//(3)利用行初等变换设法将A左半的\原始矩阵\化为\单位矩阵\,此时,右半的原\单位矩阵\则变成了欲求的结果逆矩阵。

//提示:将整个求解任务(总任务)进行\分解\,设计出多个各负其责的自定义函数以完成各子任务。

//求取逆矩阵的主要工作是:利用行初等变换(如将某一行的各数据乘以适当的倍数加到另一行的对应各元素上去),

//设法将A左半的\原始矩阵\化为\单位矩阵\(首先将\左半\消为\上三角\;又将\左半\主对角线消为1;最后将\左半\消为单位矩阵),

//此时,右半的原\单位矩阵\则变成了欲求的逆矩阵。 #include #include using namespace std; class Matrix {

private: int lines;

double **MatrA;

本文来源:https://www.bwwdw.com/article/7zb2.html

Top