如何将此C++代码写入apple dylan

How to write this C++ code into apple dylan

本文关键字:apple dylan 代码 C++      更新时间:2023-10-16

我是计算机编程的新手。我需要帮助完成这项任务。我需要将这个简单的C++源代码转换为apple dylan代码。这是最初的数学陈述:

Task: Input an integer number n and output the sum: 1+22+32+...+n2. Use input validation for n to be positive.

我用C++编写了这段代码:

#include <iostream>
using namespace std;
int main()
{
    int n;
    cin >> n;
    if (n < 0) return 1;
    int sum = 0;
    int i = 0;
    while (i <= n) sum += i*i;
    cout << sum;
    return 0;
}

有人能帮我把这个代码写进apple dylan吗?

致以最良好的祝愿,Paul

这里有一个递归解决方案:

define method sumSquaresFromOne(n :: <integer>)
  if (n = 1)
    1
  else
    n *n + sumSquaresFromOne(n - 1)
  end
end method;

(显然,它可能受益于对n<1的一些检查。)

要运行该方法,您将发出命令:

format-out("%d", sumSquaresFromOne(5))

其输出为"55"(1+4+9+16+25)。

你可以创建一个像这样的主要方法:

define method main(appname, #rest arguments)
  format-out("Input an integer number n:")
  let n = read-line(*standard-input*)
  format-out("Sum of squares from t to %d is %dn", n, sumSquaresFromOne(n))
  exit(exit-code: 0);
end method;