matlab - 编写一个函数文件,返回输入向量的正分量之和和负分量之和
问题描述
问题:编写一个函数文件,返回输入向量的正分量之和和负分量之和。
这个问题必须在 MATLAB 中完成,但我在 MATLAB 中是全新的?谁能给出想法如何做到这一点?
尝试:
V= input(Enter a vector)
function [Ps, Ns] = mysmallfunction(V)
Ps== sum(V(V>0));
Ns= sum(V(V<0));
end
我不知道它是否会起作用。
解决方案
你几乎拥有它。下面是一个脚本,它将指导您传递参数和调用函数。一个小问题是函数内==
分配的 double Ps
(只需使用一个=
,除非它用于条件语句)。要调用/测试函数,只需使用[Ps, Ns] = mysmallfunction(V);
函数定义上方的行(或者可以将函数定义放在单独的脚本中)。
V = input("Enter a vector: ");
%Function call%
[Ps, Ns] = mysmallfunction(V);
%Printing the results to the command window%
fprintf("The positive numbers sum up to %f\n",Ps);
fprintf("The negative numbers sum up to %f\n",Ns);
%*******************************************************************************************************%
%FUNCTION DEFINITION (this can alternatively go in a separate script named: mysmallfunction.m)%
%*******************************************************************************************************%
function [Ps, Ns] = mysmallfunction(V)
Ps = sum(V(V>0));
Ns = sum(V(V<0));
end
命令窗口(示例输入)
包括方括号很重要,[]
在这种情况下,在输入向量时。
输入向量:[1 2 3 -2 -5]
推荐阅读
- python - 从网站获取数据并将一些图像和文本都存储在一个变量中?
- java - 有没有办法在 Java 中自动分配所有属性?
- c# - 如何使用接口实例化基类对象?
- python - 如何给我为数人而画的矩形赋予数字?
- c# - “内部连接致命错误。错误状态:18” C#-SQL Ip 连接错误。整个错误信息
- google-bigquery - 如何从 BigQuery 表中时间戳类型的列中显示时间?
- javascript - 如何正确处理动态添加元素的事件?
- mysql - 来自 node.js websocket 服务器的间歇性 500 错误
- spring - 如何使用 SpringBootRequestHandler 将 JSON 解析为 AWS Lambda 请求负载
- angular - 导航后的角显示小吃栏