日期:2018.7.14

星期六

博客期:001

  今天先是试着写一下博客,最近去青海旅游了,学习时间有点少,但空余时间还是有学习的,不管怎么样吧!先说一下我的这几天的成果——“Bignum”类,虽然很费劲写了不少,但还是没有用很多硬性要求!Bignum是用C++写的,我想着多少先用C++写出来,因为java没有运算符重载,写起来是相当麻烦!先声明一下:如下是还未优化,且未整理的Bignum类,所以明天再把具体文件拉入。

  先来一部分源代码吧!

/*---------------/<如下为Bignum.cpp>/--------------------*/

//减法
Bignum operator -(Bignum &x,Bignum &y)
{
   Bignum result;
   if(!x.ifhavef&&!y.ifhavef)
   {
      char arrays[100];
      bool resulthavef=false;
      Bignum t1(x),t2(y);
      int l1=Bignum::litude(x),l2=Bignum::litude(y);
      if(l1==l2)
      {
         Bignum::runlatter(t1.num);
         Bignum::runlatter(t2.num);
         l1++;
         l2++;
      }
      else if(l1<l2)
      {
         Bignum::runlatter(t2.num);
         Bignum::runlatter(t1.num,l2-l1+1);
         l2++;
         l1=l2;
      }
      else if(l1>l2)
      {
         Bignum::runlatter(t1.num);
         Bignum::runlatter(t2.num,l1-l2+1);
         l1++;
         l2=l1;
      }
      //统一排位
      Bignum t3(t1),t4(t2);
      if(strcmp(t1.num,t2.num)<0)
      {
         Bignum::exchange(t3,t4);
         resulthavef=true;
      }
      if(strcmp(t1.num,t2.num)==0)
      {
         arrays[0]='0';
         arrays[1]='\0';
      }
      else
      {
         arrays[l2]='\0';
         for(int j=l2-1,k=0;j>=0;j--)
         {
            int answer=change(t3.num[j])-change(t4.num[j])-k;
            if(answer<0)
            {
               k=1;
               answer=answer+10;
            }
            else
               k=0;
            arrays[j]=change(answer);
         }
      }
      Bignum::runformer(arrays);
      result.setnum(arrays);
      result.setf(resulthavef);
   }
   else if(x.ifhavef&&y.ifhavef)
     result=Bignum::anti(y)-Bignum::anti(x);
   else if(x.ifhavef&&!y.ifhavef)
     result=Bignum::anti(Bignum::anti(x)+y);
   else
     result=Bignum::anti(y)+x;
   result.test();
   return result;
}

Java编程之前的复习和练习的更多相关文章

  1. 今天考试的JAVA编程题

    今天早上考了java, 题目感觉还不错, 共四道题,有一道定义类的没啥意思就没列出来. 这三道题目还是不错的,特别是第一道,大一上学期学linux的时候,那时还没学C语言呢,准确的来说,还不知道什么是 ...

  2. 50道经典的JAVA编程题 (6-10)

    50道经典的JAVA编程题 (6-10),今晚做了10道了,累死了...感觉难度不是很大,就是不知道是不是最好的实现方法啊!希望大神们能给指点哈... [程序6]GCDAndLCM.java 题目:输 ...

  3. Java第三阶段复习

    Java第三阶段复习: 1. Spring 1. IOC: 定义:Inverse Of Controller:反转控制,将bean对象的创建和对象之间的关联关系的维护由原来我们自己创建.自己维护反转给 ...

  4. 女生学Java编程是什么感受?

    那我就代表女生来说说感受 在编程的世界很难遇到好看的帅哥 记得当年15年7月4号是我实习生入职的日子,因为是校企合作,所以没有面试.老师推荐.直接入职.刚来北京第一个感觉就是人多,还有就是热.刚到公司 ...

  5. JAVA编程思想(第四版)学习笔记----4.8 switch(知识点已更新)

    switch语句和if-else语句不同,switch语句可以有多个可能的执行路径.在第四版java编程思想介绍switch语句的语法格式时写到: switch (integral-selector) ...

  6. 《Java编程思想》学习笔记(二)——类加载及执行顺序

    <Java编程思想>学习笔记(二)--类加载及执行顺序 (这是很久之前写的,保存在印象笔记上,今天写在博客上.) 今天看Java编程思想,看到这样一道代码 //: OrderOfIniti ...

  7. #Java编程思想笔记(一)——static

    Java编程思想笔记(一)--static 看<Java编程思想>已经有一段时间了,一直以来都把笔记做在印象笔记上,今天开始写博客来记录. 第一篇笔记来写static关键字. static ...

  8. [Java编程思想-学习笔记]第3章 操作符

    3.1  更简单的打印语句 学习编程语言的通许遇到的第一个程序无非打印"Hello, world"了,然而在Java中要写成 System.out.println("He ...

  9. Java编程思想重点笔记(Java开发必看)

    Java编程思想重点笔记(Java开发必看)   Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而 ...

随机推荐

  1. Codeforces 1065E(计数)

    题目链接 题意 限定字符串长度为$n$,字符集规模为$A$,以及$m$个数字$b$,对于任意数字$bi$满足长度为$bi$的前缀和后缀先反转再交换位置后形成的新串与原串视作相等,问存在多少不同串. 思 ...

  2. Socket与TCP,UDP

    什么是socket 简单来说是IP地址与端口的结合协议(RFC 793) 一种地址与端口的结合描述协议 TCP/IP协议的 相关API的总称:是网络api的集合实现 涵盖了:Stream Socket ...

  3. Visual Studio 2013 在使用 razor无智能提示的解决办法

    网上看到的方法都差不多,但是我感觉没怎么说详细,因此,截图备注下: 1.开始->Microsoft Visual Studio 2013->Visual Studio  Tools-> ...

  4. linux 开发板上的调试

    1.需要命令 ulimit 进行设置core file size ,  看 core file size. cat /proc/pid/limits,  这个暂时不用 2.需要有gdb命令 , 需要g ...

  5. ASP.NET MVC - 模型验证

    ASP.NET MVC - 模型验证(Model verification) 模型验证原理浅析 模型验证用到了模型绑定器.模型验证器(System.Web.Mvc.DataAnnotationsMod ...

  6. 微信支付-H5网页支付开通流程

    简介  H5 支付是指商户在微信客户端外的移动端网页展示商品或服务,用户在前述页面确认使用微信支付时,商户发起本服务呼起微信客户端进行支付.主要用于触屏版的手机浏览器请求微信支付的场景.可以方便的从外 ...

  7. [转载]Meta Learning单排小教学

    原文链接:Meta Learning单排小教学 虽然Meta Learning现在已经非常火了,但是还有很多小伙伴对于Meta Learning不是特别理解.考虑到我的这个AI游乐场将充斥着Meta ...

  8. oracle-----视图/物化视图

    什么是视图 视图(view),也称虚表, 不占用物理空间,这个也是相对概念,因为视图本身的定义语句还是要存储在数据字典里的. 视图只有逻辑定义.每次使用的时候,只是重新执行SQL. 视图是从一个或多个 ...

  9. mybatis-plus调用自身的 selectById 方法报错:org.apache.ibatis.binding.BindingException:

    mybatis-plus的版本号是 2.0.1,在调用自身的insert(T)的时候没有报错,但是执行update报错,调用selectById.deleteById的时候也报错.也就是涉及到需要主键 ...

  10. 【转】Linux下查看系统配置

    [转]Linux下查看系统配置 CPU 1. lscpu:显示cpu架构信息 [xxx@localhost ~]$ lscpu Architecture: x86_64 CPU op-mode(s): ...