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

做网站设计图用什么软件nba最新消息新闻报道

做网站设计图用什么软件,nba最新消息新闻报道,上海app开发,品牌建设交流问题有哪些题目见:P1601 AB Problem(高精) - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 1. 问题分析 加法计算问题应该和在界面输出“Hello,world!”是一个难度级别,但是问题在于受限于原始数据类型的限制,无法进行大数据的精…

题目见:P1601 A+B Problem(高精) - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

1. 问题分析

        加法计算问题应该和在界面输出“Hello,world!”是一个难度级别,但是问题在于受限于原始数据类型的限制,无法进行大数据的精确的加法运算。即使双精度浮点数计算近似值,最大数差不多是308位数字,超过这个位数也是无法计算的。那这样就有问题了,利用原始的数据类型是无法存储一个任意大的整数的,需要自定义类型和运算和实现。Java中就有这种类型,python的加法也可以实现。那么如果用C++来写的话,应该如何去做呢?(做法很多,美丽的做法也跟多,我只是从个人角度出发来考虑这个问题)

        其实想法很简单,我们用数组来表示一个整数,有多少位,数组的长度就设置多少完了。比如存储123.

#include<iostream>
using namespace std;
int main(){int a[3] = {1,2,3};return 0;
}

          这样以来,我们就可以通过两个数组来表示两个整数,通过两个数组来利用加法的运算规则来进行计算了。

2. 计算步骤

2.1  输入问题

        题目输入的是两个整数,我们用什么来接收这两个数字呢?任意长度的,我们可以用字符串来接收这两个整数。

#include<bits\stdc++.h>
using namespace std;
int main(){string a, b;cin >> a;cin >> b;return 0;
}

2.2 字符串转化为整数数组

2.2.1 位置关系

        我们需要将字符串的最后一位,也就是个位数放置在整数数组的第0个位置,将倒数第二个位置的字符转为整数放置在整数数组的第1个位置,一次类推。

2.2.2 类型转化

        字符串(string)实际上是一个字符数组,字符串的每个位置是一个char类型,char类型采用ascii来存储,acsii对于0~9的数字是连续存储的,因此只需要用字符串每个位置的char类型减去字符0既可。

2.2.3 代码实现

#include<bits\stdc++.h>
using namespace std;void str2char_arr(string str, int a[]){int n = str.size();for (int i = n-1; i>=0; i--){a[n-i-1] = str[i] - '0';}
}
void display(int a[], int n, bool reverse){for (int i = 0; i < n; i++){if (reverse == true){cout << a[n-1-i];}else{cout << a[i];}}
}
int main(){string str1, str2;int a[500];int b[500];cin >> str1;cin >> str2;str2char_arr(str1, a);str2char_arr(str2, b);display(a, str1.size(), false);return 0;
}

2.3 定义加法运算

        加法运算的规则如下:

        1. 从左到右依次计算

        2. 两个数组的数字对应位置相加,加上上一次的进位(上次进位为上次的和除以10的商),然后对10取余。

        注意:可以根据题目中数据的大小约束,设置较大的数组,并且两个数组的大小一致,这样有点浪费空间和时间。后面可以用可变数组来优化。

#include<bits\stdc++.h>
using namespace std;void str2char_arr(string str, int a[]){int n = str.size();for (int i = n-1; i>=0; i--){a[n-i-1] = str[i] - '0';}
}
void display(int a[], int n, bool reverse){for (int i = 0; i < n; i++){if (reverse == true){cout << a[n-1-i];}else{cout << a[i];}}
}void add(int a[], int b[], int c[], int n){int t = 0;for (int i = 0; i < n; i++){t += a[i] + b[i];c[i] = t%10;t /= 10;}
}int main(){string str1, str2;int a[501];int b[501];int c[501];int n = 501;cin >> str1;cin >> str2;memset(a, 0, sizeof(a));memset(b, 0, sizeof(b));str2char_arr(str1, a);str2char_arr(str2, b);add(a, b, c, n);while(c[n-1] == 0 && n > 1){n--;}display(c, n, true);return 0;
}

2.4 逆序输出

        计算的时候从个位数开始计算,个位数的索引小,所以输出的时候需要逆序输出。另外就是要从第一个不为0的数字输出。

3. 优化

      这只是一个初级版本,优化空间很大。

http://www.ahscrl.com/news/12491.html

相关文章:

  • 重庆建网站的公司集中在哪里免费域名
  • 网上商城的意义独立站seo是什么
  • 旅游做哪个网站好百度论坛首页
  • 海珠建网站公司数据分析报告
  • 早那么做商城网站短视频平台推广方案
  • 网站做以后怎么修改网站内容seo排名优化seo
  • wordpress不显示某个栏目百度搜索排行seo
  • 用java做网站代码百度推广非企代理
  • 深圳外贸商城网站建设网站搭建一般要多少钱
  • 满城区城乡建设局网站学开网店哪个培训机构好正规
  • 如何做公众号小说网站赚钱百度一下百度网页版
  • 彩票走势图网站建设如何制作一个简单的网页
  • 网站建设延期报告自建站怎么推广
  • 上海免费网站建设模板推荐百度竞价托管哪家好
  • 传统网站与营销型网站seo搜索引擎入门教程
  • 餐饮品牌网站建设做市场推广应该掌握什么技巧
  • 郑州市公安局建设路分局网站培训机构退费纠纷一般怎么解决
  • 国外主机 经营性网站百度平台营销软件
  • 山东淄博网站建设百度一下网页打开
  • 附近广告喷绘制作公司杭州专业seo
  • 网站开发中的qq登录拉新任务接单放单平台
  • 行业门户网站有哪些seo学习论坛
  • 做外单网站亚马逊商品关键词举例
  • wordpress主题配置文件南京百度推广优化排名
  • 黄冈论坛网站有哪些云搜索神器
  • wordpress会员发布文章seo黑帽有哪些技术
  • 湖南土特产销售网网站建设制作换友情链接的网站
  • 关于建设网站的需求分析引擎优化是什么意思
  • 网站建设常用结构类型百度搜索引擎的网址是
  • 做的美食视频网站seo优化报告