竖式算术计算编程Swift && Objective-c && Java && Flutter

竖式算术计算编程Swift && Objective-c && Java && Flutter

*****闲暇之余弄个竖式算术计算纪念一下。出于好奇弄了Swift、Objective-c、Java、Flutter等几个语言的计算编程;这个算术主要阐释循环计算的方式,以及 如何寻找解题思路(规律),通过计算千分位,百分位,十分位,个位的方式来解决,当然方式不唯一。

题目:编程求解该竖式加法运算式子中每一个字所代表的值,取值范围>=[-9, 9];

在这里插入图片描述

解法一:使用Swift语言

    // 取值范围可无限扩大
    let array = [-9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

    for a in array {
        for b in array {
            for c in array {
                for d in array {
                    if (2021 == a + (a * 10 + b) + (100 * a + 10 * b + c) + (1000 * a + 100 * b + 10 * c + d)) {
                        print("a = \(a)", "b = \(b)", "c = \(c)", "d = \(d)")//详细对应打印
                        print(a, b, c, d)
                    }
                }
            }
        }
    }

解法二:使用Objective-c语言

// 取值范围[-9,9]
for (int a = 9; a >= -9; a--) {
    for (int b = 9; b >= -9; b--) {
        for (int c = 9; c >= -9; c--) {
            for (int d = 9; d >= -9; d--) {
                if (2021 == a + (a * 10 + b) + (100 * a + 10 * b + c) + (1000 * a + 100 * b + 10 * c + d)) {
                    NSLog(@"%d, %d, %d, %d", a, b, c, d);
                }
            }
        }
    }
}

解法三:使用Flutter_Dart语言

          // 取值范围可无限扩大
          var alex21 = [-9, -8, -7, -6, -5, -4, -3, -2, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
          for(var a in alex21) {
            for (var b in alex21) {
              for (var c in alex21) {
                for (var d in alex21) {
                  if (2021 == a + (a * 10 + b) + (100 * a + 10 * b + c) + (1000 * a + 100 * b + 10 * c + d)) {
                    print("$a, $b, $c, $d");
                  }
                }
              }
            }
          }

解法四:使用Java语言

   for (a in -9..9) {
        for (b in -9..9) {
            for (c in -9..9) {
                for (d in -9..9) {
                    if ((2021 == a + (a * 10 + b) + (100 * a + 10 * b + c) + (1000 * a + 100 * b + 10 * c + d))) {
                        print("$a, $b, $c, $d");
                    }
                }
            }
        }
    }

以上各种解法的答案就不在这一一列举,大家可以去验证。(突然想起,很久很久很久没有人给我点赞了= || =)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Alex.凌

本是青灯不归客,打赏靠大家~~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值