大数据的乘法

//大数据相乘,具体的算法思想见c

#define  _CRT_SECURE_NO_WARNINGS  //vs2013去掉安全检查

#include <stdlib.h>
#include <string.h>
#include <iostream>

using namespace std;
class big_data
{
public:
    void init_string()
    {
        cout << "str1 = ";
        cin >> str1;
        cout << endl;
        cout << "str2 = ";
        cin >> str2;
        cout << endl;
    }
    char* big_data_multi ()
    {
        int length_str1 = strlen(str1);
        int length_str2 = strlen(str2);
        int *pstr3 = (int*)malloc(sizeof(int)*(length_str1+length_str2));
        memset(pstr3, 0, sizeof(int)*(length_str1+length_str2));//一定要初始化,否则乱码
        for(int i = 0; i < length_str2; i++)//循环累乘相加
        {
            for(int  j = 0;  j < length_str1; j++)
            {
                pstr3[i + j + 1] += (str1[j] - ‘0‘) * (str2[i] - ‘0‘);
            }
        }
        for (int i = length_str1 + length_str2 - 1; i >= 0; i--)
        {
            if(pstr3[i] >= 10)
            {
                pstr3[i - 1] += pstr3[i] / 10;
                pstr3[i] = pstr3[i]%10;
            }
        }
        int i = 0;
        while (pstr3[i] == 0)
        {
            i++;
        }
        char *pstr4 = (char*)malloc(sizeof(char)*(length_str1 + length_str2 + 1));
        int j = 0;
        for(; j < length_str1+length_str2 && i < length_str1+length_str2; j++,i++)
        {
            pstr4[j] = pstr3[i] + ‘0‘;
        }
        pstr4[j] = ‘\0‘;
        return pstr4;
    }
private:
    char str1[100];
    char str2[100];
};

int main()
{
    big_data bigdata1;

    while(1)
    {
        cout << endl;
        bigdata1.init_string();
        cout << "相乘的结果是 :" << bigdata1.big_data_multi() << endl;
    }

    system("pause");
}
时间: 2024-10-03 21:47:24

大数据的乘法的相关文章

java中不用BigInteger实现大数据的乘法操作

昨天看到一个题目:计算1234!,不能用BigInteger类 众所周知阶乘的数据会很大,常用的int和long型根本不够用.一般想到的只有BigInteger类,但是题目中明确说了不能用,所以只能想其它办法. 阶乘其实就是乘法的递归,这道题目可以简化为如何实现大数据的乘法,int和long型都装不下的数据,只能用String来表示,所以只要实现了两个String表示数字的乘法就可实现题目要求. 想想我们自己手算乘法的步骤,基本都是列一个竖式,分别按位相乘,进位的数相加..只要用程序将这个过程模

大数据的乘法实现——C语言

1大数据乘法的算法思路: 输入两个字符串,得到结果,例如:123456789*123456789: 思路:1)首先 123456789*1 = 9   18  27  36  45  54  63  72  81       123456789*2 = 9   18  27  36  45  54  63  72  81                   123456789*3 = 9   18  27  36  45  54  63  72  81                      

【C/C++学院】0814-引用高级、引用高级增加/auto自动变量自动根据类型创建数据/Bool/Enum/newdelete全局/大数据乘法与结构体/函数模板与auto/宽字符本地化/inline

引用高级.引用高级增加 #include<iostream> #include<stdlib.h> // int a[10] // int (&ra)[10] // int a[2][5] // int (&ra)[2][5] void main1() { int a[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; int(&ra)[10](a);//引用就是给原来的变量有一个别名同一个地址 int i = 0; for (

大数据乘法

一:代码实现 //大数据乘法运算 #include <stdio.h> #include <stdlib.h> #include <string.h> int BigDataMul(char *num01, char *num02) { int res = 0, i = 0, j = 0; int length01 = 0, length02 = 0, totallength = 0; if(NULL == num01 || NULL == num02) { res =

华为内部关于大数据的一篇好文

科技的进步在很多的时候总会超出我们的想象,如果未来我们一个人拥有的电脑设备超过现在全球现在计算能力的总和,一个人产生的数据量超过现在全球数据 量的总和,甚至你的宠物小狗产生的信息量都超过现在全球数据量的总和,世界会发生什么呢?阅读本文,大数据(Big Data)会告诉你一个充满奇幻色彩的世界. 一.详解时髦词汇:大数据 似乎一夜之间,大数据(Big Data)变成一个IT行业中最时髦的词汇. 首先,大数据不是什么完完全全的新生事物,Google的搜索服务就是一个典型的大数据运用,根据客户的需求,

一文读懂机器学习,大数据/自然语言处理/算法全有了……

原文地址 http://www.open-open.com/lib/view/open1420615208000.html http://www.cnblogs.com/subconscious/p/4107357.html 引论 在本篇文章中,我将对机器学习做个概要的介绍.本文的目的是能让即便全然不了解机器学习的人也能了解机器学习.而且上手相关的实践.这篇文档也算是 EasyPR开发的番外篇.从这里開始.必须对机器学习了解才干进一步介绍EasyPR的内核.当然,本文也面对一般读者.不会对阅读有

大数据相乘

using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace BigNumberMultiplication { class Program { static void Main(string[] args) { try { int first = 4916; int second = 12345; long result = first * second; Cons

大数据的管理艺术

数据分析应用是真正能够直接解决企业问题的,是显露在外可以直接观察的部分,但是在这之下有很大部分支撑数据分析应用的就是数据管理技术.数据分析应用需要一整套的处理和加工过程,数据就是原材料,需要把数据有序地存储和管理起来.然后是数据的整理.清洗.集成,这个过程主要由数据工程师(DataEngineer)来完成,最后由数据科学家借助数据分体的工具和平台根据业务问题等实际需要采用不同的算法和方法等进行数据分析.大数据管理其实就是支撑数据应用的平台的管理技术 最早数据存放在文件里,没有中间件进行数据管理,

首席工程师揭秘:LinkedIn大数据后台是如何运作的

原文转自:http://kb.cnblogs.com/page/518558/ 摘要:Jay Kreps是来自LinkedIn的首席工程师,他表示日志几乎在计算机产生的时候就存在,除了可用在分布式计算或者抽象分布式计算模型内部之外,还有广泛的用途.本文中他讲述的日志的原理和通过把日志用做单独服务来实现数据集成.实时数据处理以及分布式系统设计.文章内容非常干货,值得学习. 英文原文:The Log: What every software engineer should know about re