• 编程每日一练(多语言实现)基础篇:满足abcd=(ab+cd)^2的数 (增加Go语言实现)


    一、实例描述

    假设 abcd 是一个四位整数,将它分成两段,即 ab 和 cd,使之相加求和后再平方。求满足该关系的所有四位整数,运行结果如下图所示:
    在这里插入图片描述

    二、技术要点

    本实例采用穷举的方法对 1000 到 10000 以内的所有四位整数逐个分解成两部分再对其进行判断,看是否满足要求,如果满足则将该整数输出,否则进行下次循环。将一个四位数分解成两部分主要采用 /% 的方法,/ 求的该四位数的前两位,% 求的是该四位数的后两位。

    三、代码实现

    3.1 C 语言实现

    /*================================================================
    *   Copyright (C) 2023 AmoXiang All rights reserved.
    *   
    *   文件名称:04-满足abcd=(ab+cd)^2的数.c
    *   创 建 者:AmoXiang
    *   创建日期:2023年10月01日 19:43:25
    *   描    述:
    *
    ================================================================*/
    
    
    #include 
    int main(){
        int a=0,b=0;
        int i=1;
        for(i=1000;i<10000;i++){
            a = i / 100;
            b = i % 100;
            int num = (a + b) * (a + b);
            if(num == i){
                printf("%d\n", i);
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    程序运行结果如下图所示:
    在这里插入图片描述

    3.2 Python 语言实现

    # -*- coding: utf-8 -*-
    # @Time    : 2023/10/1 19:22
    # @Author  : AmoXiang
    # @File    : 04-满足abcd=(ab+cd)^2的数.py
    # @Software: PyCharm
    # @Blog    : https://blog.csdn.net/xw1680
    
    """
    假设abcd是一个四位整数,将它分成两段,即ab和cd,使之相加求和后再平方。求满足该关系的所有四位整数
    """
    for i in range(1000, 10000):
        # 前两位数用a表示
        a = i // 100  # 整除求出前2位数
        b = i % 100  # 取余求出后2位数
        if (a + b) ** 2 == i:
            print(i)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    程序运行结果如下图所示:
    在这里插入图片描述

    3.3 Java 语言实现

    /**
     * ClassName: Exercise4
     * Package: PACKAGE_NAME
     * Description:
     *
     * @Author AmoXiang
     * @Create 2023/10/1 19:38
     * @Version 1.0
     */
    public class Exercise4 {
        public static void main(String[] args) {
            int a = 0, b = 0;
            for (int i = 1000; i < 10000; i++) {
                a = i / 100; // 根据题目的要求 没必要分别求出整数各个位上的数字
                b = i % 100;
                if ((a + b) * (a + b) == i) {
                    System.out.println(i);
                }
            }
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21

    程序运行结果如下图所示:
    在这里插入图片描述

    3.4 JavaScript 语言实现

    let a = 0, b = 0;
    for (let i = 1000; i < 10000; i++) {
        a = parseInt(i / 100);
        b = i % 100;
        // let num = (a + b) * (a + b); 写法非常多
        let num = Math.pow((a + b), 2);
        if (num === i) {
            console.log(i)
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    程序运行结果如下图所示:
    在这里插入图片描述

    3.5 Go 语言实现

    package main
    
    import "fmt"
    
    func main() {
    	a := 0
    	b := 0
    	num := 0
    	for i := 1000; i < 10000; i++ {
    		a = i / 100
    		b = i % 100
    		num = (a + b) * (a + b)
    		if num == i {
    			fmt.Println(i)
    		}
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    程序运行结果如下图所示:
    在这里插入图片描述
    至此今天的学习就到此结束了,笔者在这里声明,笔者写文章只是为了学习交流,以及让更多学习编程的读者少走一些弯路,节省时间,并不用做其他用途,如有侵权,联系博主删除即可。感谢您阅读本篇博文,希望本文能成为您编程路上的领航者。祝您阅读愉快!


    在这里插入图片描述

        好书不厌读百回,熟读课思子自知。而我想要成为全场最靓的仔,就必须坚持通过学习来获取更多知识,用知识改变命运,用博客见证成长,用行动证明我在努力。
        如果我的博客对你有帮助、如果你喜欢我的博客内容,请 点赞评论收藏 一键三连哦!听说点赞的人运气不会太差,每一天都会元气满满呦!如果实在要白嫖的话,那祝你开心每一天,欢迎常来我博客看看。
     编码不易,大家的支持就是我坚持下去的动力。点赞后不要忘了 关注 我哦!

  • 相关阅读:
    Redis 缓存相关 - Reids 缓存淘汰机制和缓存异常问题处理
    php jquery ajax 无法传递POST值的问题
    Android webview加载网页实时调试
    高频功率放大器电路图原理图解大全
    Java 获取类中所有字段 转换为 json字符串 Java 类中字段转换为json字符串 javabean 字段 转换为 jsonStr
    Android 10.0 禁用插入耳机时弹出的保护听力对话框
    关于python的内存管理机制和python变量占用内存及时释放的问题
    宠物之家网站大学生网页制作教程 学生HTML静态宠物网页设计作业成品 DIV布局简单动物网页制作代码
    OSPF高级配置——NSSA区域与地址汇总
    [ICCV-23] Paper List - 3D Generation-related
  • 原文地址:https://blog.csdn.net/xw1680/article/details/133468725