码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 1022 D进制的A+B


    1022 D进制的A+B

    输入两个非负 10 进制整数 A 和 B (≤230−1),输出 A+B 的 D (1

    输入格式:

    输入在一行中依次给出 3 个整数 A、B 和 D。

    输出格式:

    输出 A+B 的 D 进制数。

    输入样例:

    1. 123 456 8

    输出样例:

    1103

    当然我自己写的代码逻辑是正确的,但是把自然语言逻辑变成真正的代码,就会出现很多问题。、

     先放自己的写的

    1. #include
    2. #include
    3. using namespace std;
    4. int main() {
    5. int A,B,D;
    6. cin >> A >> B >> D;
    7. int C=A+B;
    8. std::vector<int>p;
    9. while(C>D){
    10. int t=C%D;
    11. int i=0;
    12. p[i] = t;
    13. i++;
    14. C=C/D;
    15. }
    16. int i=p.size();
    17. p[i+1]=C;
    18. int si=(i+1);
    19. for(int j=0;j<(si/2);j++){
    20. p[j]=p[si-1];
    21. si=si-1;
    22. cout<
    23. }
    24. return 0;
    25. }

    1.std::vectorp; 这行代码创建一个空的向量 p,但我在之后的循环中尝试访问它的元素,这会导未定义行为。应该在创建 p 向量时指定其大小,或者使用 push_back 函数来添加元素。

    2.int i=0; 应该在循环之外进行初始化,否则在每次循环迭代时都会重置为0。

    3.p[i] = t; 这行代码试图访问向量 p 中的一个位置,但由于 p 的大小尚未设置,会导致越界错误。应该使用 push_back 来添加元素到向量。

    4.p[i+1]=C; 这行代码也会导致越界错误,因为我在前面没有添加足够的元素到向量 p 中。

    5.在循环中,我试图颠倒 p 向量中的元素,但这部分代码也存在问题,因为它没有正确地颠倒元素。

    6.没有考虑A+B可能是为0的特殊情况


    放上修改后的正确代码:

    1. #include
    2. #include
    3. using namespace std;
    4. int main() {
    5. int A, B, D;
    6. cin >> A >> B >> D;
    7. int C = A + B;
    8. vector<int> p;//因为不知道初始数组长度,所以设置动态数组
    9. while (C > 0) { //计算进制循环结束的标志是C>0而不是C>D
    10. int t = C % D;
    11. p.push_back(t);//为动态数组键入数值
    12. C = C / D;
    13. }
    14. if (p.empty()) { //处理特殊情况,即当A + B等于0时
    15. p.push_back(0);
    16. }
    17. int size = p.size();
    18. for (int i = size - 1; i >= 0; i--) { //逆序输出直接从p[i]输出而不是从p[0]输出即可
    19. cout << p[i];
    20. }
    21. return 0;
    22. }

  • 相关阅读:
    elasticsearch实现聚合后两个字段相除相加相减相乘运算
    基于微信小程序的音乐播放器设计与实现(源码+lw+部署文档+讲解等)
    net基于asp.net的二手商品的交易系统-二手网站-计算机毕业设计
    2023年中职组“网络安全”赛项南昌市竞赛任务书
    向NS-3添加新模块_ns3.37添加新模块_ns3.37不同版本模块移植
    SpringBoot自带模板引擎Thymeleaf使用详解②
    编写基于maven的IDEA插件,实现根据现有代码生成流程图的 pom(2)
    数据结构题型18-哈夫曼树和哈夫曼编码
    文件系统.
    Opengl实例7:glm(0.9.8.5)库 +矩阵旋转+课后作业
  • 原文地址:https://blog.csdn.net/m0_61635175/article/details/133906199
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号