关于数的常用算法

上传人:飞*** 文档编号:53296638 上传时间:2018-08-29 格式:PDF 页数:125 大小:41.04KB
返回 下载 相关 举报
关于数的常用算法_第1页
第1页 / 共125页
关于数的常用算法_第2页
第2页 / 共125页
关于数的常用算法_第3页
第3页 / 共125页
关于数的常用算法_第4页
第4页 / 共125页
关于数的常用算法_第5页
第5页 / 共125页
点击查看更多>>
资源描述

《关于数的常用算法》由会员分享,可在线阅读,更多相关《关于数的常用算法(125页珍藏版)》请在金锄头文库上搜索。

1、关于数的常用算法1. 求 n! #include void main() int i,s=1; int n; cinn; for(i=1;i void main() int s=0,i,j,t; int n; cinn; for(i=1;i void main() int x; cinx; int i; for(i=2;i void main() int i,t=0; for(i=10;i void main() int x,a4; cinx; while(x0) ai+=x%10; x=x/10; int i; for(i=0;i void main() int x,a4,i,t; for(

2、 i=1000;i0) aj+=t%10; t=t/10; int k; for(k=0;k void main() int n; cinn; int t=1; for(int i=2;i void main() int n,k=0; for(n=10;n void main() int a,n,s=0; cinan; int i; int t=0; for(i=1;i void main() int a=1,b=1,c; int i; coutn; int i=0,n1=n; while(n10) ai+=n1%10; n1=n1/10; n1=0; for(i=0;i #include v

3、oid main(void) float x0,x1,a; couta; if (a1e-5); cout void main() int i=1; int x; int q1=0,q2=0; while(ix; if(x%2=0) 数q1+=x; else q2+=x; i+; cout void main() int i,j,k; int t1,t2; for(i=1;i void main() int i; int a,b,c; int t; for(i=100;i class A int a10; int x; int k; / 需要查找的数所在数组 a 的下标public: void

4、 f1(int aa,int xx) /初始化成员数据 a 和 x int i; for(i=0;ix) right=mid-1; else left=mid+1; if (flag=1) k=mid; else k=0; void f3() int i; for(i=0;ixxx; A a1; a1.f1(b,xxx); a1.f2(); a1.f3(); 2. 改进的选择排序法#include /适当之处增加注释语句,以增加程序的可读性class B int a10; public: void f1(int bb) /初始化成员数据 a 数组int i; for(i=0;i class A

5、 int a100; int m; / 存放实际元素的个数public: void f1(int aa,int n) int i; for(i=0;i=x 或者 im 的时候if(ai=x) / 该 条件 结合上一条注释语句的说明,插入点在中间或最前面一个元素之前for(k=m-1;k=i;k-) ak+1=ak; ai=x; else / 说 明 要插入的数比原数组最后一个数还要大,即插入点在最后am=x; m+; /插 入后, 数组 a 的实际元素要多一个 void f3() / 将新数组输出int i; coutxx; A a1; a1.f1(aaa,5); a1.f2(xx); / 需

6、要插入的数通过实参传递给形参a1.f3(); 4. 两个数组合并成一个新数组5. 冒泡排序法#include class A int a10; public: void f1(int aa) /该 函数 的 作 用 是将成员数据 a的每个元素赋值(即初始化数组a)将形参数组 aa 赋值给成员数据 a int i; / 函数体中需要使用的全部变量的说明语句建议大家写在这里for(i=0;iaj+1) /注意这里应该写大于而不是小于t=aj;aj=aj+1;aj+1=t; /交换 aj和 aj+1 两个元素,保证小的元素在前 void f3() /将排好序的数组 a 输出int i; for(i=

7、0;i /适当之处增加注释语句,以增加程序的可读性class B int a10; public: void f1(int bb) /初始化成员数据 a 数组int i; for(i=0;iaj) t=ai;ai=aj;aj=t; void f3() /每行输出数组 a 的 5 个元素int i; for(i=0;i class A int a10; int x; int k; / 需要查找的数所在数组 a 的下标public: void f1(int aa,int xx) /初始化成员数据 a 和 x int i; for(i=0;ixxx; A a1; a1.f1(b,xxx); a1.f

8、2(); a1.f3(); 二维数组的应用1. 求鞍点#include /所谓鞍点指处于行最大值列最小值的元素及其所在的下标#define N 4 / 二维数组的行数和列数定义为常量,以增加程序的通用性class A int aNN; int t; / 存放鞍点的值int r,l; / 存放鞍点所在行和列public: void f1(int aaN) /初始化成员数组 a,其他成员数据 t 、r 、l 在 f2 函数中求出int i,j; for(i=0;it) t=aij;r=i;l=j; for(k=0;k #define N 4 / 二维数组的行数和列数定义为常量,以增加程序的通用性c

9、lass A int aNN; int sum1; / 存放边界元素之和int sum2; / 存放非边界元素之和public: void f1(int aaN) /初始化成员数组 a、sum1 、sum2 int i,j; for(i=0;i #define N 4 / 二维数组的行数和列数定义为常量,以增加程序的通用性class A int aNN; int sum1; / 存放主对角线之和int sum2; / 存放副对角线之和int sum; / 存放对角线之和public: void f1(int aaN) /初始化成员数组 a、sum1 、sum2 、sum int i,j; fo

10、r(i=0;i #define N 4 / 二维数组的行数和列数定义为常量,以增加程序的通用性class A int aNN; int max,x1,x2; / 存放最大元素及其所在的下标int min,n1,n2; / 存放最小元素及其所在的下标float avg; / 存放平均值public: void f1(int aaN) /初始化成员数组 a、max 、min、avg int i,j; for(i=0;imax) max=aij;x1=i;x2=j; /求最大值及其下标if(aij #define N 4 / 二维数组的行数和列数定义为常量,以增加程序的通用性class A int

11、aNN; int hN; / 存放每行的最大值int lN; / 存放每列的最小值public: void f1(int aaN) /初始化成员数组 a, 成员数据 h和 l 要通过 f2 来实现int i,j; for(i=0;iaij) lj=aij; void f3() /输出各成员数据int i,j; for(i=0;i #define N 4 / 二维数组的行数和列数定义为常量,以增加程序的通用性class A int aNN; int sum1; / 存放上三角元素之和int sum2; / 存放下三角元素之和public: void f1(int aaN) /初始化成员数组 a、

12、sum1 、sum2 int i,j; for(i=0;iN;i+) / 该循环用于初始化成员数组 a for(j=0;jN;j+) aij=aaij; sum1=0;sum2=0; / 初 始 化 成 员 数 据sum1 、sum2 void f2() /求上(下)三角元素之和int i,j; for(i=0;iN;i+) / 求下三角元素之和sum1 for(j=0;j=i;j+) sum1+=aij; for(i=0;iN;i+) / 求上三角元素之和sum2 for(j=i;jN;j+) sum2+=aij; void f3() /输出各成员数据int i,j; for(i=0;iN;i+) /该循环用于输出二维数组a,注意输出的格式for(j=0;jN;j+) coutaijt; coutendl; cout“上 三角元素之和“sum2endl; cout“下三角元素之和“sum1endl; ; void main() int aaNN=1,2,3,1,1,0,1,3,2,2,1,0,4,3,2,1; A a1; a1.f1(aa); a1.f2(); a1.f3();

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 资格认证/考试 > 其它考试类文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号