当前位置: 首页 > news >正文

真人做爰网站定制型营销网站建设

真人做爰网站,定制型营销网站建设,南京大型网站建设,平陆网站建设一、复习高低精度 一个数分为两种类型: 1. 高精度数,即一个长度特别长的数,使用 long long 也无法存储的一类数字。 2. 低精度数,即一个普通的数,可以使用 long long 来存储。 由于高精度除法比较简单,…

一、复习高低精度

一个数分为两种类型:

1. 高精度数,即一个长度特别长的数,使用 long long 也无法存储的一类数字。

2. 低精度数,即一个普通的数,可以使用 long long 来存储。

由于高精度除法比较简单,建议大家摸透了高精度加减法和高精度乘法的逻辑(戳蓝色文字进入课程快览)。

二、复习高精度乘法

1. 一共有两个 for 循环,第一个 for 循环遍历第一个因数,第二个 for 循环遍历第二个因数。

2.  for 循环中的值分别是 j = 0 ~ lenb-1,i = 0 ~ lena-1。

3. 计算逻辑:

ans[i+j] = a[i] * b[j] + in + ans[i+j];

4. 输出:

【去前导零】while (ans[len_ans-1] == 0 && len_ans > 1) len_ans--;

【正常逆序输出】ans[len_ans-1] ~ ans[0]

三、存储的基础类型

输入的高精度被除数: char 类型

转换后的高精度被除数: int 类型

低精度除数: int 类型

高精度被除数的位数: int 类型

存储结果: char 类型

答案的长度: int 类型

四、输入与转换

#include <iostream>
#include <cstring>
using namespace std;int main()
{// 存储并输入char a_str[1005] = {};int b;cin >> a_str >> b;// 转换int a[1005] = {};int len_a = strlen(a_str);for (int i = 0; i <= len_a-1; i++){a[i] = a_str[i] - 48; // 正序存储 } return 0;
}

五、计算过程

#include <iostream>
#include <cstring>
using namespace std;int main()
{// 存储并输入char a_str[1005] = {};int b;cin >> a_str >> b;// 转换int a[1005] = {};int len_a = strlen(a_str);for (int i = 0; i <= len_a-1; i++){a[i] = a_str[i] - 48; // 正序存储 }// 计算int len_ans = len_a; // 计算次数int ans[1005] = {};int rem = 0; // 余数 for (int i = 0; i <= len_ans-1; i++){ans[i] = (rem * 10 + a[i]) / b; // 写商rem = (rem * 10 + a[i]) % b; // 写余}// 去前导零int k = 0; // k 表示第一个不为 0 元素的下标while (ans[k] == 0 && k < len_ans-1){k++;}// 正常正序输出for (int i = k; i <= len_ans-1; i++){cout << ans[i];}return 0;
}

看一下运行的效果:

六、小数点优化

#include <iostream>
#include <cstring>
using namespace std;int main()
{// 存储并输入char a_str[1005] = {};int b;int point = 3; // 保留小数的数位 cin >> a_str >> b;// 转换int a[1005] = {};int len_a = strlen(a_str);for (int i = 0; i <= len_a-1; i++){a[i] = a_str[i] - 48; // 正序存储 }// 计算int len_ans = len_a; // 计算次数int ans[2100] = {};int rem = 0; // 余数 for (int i = 0; i <= len_ans+point-1; i++){ans[i] = (rem * 10 + a[i]) / b; // 写商rem = (rem * 10 + a[i]) % b; // 写余}// 去前导零int k = 0; // k 表示第一个不为 0 元素的下标while (ans[k] == 0 && k < len_ans-1){k++;}// 正常正序输出整数部分 for (int i = k; i <= len_ans-1; i++){cout << ans[i];}// 小数点后判断 if (point > 0){cout << ".";for (int i = len_ans; i <= len_ans+point-1; i++){cout << ans[i]; }}return 0;
}

附录:两数的平均数

#incldue <iostream>
#include <cstring>
using namespace std;int main()
{// 高精度加法// 输入并存储 char a_str[1005] = {};char b_str[1005] = {};cin >> a_str >> b_str;int a[1005] = {};int b[1005] = {};int len_a = strlen(a_str);int len_b = strlen(b_str);for (int i = 0; i <= len_a-1; i++){a[len_a-i-1] = a_str[i] = 48;}for (int i = 0; i <= len_b-1; i++){b[len_b-i-1] = b_str[i] = 48;}// 计算int sum[1005] = {};int len_sum = max(len_a, len_b);int in = 0;for (int i = 0; i <= len_sum-1; i++){sum[i] = a[i] + b[i] + in;in = sum[i] / 10;sum[i] %= 10;}// 最高位判断if (in){sum[len_sum] = in;len_sum++;}// 高精度除法int divid[1005] = {};// 正序存储for (int i = 0; i <= len_sum-1; i++){divid[len_sum-i-1] = sum[i]; }// 计算int len_ans = len_sum;int ans[1005] = {};int rem = 0;for (int i = 0; i <= len_ans-1; i++){ans[i] = (rem * 10 + divid[i]) / 2;rem = (rem * 10 + divid[i]) % 2;}// 去前导零int k = 0;while (ans[k] == 0 && k < len_ans-1){k++;}// 输出平均数for (int i = k; i <= len_ans-1; i++){cout << ans[i];}return 0; 
}

http://www.yidumall.com/news/99722.html

相关文章:

  • 南宁网站制作建设抖音推广运营
  • 安阳做网站电话东莞优化疫情防控措施
  • sqlite3做网站数据库seo搜索优化怎么做
  • 深圳市做网站的公司品牌推广的步骤和技巧
  • 宝应做网站广东seo点击排名软件哪里好
  • 广州市网站建设科技免费数据分析网站
  • 如何提升网站搜索排名怎么做网络推广优化
  • 浦江县住房和城乡建设局网站seo营销怎么做
  • 网站seo外链怎么做如何自己开网站
  • 汉中免费做网站媒介星软文平台
  • 网站建设公司发展长沙网动网络科技有限公司
  • iis如何做同时运行两个网站80端口百度ai助手入口
  • 网站在哪里变更备案信息西安seo培训机构
  • 骏域网络科技有限公司湖南正规关键词优化首选
  • cms做网站容易不网站推广排名优化
  • 网站改版建设,有哪些内容百度网络营销
  • 在淘宝上找建设网站的靠谱吗郑州seo培训班
  • 网站搭建网站制作厦门百度关键词seo收费
  • 手机网站有免费做的吗随机关键词生成器
  • 饿了么网站开发费用营销是做什么
  • 青海省建设厅网站百度资源搜索平台官网
  • 如何仿造一个网站做百度网盘电脑版登录入口
  • 提高怎样做网站的外链百度推广怎么弄
  • 在小说网站做编辑怎么找西安网站维护
  • 万网网站 banner图片不显示代写文章的平台有哪些
  • 嵊州建设银行取款网站河南制作网站
  • 三星网上商城分期如何优化网页加载速度
  • 怎么安装php网站营销培训课程
  • 网站图片类型市场营销平台
  • 优秀app界面设计模板电脑优化软件