zoukankan      html  css  js  c++  java
  • 1017 A除以B (20分)

    本题要求计算 A/B,其中 A 是不超过 1000 位的正整数,B 是 1 位正整数。你需要输出商数 Q 和余数 R,使得 A=B×Q+R 成立。

    输入格式:

    输入在一行中依次给出 AB,中间以 1 空格分隔。

    输出格式:

    在一行中依次输出 QR,中间以 1 空格分隔。

    输入样例:

    123456789050987654321 7
    
          
        
    

    输出样例:

    17636684150141093474 3
    

    代码

    // 1017 A除以B.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
    //
    
    #include <iostream>
    #include <string>
    using namespace std;
    
    int main()
    {
    	string a;
    	int b;
    	cin >> a >> b;//a超出所有整形变量的表示范围,使用string存储,同时需要手动模拟除法运算
    	int tmp,c=0,d;
    	string q;//商
    	for (int i = 0; i < a.length(); i++) {
    		tmp = c*10+(a[i] - '0');
    		if (tmp < b) {
    			//借位
    			c = tmp;
    			q += to_string(0);
    		}
    		else {
    			d = tmp / b;
    			q += to_string(d);
    			c = tmp % b;
    		}
    	}
    	if (q[0] == '0') {
    		q = q.substr(1);
    	}
    	cout << q << " " << c;
    	return 0;
    }
    
    
  • 相关阅读:
    提高写作能力
    成长,潜力
    线性代数
    健康的作息时间
    2021-01-06TX技术经验总结.
    Redis的技术总结
    Rocket MQ 原理.
    MBA
    向上管理
    postman怎么打开console控制台,打印console.log
  • 原文地址:https://www.cnblogs.com/ericling/p/12334300.html
Copyright © 2011-2022 走看看