在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

條件語(yǔ)句/循環(huán)語(yǔ)句simulink的實(shí)現(xiàn)方法(二)

冬至子 ? 來(lái)源:林南橘 ? 作者:林南橘 ? 2023-07-21 16:51 ? 次閱讀

For 循環(huán)

for 循環(huán)是 Python 中用于遍歷序列(如列表、元組、字符串等)的迭代結(jié)構(gòu)。for 循環(huán)的本質(zhì)是按照序列中的元素順序執(zhí)行代碼塊,并在每次迭代中獲取序列的下一個(gè)元素。for 循環(huán)的語(yǔ)法結(jié)構(gòu)如下:

for variable in sequence:
    # 代碼塊

下面是一個(gè)使用 for 循環(huán)的簡(jiǎn)單示例,以及相應(yīng)的代碼注釋:

# 創(chuàng)建一個(gè)數(shù)字列表
numbers = [1, 2, 3, 4, 5]

# 使用 for 循環(huán)遍歷列表中的每個(gè)元素
for num in numbers:
    # 在每次迭代中,將當(dāng)前元素乘以 2 并打印
    double_num = num * 2
    print(double_num)

# 輸出結(jié)果:
# 2
# 4
# 6
# 8
# 10

此外,你還可以使用 range() 函數(shù)與 for 循環(huán)配合使用,實(shí)現(xiàn)特定范圍內(nèi)的迭代。下面是一個(gè)例子:

# 使用 range() 函數(shù)生成一個(gè)包含 0 到 4(不包括 5)的整數(shù)序列
# 并使用 for 循環(huán)遍歷這個(gè)序列
for i in range(5):
    # 在每次迭代中,將當(dāng)前索引值乘以 3 并打印
    triple_i = i * 3
    print(triple_i)

# 輸出結(jié)果:
# 0
# 3
# 6
# 9
# 12

通過(guò)這些示例,你可以看到 for 循環(huán)如何在 Python 代碼中實(shí)現(xiàn)對(duì)序列的遍歷,以及如何利用循環(huán)執(zhí)行特定任務(wù)。

當(dāng)然Python 中的 for 循環(huán)還可以與其他高級(jí)功能結(jié)合使用,實(shí)現(xiàn)更強(qiáng)大的功能。以下是一些高級(jí)用法的示例:

列表推導(dǎo)式(List Comprehensions)

列表推導(dǎo)式是一種簡(jiǎn)潔的創(chuàng)建列表的方法,它使用 for 循環(huán)實(shí)現(xiàn)。例如,我們可以使用列表推導(dǎo)式創(chuàng)建一個(gè)包含平方數(shù)的列表:

# 使用列表推導(dǎo)式創(chuàng)建一個(gè)包含 1 到 10 的平方數(shù)的列表
squares = [x**2 for x in range(1, 11)]
print(squares)
# 輸出結(jié)果:[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

帶有條件的列表推導(dǎo)式

列表推導(dǎo)式可以與條件語(yǔ)句結(jié)合,根據(jù)特定條件過(guò)濾或更改結(jié)果。例如,我們可以創(chuàng)建一個(gè)僅包含偶數(shù)平方數(shù)的列表:

# 使用帶有條件的列表推導(dǎo)式創(chuàng)建一個(gè)僅包含 1 到 10 的偶數(shù)平方數(shù)的列表
even_squares = [x**2 for x in range(1, 11) if x % 2 == 0]
print(even_squares)
# 輸出結(jié)果:[4, 16, 36, 64, 100]

使用 enumerate() 函數(shù)

enumerate() 函數(shù)允許你在 for 循環(huán)中同時(shí)獲取元素及其索引。例如:

# 創(chuàng)建一個(gè)字符串列表
fruits = ["apple", "banana", "cherry"]

# 使用 enumerate() 函數(shù)遍歷列表,并同時(shí)獲取元素及其索引
for index, fruit in enumerate(fruits):
    print(f"{index}: {fruit}")

# 輸出結(jié)果:
# 0: apple
# 1: banana
# 2: cherry

使用 zip() 函數(shù)

zip() 函數(shù)允許你在 for 循環(huán)中同時(shí)遍歷多個(gè)序列。例如:

# 創(chuàng)建兩個(gè)數(shù)字列表
list1 = [1, 2, 3]
list2 = [4, 5, 6]

# 使用 zip() 函數(shù)同時(shí)遍歷兩個(gè)列表,并將對(duì)應(yīng)的元素相加
for a, b in zip(list1, list2):
    print(a + b)

# 輸出結(jié)果:
# 5
# 7
# 9

這些高級(jí)用法展示了 for 循環(huán)在 Python 中的靈活性和實(shí)用性。你可以將這些技巧應(yīng)用到更復(fù)雜的問(wèn)題中,實(shí)現(xiàn)高效且簡(jiǎn)潔的代碼。

舉例說(shuō)明

如今許多純電車型都已經(jīng)配備了DMS或者OMS視覺(jué)識(shí)別系統(tǒng),那么就可以考慮將家庭用車成員人臉及身份信息錄入系統(tǒng)數(shù)據(jù)庫(kù)(字典),并通過(guò)大屏進(jìn)行不同環(huán)境條件下需求的熱舒適系統(tǒng)組合設(shè)置,與對(duì)應(yīng)的身份信息形成關(guān)聯(lián),這樣,當(dāng)家庭成員上車后,即可通過(guò)視覺(jué)識(shí)別系統(tǒng)自動(dòng)識(shí)別人員身份,在數(shù)據(jù)庫(kù)中已存儲(chǔ)的多個(gè)信息中進(jìn)行查詢,當(dāng)識(shí)別的人臉信息與某個(gè)已存儲(chǔ)信息一致時(shí),則進(jìn)入該存儲(chǔ)信息下的熱舒適模式庫(kù)(字典),通過(guò)環(huán)境信息傳感器采集的環(huán)境條件,調(diào)取熱舒適模式庫(kù)中與之對(duì)應(yīng)的唯一匹配的熱舒適模式,更近一步的話,可以加入自主學(xué)習(xí)功能,學(xué)習(xí)用戶習(xí)慣,修改對(duì)應(yīng)推送權(quán)重,不斷的優(yōu)化熱舒適模式庫(kù)中的定義信息。

接下來(lái),我們會(huì)用到編程語(yǔ)言中的數(shù)據(jù)結(jié)構(gòu): 字典 ,一種采用鍵值對(duì)的結(jié)構(gòu)類型,形如:{key1:value1,key2:value2,…}

在編程中,字典是一種非常有用的數(shù)據(jù)結(jié)構(gòu),它可以存儲(chǔ)鍵值對(duì),并且支持快速查找和修改。在Python中,我們可以使用大括號(hào){}來(lái)創(chuàng)建一個(gè)字典對(duì)象。

以下是一些常見(jiàn)的字典操作:

創(chuàng)建字典

# 創(chuàng)建空字典
my_dict = {}

# 創(chuàng)建帶有初始鍵值對(duì)的字典
my_dict = {'apple': 2, 'banana': 3, 'orange': 4}

訪問(wèn)字典元素

# 使用鍵訪問(wèn)值
print(my_dict['apple']) # 輸出 2

# 使用get()方法訪問(wèn)值(如果鍵不存在,則返回None或指定的默認(rèn)值)
print(my_dict.get('pear')) # 輸出 None
print(my_dict.get('pear', 0)) # 輸出 0

修改字典元素

# 直接賦值修改值
my_dict['apple'] = 5

# 使用update()方法批量修改值
my_dict.update({'banana': 6, 'pear': 7})

遍歷字典

# 遍歷所有鍵
for key in my_dict:
    print(key)

# 遍歷所有值
for value in my_dict.values():
    print(value)

# 遍歷所有鍵值對(duì)
for key, value in my_dict.items():
    print(key, value)

刪除字典元素

# 根據(jù)鍵刪除鍵值對(duì)
del my_dict['apple']

# 清空字典
my_dict.clear()

需要注意的是,字典中的鍵必須是不可變類型(如字符串、數(shù)字或元組),而值可以是任意類型。此外,字典是無(wú)序的,即它們的元素沒(méi)有固定的順序。

在Python中,我們可以使用字典來(lái)嵌套其他的數(shù)據(jù)結(jié)構(gòu),包括另一個(gè)字典。這種方式通常被稱為“字典嵌套”。

以下是一個(gè)示例代碼,展示了如何在字典中嵌套另一個(gè)字典:

# 定義一個(gè)嵌套字典
my_dict = {
    'apple': {'price': 2, 'color': 'red'},
    'banana': {'price': 3, 'color': 'yellow'},
    'orange': {'price': 4, 'color': 'orange'}
}

# 訪問(wèn)嵌套字典中的元素
print(my_dict['apple']['price']) # 輸出 2
print(my_dict['banana']['color']) # 輸出 yellow

# 修改嵌套字典中的元素
my_dict['orange']['price'] = 5
print(my_dict['orange']['price']) # 輸出 5

需要注意的是,在訪問(wèn)或修改嵌套字典中的元素時(shí),我們需要使用多個(gè)鍵來(lái)指定路徑。例如,my_dict['apple']['price']表示訪問(wèn)'apple'鍵對(duì)應(yīng)的值(即另一個(gè)字典),然后再訪問(wèn)該字典中'price'鍵對(duì)應(yīng)的值。

此外,我們還可以通過(guò)循環(huán)遍歷嵌套字典中的所有元素,例如:

for key1 in my_dict:
    for key2 in my_dict[key1]:
        print(key1, key2, my_dict[key1][key2])

這段代碼會(huì)依次輸出每個(gè)鍵值對(duì)的鍵和值,其中key1表示外層字典中的鍵,key2表示內(nèi)層字典中的鍵。

中間穿插了這么多的關(guān)于字典數(shù)據(jù)結(jié)構(gòu)的信息,主要還是因?yàn)樯厦娴呐e例說(shuō)明用python實(shí)現(xiàn)需要用到這方面的知識(shí),閑話休提,我們?cè)俅位氐秸}

我們通過(guò)嵌套字典的數(shù)據(jù)結(jié)構(gòu)存儲(chǔ)身份ID(key1):Identity_ID、環(huán)境條件(key2):Environmental_conditions、熱舒適模式(value):Comfort_mode

Intelligent_Comfort_Mode={key1:{key2:value}}={Identity_ID:{Environmental_conditions:Comfort_mode}}

假設(shè)家庭成員有l(wèi)in_baba、lin_meimei、wang_mama,其中l(wèi)in_baba自定義了四個(gè)依據(jù)環(huán)境條件自動(dòng)推送的熱舒適模式

那么最終的Intelligent_Comfort_Mode={lin_baba:{Environmental_conditions1:Comfort_mode1,Environmental_conditions2:Comfort_mode2,Environmental_conditions3:Comfort_mode3,Environmental_conditions4:Comfort_mode4},wang_mama:{…},lin_meimei:{…}}

Intelligent_Comfort_Mode數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)建立好以后,就可以通過(guò)人臉圖像掃描信息、環(huán)境條件采集信息遍歷字典查詢與之對(duì)應(yīng)的熱舒適模式Comfort_mode了

Python代碼實(shí)現(xiàn)

def add_member(family_members, identity_id):
    # 如果家庭成員字典中不存在該成員,就添加一個(gè)新的成員,并初始化其環(huán)境條件字典
    if identity_id not in family_members:
        family_members[identity_id] = {}

def add_environment_condition(family_members, identity_id, environmental_condition, comfort_mode):
    # 如果家庭成員存在,向該成員的環(huán)境條件字典中添加一條新的環(huán)境條件和對(duì)應(yīng)的熱舒適模式
    if identity_id in family_members:
        family_members[identity_id][environmental_condition] = comfort_mode

def update_comfort_mode(family_members, identity_id, environmental_condition, new_comfort_mode):
    # 如果家庭成員和對(duì)應(yīng)的環(huán)境條件存在,更新該環(huán)境條件的熱舒適模式
    if identity_id in family_members:
        if environmental_condition in family_members[identity_id]:
            family_members[identity_id][environmental_condition] = new_comfort_mode

def get_comfort_mode(family_members, identity_id, environmental_condition):
    # 如果家庭成員和對(duì)應(yīng)的環(huán)境條件存在,返回該環(huán)境條件的熱舒適模式
    if identity_id in family_members:
        if environmental_condition in family_members[identity_id]:
            return family_members[identity_id][environmental_condition]
    return None

def learn_from_user_behavior(family_members, identity_id, environmental_condition, comfort_mode):
    # 根據(jù)用戶行為、時(shí)間等權(quán)重以自定義方式更新熱舒適模式信息
    pass

# 初始化家庭成員字典
family_members = {}

# 添加家庭成員
add_member(family_members, "lin_baba")
add_member(family_members, "lin_meimei")
add_member(family_members, "wang_mama")

# 添加環(huán)境條件和對(duì)應(yīng)的熱舒適模式
add_environment_condition(family_members, "lin_baba", "Environmental_conditions1", "Comfort_mode1")
add_environment_condition(family_members, "lin_baba", "Environmental_conditions2", "Comfort_mode2")
add_environment_condition(family_members, "lin_baba", "Environmental_conditions3", "Comfort_mode3")
add_environment_condition(family_members, "lin_baba", "Environmental_conditions4", "Comfort_mode4")

# 根據(jù)人臉識(shí)別結(jié)果和環(huán)境條件獲取對(duì)應(yīng)的熱舒適模式
identity_id = "lin_baba"
environmental_condition = "Environmental_conditions1"
comfort_mode = get_comfort_mode(family_members, identity_id, environmental_condition)
print(f"{identity_id} in {environmental_condition}: {comfort_mode}")

# 更新熱舒適模式
new_comfort_mode = "New_Comfort_mode1"
update_comfort_mode(family_members, identity_id, environmental_condition, new_comfort_mode)
comfort_mode = get_comfort_mode(family_members, identity_id, environmental_condition)
print(f"{identity_id} in {environmental_condition}: {comfort_mode}")

# 學(xué)習(xí)用戶行為
learn_from_user_behavior(family_members, identity_id, environmental_condition, comfort_mode)

# 打印家庭成員的所有環(huán)境條件和熱舒適模式
def print_family_members_info(family_members):
    for identity_id, environmental_conditions in family_members.items():
        print(f"{identity_id}:")
        for condition, comfort_mode in environmental_conditions.items():
            print(f"  {condition}: {comfort_mode}")
        print()

matlab function代碼實(shí)現(xiàn)

% 添加家庭成員
function family_members = add_member(family_members, identity_id)
    if isKey(family_members, identity_id)
        family_members(identity_id) = containers.Map();
    end
end

% 添加環(huán)境條件和對(duì)應(yīng)的熱舒適模式
function family_members = add_environment_condition(family_members, identity_id, environmental_condition, comfort_mode)
    if isKey(family_members, identity_id)
        family_members(identity_id)(environmental_condition) = comfort_mode;
    end
end

% 更新熱舒適模式
function family_members = update_comfort_mode(family_members, identity_id, environmental_condition, new_comfort_mode)
    if isKey(family_members, identity_id) && isKey(family_members(identity_id), environmental_condition)
        family_members(identity_id)(environmental_condition) = new_comfort_mode;
    end
end

% 獲取熱舒適模式
function comfort_mode = get_comfort_mode(family_members, identity_id, environmental_condition)
    comfort_mode = [];
    if isKey(family_members, identity_id) && isKey(family_members(identity_id), environmental_condition)
        comfort_mode = family_members(identity_id)(environmental_condition);
    end
end

% 學(xué)習(xí)用戶行為
function family_members = learn_from_user_behavior(family_members, identity_id, environmental_condition, comfort_mode)
    % 根據(jù)用戶行為、時(shí)間等權(quán)重以自定義方式更新熱舒適模式信息
end

% 初始化家庭成員字典
family_members = containers.Map();

% 添加家庭成員
family_members = add_member(family_members, 'lin_baba');
family_members = add_member(family_members, 'lin_meimei');
family_members = add_member(family_members, 'wang_mama');

% 添加環(huán)境條件和對(duì)應(yīng)的熱舒適模式
family_members = add_environment_condition(family_members, 'lin_baba', 'Environmental_conditions1', 'Comfort_mode1');
family_members = add_environment_condition(family_members, 'lin_baba', 'Environmental_conditions2', 'Comfort_mode2');
family_members = add_environment_condition(family_members, 'lin_baba', 'Environmental_conditions3', 'Comfort_mode3');
family_members = add_environment_condition(family_members, 'lin_baba', 'Environmental_conditions4', 'Comfort_mode4');

% 根據(jù)人臉識(shí)別結(jié)果和環(huán)境條件獲取對(duì)應(yīng)的熱舒適模式
identity_id = 'lin_baba';
environmental_condition = 'Environmental_conditions1';
comfort_mode = get_comfort_mode(family_members, identity_id, environmental_condition);
fprintf('%s in %s: %sn', identity_id, environmental_condition, comfort_mode);

% 更新熱舒適模式
new_comfort_mode = 'New_Comfort_mode1';
family_members = update_comfort_mode(family_members, identity_id, environmental_condition, new_comfort_mode);
comfort_mode = get_comfort_mode(family_members, identity_id, environmental_condition);
fprintf('%s in %s: %sn', identity_id, environmental_condition, comfort_mode);

% 學(xué)習(xí)用戶行為
family_members = learn_from_user_behavior(family_members, identity_id, environmental_condition, comfort_mode)

由于上面舉例實(shí)現(xiàn)起來(lái)有點(diǎn)復(fù)雜,不利于理解,我們簡(jiǎn)化以下控制需求,只保留一層字典{key,value}={identity_id,comfort_mode}

重新生成matlab function代碼

function y = get_comfort_mode(identity_id, comfort_mode)
% identity_id: 人員信息
% comfort_mode: 舒適模式

% 初始化輸出值為NaN
y = NaN;

% 遍歷字典中的所有鍵值對(duì)
keys = fieldnames(comfort_mode);
for i = 1:length(keys)
    key = keys{i};
    if strcmp(key, identity_id) % 如果找到了指定的人員
        y = comfort_mode.(key); % 輸出該人員對(duì)應(yīng)的舒適模式
        break;
    end
end

在上述代碼中,identity_id表示人員信息,comfort_mode表示舒適模式。首先,我們將輸出值初始化為NaN,以便在未找到指定鍵時(shí)返回一個(gè)無(wú)效值。然后,我們使用fieldnames()函數(shù)獲取字典中的所有鍵,并通過(guò)循環(huán)逐個(gè)檢查每個(gè)鍵是否與指定鍵匹配。如果找到了指定鍵,則將輸出值設(shè)置為該鍵對(duì)應(yīng)的值,并跳出循環(huán)。

考慮到本塊目的是在simulink中實(shí)現(xiàn)For循環(huán),我們選用一個(gè)最簡(jiǎn)單的例子,x遍歷(1:10),y1=power(x, 2)+y1

matlab function代碼實(shí)現(xiàn)

function y1=fac()
y1=0;

for x=1:10
    y1=power(x, 2)+y1;
end

simulink實(shí)現(xiàn)

圖片

圖片

圖片

For Iterator 模塊就充當(dāng)了 for(i = 0,i<10,i++)的角色,并把i 輸出出來(lái)。

在很多帶索引的模塊里,都會(huì)有索引模式的選項(xiàng),模型里的索引語(yǔ)法是從0開(kāi)始還是從1開(kāi)始。從建模規(guī)范上來(lái)說(shuō),不管Zero-based 還是 One-based,全篇統(tǒng)一就行,防止出錯(cuò)。但是在 MATLAB Function 里,似乎是只能從1開(kāi)始的。

圖片

While循環(huán)

While循環(huán)是一種常見(jiàn)的程序控制結(jié)構(gòu),它可以在滿足特定條件時(shí)重復(fù)執(zhí)行一段代碼塊。其本質(zhì)是一個(gè)條件語(yǔ)句,只有當(dāng)指定的條件為真時(shí)才會(huì)執(zhí)行循環(huán)體中的代碼。

While循環(huán)通常用于需要反復(fù)執(zhí)行某個(gè)操作直到達(dá)成特定條件的情況下。例如,在計(jì)算機(jī)編程中,我們可能需要對(duì)一組數(shù)據(jù)進(jìn)行處理,直到所有數(shù)據(jù)都被處理完畢為止。這時(shí)候就可以使用While循環(huán)來(lái)實(shí)現(xiàn)。

While循環(huán)的基本語(yǔ)法如下:

while (condition)
{
    // 循環(huán)體
}

其中,condition是一個(gè)布爾表達(dá)式,如果該表達(dá)式的值為true,則繼續(xù)執(zhí)行循環(huán)體中的代碼;否則跳出循環(huán)。

在每次迭代中,程序首先檢查condition是否為true。如果是,則執(zhí)行循環(huán)體中的代碼,并再次檢查condition的值。如果仍然為true,則繼續(xù)執(zhí)行循環(huán)體中的代碼,以此類推。如果condition的值變?yōu)閒alse,則跳出循環(huán),繼續(xù)執(zhí)行后面的代碼。

我們接著用上面的例子:x遍歷(1:10),y1=power(x, 2)+y1

Python代碼實(shí)現(xiàn)

# 計(jì)算1到10之間所有整數(shù)平方和
y1 = 0
x = 1

while x <= 10:
    y1 += power(x,2)
    x += 1

print("1到10之間所有整數(shù)平方和為:", y1)

matlab function實(shí)現(xiàn)

function y1 = fcn(x)
%#codegen

y1 = 0;
x = 1;

while i <= 10
    y1 = power(x,2)+y1;
    x = x + 1;
end

simulink實(shí)現(xiàn)

圖片

圖片

圖片

  • Maximum number of iterations是指最大迭代次數(shù),這里設(shè)為-1表示沒(méi)有最大迭代次數(shù),while循環(huán)的中止條件由外部決定而不由迭代次數(shù)決定
  • While loop type是指循環(huán)類型,這里選擇while循環(huán)。其他情況下也可以選擇
  • do-while States when starting選為reset,表示每一個(gè)時(shí)間步都會(huì)重置
  • Show iteration number port表示迭代次數(shù),勾選上,后面建模會(huì)用到這個(gè)迭代次數(shù)

stateflow同F(xiàn)or循環(huán)一致,不再贅述

Do-while循環(huán)

while循環(huán)和do-while循環(huán)是兩種常見(jiàn)的循環(huán)結(jié)構(gòu),它們的主要區(qū)別在于循環(huán)條件的判斷時(shí)機(jī)不同。

while循環(huán)先判斷循環(huán)條件是否滿足,如果滿足則執(zhí)行循環(huán)體中的語(yǔ)句,然后再次判斷循環(huán)條件是否滿足。如果循環(huán)條件仍然滿足,則繼續(xù)執(zhí)行循環(huán)體中的語(yǔ)句,直到循環(huán)條件不滿足為止。因此,在使用while循環(huán)時(shí),如果循環(huán)條件一開(kāi)始就不滿足,那么循環(huán)體中的語(yǔ)句將不會(huì)被執(zhí)行。

例如,下面的代碼演示了一個(gè)簡(jiǎn)單的while循環(huán):

i = 0

while i < 5:
    print(i)
    i += 1

這個(gè)循環(huán)將打印出從0到4的整數(shù),因?yàn)楫?dāng)i=5時(shí),循環(huán)條件i<5不再滿足,循環(huán)結(jié)束。

而do-while循環(huán)則先執(zhí)行一次循環(huán)體中的語(yǔ)句,然后再判斷循環(huán)條件是否滿足。如果循環(huán)條件滿足,則繼續(xù)執(zhí)行循環(huán)體中的語(yǔ)句,否則跳出循環(huán)。因此,在使用do-while循環(huán)時(shí),無(wú)論循環(huán)條件是否滿足,循環(huán)體中的語(yǔ)句至少會(huì)被執(zhí)行一次。

例如,下面的代碼演示了一個(gè)簡(jiǎn)單的do-while循環(huán):

i = 0

do:
    print(i)
    i += 1
while i < 5

這個(gè)循環(huán)將打印出從0到4的整數(shù),因?yàn)樵诘谝淮螆?zhí)行循環(huán)體時(shí),i=0,循環(huán)條件i<5滿足,所以循環(huán)體中的語(yǔ)句被執(zhí)行。然后,在接下來(lái)的四次循環(huán)中,循環(huán)條件仍然滿足,因此循環(huán)體中的語(yǔ)句繼續(xù)被執(zhí)行,直到i=5時(shí),循環(huán)條件不再滿足,循環(huán)結(jié)束。

總之,while循環(huán)和do-while循環(huán)都是常見(jiàn)的循環(huán)結(jié)構(gòu),它們的區(qū)別在于循環(huán)條件的判斷時(shí)機(jī)不同。在使用時(shí)需要根據(jù)具體情況選擇合適的循環(huán)結(jié)構(gòu)。

我們接著用上面的例子:x遍歷(1:10),y1=power(x, 2)+y1

Python代碼實(shí)現(xiàn)

# 計(jì)算1到10之間所有整數(shù)平方和
y1 = 0
x = 1

do:
    y1 += power(x,2)
    x += 1
while x <= 10:

print("1到10之間所有整數(shù)平方和為:", y1)

simulink實(shí)現(xiàn)

與while循環(huán)差別很小,一是將while interator模塊參數(shù)中的循環(huán)類型設(shè)置為do-while,二是取消了初始IC端口外部饋入信號(hào)

圖片

stateflow實(shí)現(xiàn)

通過(guò)改變流程圖的方向,實(shí)現(xiàn)先執(zhí)行,后判斷。注意****紅圈的優(yōu)先級(jí)一定是1

圖片

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4808

    瀏覽量

    85046
  • DMS
    DMS
    +關(guān)注

    關(guān)注

    0

    文章

    87

    瀏覽量

    16311
  • 機(jī)器視覺(jué)識(shí)別

    關(guān)注

    0

    文章

    9

    瀏覽量

    5362
  • simulink仿真
    +關(guān)注

    關(guān)注

    0

    文章

    75

    瀏覽量

    8613
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    開(kāi)關(guān)語(yǔ)句循環(huán)語(yǔ)句

    switch/case開(kāi)關(guān)語(yǔ)句是一種多分支選擇語(yǔ)句,是用來(lái)實(shí)現(xiàn)多方向條件分支的語(yǔ)句。雖然從理論上講采用
    發(fā)表于 07-15 14:26 ?18次下載

    C語(yǔ)言入門教程-if語(yǔ)句和while循環(huán)

    if語(yǔ)句和while循環(huán) C語(yǔ)言中,if語(yǔ)句和while循環(huán)都會(huì)用到布爾表達(dá)式。下面是一個(gè)使用if語(yǔ)句的簡(jiǎn)單例子: #include
    發(fā)表于 07-29 10:48 ?8577次閱讀

    Java的循環(huán)語(yǔ)句的詳細(xì)資料說(shuō)明

    本文檔的主要內(nèi)容詳細(xì)介紹的是Java的循環(huán)語(yǔ)句的詳細(xì)資料說(shuō)明包括了:1、while循環(huán)語(yǔ)句,2、do…while循環(huán)
    發(fā)表于 03-22 08:00 ?0次下載
    Java的<b class='flag-5'>循環(huán)</b><b class='flag-5'>語(yǔ)句</b>的詳細(xì)資料說(shuō)明

    C語(yǔ)言的for循環(huán)語(yǔ)句的程序和電路圖免費(fèi)下載

    1、在許多實(shí)際問(wèn)題中,需要程序進(jìn)行有規(guī)律的重復(fù)執(zhí)行,這時(shí)可以用循環(huán)語(yǔ)句來(lái)實(shí)現(xiàn)。在c語(yǔ)言中。用來(lái)實(shí)現(xiàn)循環(huán)
    發(fā)表于 08-20 17:31 ?1次下載
    C語(yǔ)言的for<b class='flag-5'>循環(huán)</b><b class='flag-5'>語(yǔ)句</b>的程序和電路圖免費(fèi)下載

    Verilog可綜合的循環(huán)語(yǔ)句

    Verilog中提供了四種循環(huán)語(yǔ)句,可用于控制語(yǔ)句的執(zhí)行次數(shù),分別為:for,while,repeat,forever。其中,for,while,repeat是可綜合的,但循環(huán)的次數(shù)需
    發(fā)表于 10-13 12:23 ?2w次閱讀

    條件判斷語(yǔ)句(if語(yǔ)句

    條件判斷語(yǔ)句,作為任何編程語(yǔ)言都不可缺少的內(nèi)容,在C語(yǔ)言中也不例外。條件判斷語(yǔ)句可以讓程序的功能更加復(fù)雜,從而實(shí)現(xiàn)各種各樣的功能。
    的頭像 發(fā)表于 02-21 15:24 ?3672次閱讀
    <b class='flag-5'>條件</b>判斷<b class='flag-5'>語(yǔ)句</b>(if<b class='flag-5'>語(yǔ)句</b>)

    什么是python break語(yǔ)句-終止循環(huán)

    循環(huán)的過(guò)程中如果要退出循環(huán),我們可以用break語(yǔ)句和continue語(yǔ)句
    的頭像 發(fā)表于 02-23 11:17 ?2594次閱讀

    C語(yǔ)言for語(yǔ)句介紹

    除了可以用while語(yǔ)句和do...while語(yǔ)句實(shí)現(xiàn)循環(huán)外,C語(yǔ)言還提供for語(yǔ)句實(shí)現(xiàn)
    的頭像 發(fā)表于 03-09 11:14 ?1443次閱讀

    詳解Python條件語(yǔ)句

    在 Python 中,if...else 是一種條件語(yǔ)句,可以根據(jù)給定的條件執(zhí)行不同的操作。這個(gè)語(yǔ)句通常用于控制程序的流程。
    的頭像 發(fā)表于 04-19 15:39 ?856次閱讀

    Python的循環(huán)語(yǔ)句介紹

    哈嘍大家好,我是知道。今天帶大家了解下Python的循環(huán)語(yǔ)句 定義循環(huán)語(yǔ)句允許我們執(zhí)行一個(gè)語(yǔ)句語(yǔ)句
    的頭像 發(fā)表于 05-11 17:39 ?964次閱讀

    Verilog常用的循環(huán)語(yǔ)句及用途

    本文主要介紹verilog常用的循環(huán)語(yǔ)句循環(huán)語(yǔ)句的用途,主要是可以多次執(zhí)行相同的代碼或邏輯。
    的頭像 發(fā)表于 05-12 18:26 ?2680次閱讀

    MATLAB中條件語(yǔ)句循環(huán)結(jié)構(gòu)的使用方式

    MATLAB提供了多種條件語(yǔ)句循環(huán)結(jié)構(gòu)。
    的頭像 發(fā)表于 07-05 09:41 ?4325次閱讀

    條件語(yǔ)句/循環(huán)語(yǔ)句simulink實(shí)現(xiàn)方法(一)

    條件語(yǔ)句循環(huán)語(yǔ)句是計(jì)算機(jī)編程中常用的兩種控制結(jié)構(gòu)
    的頭像 發(fā)表于 07-21 16:48 ?1.2w次閱讀
    <b class='flag-5'>條件</b><b class='flag-5'>語(yǔ)句</b>/<b class='flag-5'>循環(huán)</b><b class='flag-5'>語(yǔ)句</b><b class='flag-5'>simulink</b>的<b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>方法</b>(一)

    Python中什么是語(yǔ)句

    條件判斷 語(yǔ)句塊 什么是語(yǔ)句塊呢? 語(yǔ)句塊是在條件為真(條件
    的頭像 發(fā)表于 09-12 16:41 ?1073次閱讀

    Python條件條件語(yǔ)句

    if語(yǔ)句 對(duì)于if語(yǔ)句,若條件判定為真,那么后面的語(yǔ)句塊就會(huì)被執(zhí)行。若條件判定為假,語(yǔ)句塊就會(huì)被
    的頭像 發(fā)表于 09-12 16:45 ?651次閱讀
    主站蜘蛛池模板: 久久久久国产精品免费看 | 在线视频黄 | 欧美爽爽网 | 深夜国产成人福利在线观看女同 | h版欧美一区二区三区四区 h网站亚洲 | 成人性视频网站 | 直接看黄的网站 | 九色在线播放 | 夜夜爱夜夜做夜夜爽 | 性大特级毛片视频 | 好黄好猛好爽好痛的视频 | 天天涩综合 | 亚洲色图日韩 | 精品国产亚洲人成在线 | 黄网免费观看 | 亚洲国产成人在人网站天堂 | 一级特黄a视频 | 欧美色久| 精品在线一区二区 | 免费看又爽又黄禁片视频1000 | 国产手机在线 | 最近国语剧情视频在线观看 | 久操精品在线观看 | 中文字幕一区二区三区5566 | 男人天堂网2021 | 国产99久久九九精品免费 | 天天操狠狠操夜夜操 | 爱爱永久免费视频网站 | 久久中文字幕一区二区 | 人人操在线播放 | 在线激情网址 | 日韩a级毛片 | 国模娜娜扒开嫩木耳 | 夜夜bb | 四虎在线免费视频 | 亚洲 欧美 日韩 丝袜 另类 | 在线不卡一区 | 五月婷婷丁香久久 | 手机在线你懂得 | 五月天精品| 天天在线综合网 |