zoukankan      html  css  js  c++  java
  • 六:大数运算-减法运算

    问题:大数-减法运算
    题目描述

    请计算两个整数相减(数的范围:0 <= num < 10^100)
    输入
    两行
    第一行为整数n1
    第二行为整数n2(本题中保证n1>=n2)
    输出
    一个整数
    样例输入
    20000000
    10000000
    样例输出
    10000000

     1 #include<stdio.h>
     2 #include<string.h>
     3 #define M 100000
     4 int Inter_Sum[M];
     5 void fun(char str1[],char str2[]){
     6     int t,m=0,i=strlen(str1);
     7     int k=0,p=strlen(str2)-1,j;
     8     while(i--){
     9             if(p>=0)
    10          t=(str1[i]-48)-(str2[p]-48);
    11          else t=(str1[i]-48);
    12         if(t>=0){
    13             Inter_Sum[k]=t;
    14             m=0;
    15         }else{
    16         if((str1[i-1]-48)!=0&&i-1>=0){
    17             str1[i-1]=str1[i-1]-1;
    18             t=10+(str1[i]-48);
    19         }
    20         else if((str1[i-1]-48)==0&&i-1>=0){
    21             int y=i;
    22             while((str1[y-1]-48)==0&&y-1>=0){
    23             str1[y-1]=str1[y-1]+9;
    24             y--;
    25             }
    26         str1[y-1]=str1[y-1]-1;
    27         }
    28         t=10+(str1[i]-48);
    29             Inter_Sum[k]=t-(str2[p]-48);
    30         }    
    31         k++;
    32         p--;
    33     }
    34     t=0;
    35     for(j=k-1;j>=0;j--){
    36     
    37         if(!t){
    38             if(Inter_Sum[j]!=0)t++;
    39         }
    40         //printf("%d %d
    ",j,t);
    41         if(t)
    42         printf("%d",Inter_Sum[j]);
    43         
    44     }
    45     if(t==0) printf("%d",Inter_Sum[j]);
    46     
    47 }
    48 int main(){
    49     char str1[M];
    50     char str2[M];
    51     scanf("%s %s",str1,str2);
    52     str1[strlen(str1)]='';
    53     str2[strlen(str2)]='';
    54     fun(str1,str2);
    55     return 0;
    56 }
  • 相关阅读:
    区间覆盖(线段树)
    差分约束
    二维数组
    P1195 口袋的天空
    dp的刷表法和填表法
    P1284 三角形牧场
    数据库课程设计
    具体解释VB中连接access数据库的几种方法
    android之PackageManager简单介绍
    Oracle fga审计有这几个特性
  • 原文地址:https://www.cnblogs.com/yuming226/p/8146099.html
Copyright © 2011-2022 走看看