我有一個快速提問。 我嘗試創建一個名爲'passavg_structure'的函數,該函數將空域結構數組(將在下面顯示)作爲輸入參數,並輸出前往指定城市的平均乘客量。顯示結構數組的某些元素
空域結構陣列看起來像這樣:
>> airspace(1)
ans =
Flight_Number: 'BF 123'
Speed: 515.2000
Heading: 90
Passengers: 154
Crew: {'Behnam' 'Jane' 'Jill' 'Ning'}
Destination: 'Montreal'
Feet: 22000
Latitude_Longitude: [50 100]
>> airspace(2)
ans =
Flight_Number: 'VSO 456'
Speed: 99.6000
Heading: 270
Passengers: 270
Crew: {'Frances' 'Jake' 'Jaiwei'}
Destination: 'Los Angeles'
Feet: 21000
Latitude_Longitude: [50 80]
>> airspace(3)
ans =
Flight_Number: 'BF 8421'
Speed: 1.5057e+03
Heading: 170
Passengers: 0
Crew: {'Giuseppe' 'Susan'}
Destination: 'Calgary'
Feet: 33000
Latitude_Longitude: [60 80]
>> airspace(4)
ans =
Flight_Number: 'AB 896'
Speed: 500
Heading: 90
Passengers: 132
Crew: {'Hao' 'Ashraf' 'Sue'}
Destination: 'Montreal'
Feet: 33000
Latitude_Longitude: [50 100]
所以我試圖做的是通過空域的名稱進行迭代,以及它是否在函數的輸入參數給出的名字,那麼它會找到名稱在結構數組中出現的位置並添加乘客號碼,然後除以名稱的使用次數來獲得平均值。我不完全的代碼如下:
function output = passavg_structure(airspace,name)
output = 0;
[a, b, c, d] = airspace(:).Destination;
for k = {a,b,c,d}
if strcmp(k,name) == 1
output = airspace().Passengers;
else
output = 0;
end
output = output/;
end
林失去了如何找到loaction爲在一致的姓名結構數組中出現。我覺得這是我的代碼問題,因爲我不確定如何去做。
例如,讓我們說,我們所做的:
passavg_structure(airspace,'Montreal')
輸出是= 143,因爲它增加了從那裏 蒙特利爾發生乘客和除以2呢,因爲蒙特利爾發生兩次。
任何幫助,將不勝感激!
謝謝大家。
謝謝大家的幫助! – RN95 2015-04-02 21:22:46