如何返回一个删除不满意数字的数组?

时间:2015-06-17 04:41:27

标签: matlab function

我是使用MATLAB的新手,我仍在努力了解如何制作这个特定的功能。我理解在纸上执行此操作的公式,但我无法将其转换为所需的MATLAB语法。

如何编写一个函数,使得它需要一个数字数组,并返回那个删除了不快乐数字的数组,即只剩下幸福数字?

编辑 - 证明和输入输出

输入:

array = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 
41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]

输出:

array = [7, 13, 19, 23, 31, 79, 97]

一个快乐的数字是这样一个数字的平方数字总和最终等于1,或者无限期地继续这个过程as seen here

2 个答案:

答案 0 :(得分:1)

如果您有不愉快的数字索引。你可以写下来删除它们:

array(unhappy_index) = [];

如果您没有不满意的索引,可以使用followng命令找到它们:

find()

答案 1 :(得分:1)

我已经写了一个小功能(可能会进一步改进)来测试"幸福"一个数字。

当前版本仅适用于标量和一个暗淡。阵列。

输入:要测试的标量或数组

输出:

1)索引:happy(1)unhappy(0)

2)输入集中的幸福数字列表

3)输入集中的不满号码列表

使用问题中指定的输入运行函数,函数返回:

UNION ALL

希望这有帮助。