ဖွဲ့စည်းခြင်းအလယ်တန်းပညာရေးနှင့်ကျောင်းများ

Linear algorithms - ပုံဖွဲ့စည်းတည်ဆောက်ပုံနှင့်တွက်ချက်မှု

တိုင်းလူတစ်ဦး၏နေ့စဉ်ဘဝအလုပ်မှာသို့မဟုတ်လေ့လာနေစဉ်အမျိုးမျိုးအခက်အခဲများ၏အလုပ်များကိုကြီးမားသောအရေအတွက်အားကိုင်တွယ်ဖြေရှင်းဖို့ဖြစ်ပါတယ်။ တချို့ကတာဝန်များကိုသူတို့ရဲ့အကောင်အထည်ဖော်ရေးအတွက်ကျွန်တော်ပင်စဉ်းစားခြင်းမရှိဘဲ, အလိုအလျှောက်အခြို့သောလုပ်ရပ်များလုပ်ပေးကြောင်း, ဒါကြောင့်ရိုးရှင်းတဲ့ဖြစ်ကြသည်။ မည်သည့်ပြဿနာမှဒီဖြေရှင်းချက်ပင်အရိုးရှင်းဆုံး, စည်းကမ်းအဖြစ်အနည်းငယ်ခြေလှမ်းများများအတွက်တသမတ်တည်းထွက်ယူသွားတတ်၏။ ပြဿနာများကိုဖြေရှင်းရာတွင်ရှေ့နောက်ညီညွတ်မှု၏ဤကြင်နာတစ်ခု algorithm ကိုလို့ခေါ်ပါတယ်။ ဒီနေ့ကသူတို့ဆုံးဖြတ်ချက်နှင့်ပရိုဂရမ်းမင်းကိုဖန်ဆင်းအဖြစ်၎င်းတို့၏ဖွဲ့စည်းပုံကိုယ်စားပြုဘာတစ်ဦး linear algorithms မှာကြည့်ပါ။

algorithmic ဘာသာစကား

ဤအယူအဆအနုပညာရှင်ပြဿနာရဲ့အဖြေဖို့ညွှန်ကြားထားသောလုပ်ရပ်များ, တစ် sequence ကိုလုပ်ဘို့အတိအကျညွှန်းသည်။

ဤသည်ဘာသာစကားသုံးစွဲသူအပေါ်ယေဘုယျအားဖြင့်အာရုံစူးစိုက်ဖြစ်ကြောင်း algorithms ဖော်ပြတဲ့နည်းလမ်းဖြစ်ပါတယ်။

ဘယ်အချိန်မှာအဲဒါကိုမှကြွလာ , ကွန်ပျူတာဘာသာစကား အတိအကျညွှန်းခြင်းဖြင့်ညွှန်ပြအဖြစ်ကွန်ပျူတာဖြစ်စဉ်ကို defining ။ သူသည်အလှည့်အတွက်မူလရလဒ်မှကနဦးအချက်အလက်များ, ကြောင်းအကွာအဝေးကနေစေပါတယ်။

တစ်ဦး algorithm ကို၏ဖွံ့ဖြိုးရေးကောင်စီ - အတော်လေးရှုပ်ထွေးနှင့်အချိန်-စားသုံးဖြစ်စဉ်တစ်ခုဖြစ်သည်။ ဒါဟာကွန်ပျူတာများ၏အကူအညီဖြင့်ပြဿနာများကိုဖြေရှင်းရန်ဒီဇိုင်းနည်းပညာတွေကိုတစ်ဦးစုစည်းလုပ်ရပ်များတစ် sequence ကို (ဖွံ့ဖြိုးတိုးတက်ရေးအတွက်) ဖြစ်ပါသည်။

ဂုဏ်သတ္တိများ algorithm ကို

ထုတ်လွှတ်သည့်ဂုဏ်သတ္တိများများထဲတွင်:

  • ခြေလက် - ခြေလှမ်းများ (ခြေလှမ်းများ) ၏ကနျ့အရေအတွက်ကို defining အဘို့အတစ်ခုလုံးကို algorithm ကို၏ပြီးစီးလျက်ရှိ၏
  • ဧကန်အမှန် (တည်ပြီးသတ်တယ်) - လုပ်ရပ်များဖျော်ဖြေဘို့အနက်ကိုစည်းမျဉ်းစည်းကမ်းတွေရဲ့ထူးခြားမှုကိုကိုယ်စားပြုလျက်, သူတို့ကွပ်မျက်၏အမိန့်;
  • ထိရောက်မှု - ခြေလှမ်းများမဆိုကနျ့အရေအတွက်လိုချင်သောရလဒ်များကို;
  • ရှင်းရှင်းလင်းလင်း - ရှင်းရှင်းလင်းလင်းညွှန်ကြားချက်ဟာ executor ဖြစ်ရမည်;
  • အစုလိုက်အပြုံလိုက် - algorithms ပြဿနာအထွေထွေရေးဆွဲရေးမှတိကျသောပြဿနာများကိုတစ်ဦးလူတန်းစားဖြေရှင်းပေးနိုင်ရပါမည်။

linear algorithms ။ Computer ကိုအတန်းအစား 9

ကျနော်တို့ပြီးသားအယူအဆ၏အဓိပ္ပါယ်နှင့်ဂုဏ်သတ္တိများဆွေးနွေးတင်ပြကြသည်။ အခုက၎င်း၏ပုံစံများအကြောင်းပြောဆိုကြကုန်အံ့:

  • linear;
  • စိမျး;
  • သံသရာအတူ။

ကျနော်တို့ linear algorithms စိတ်ဝင်စားဖြစ်ကြသည်။ သူတို့ကဘာတွေလဲ? သူတို့တစ်တွေရှင်းရှင်းလင်းလင်း sequence ကိုအတွက်အခြားပြီးနောက်တစ်ဦးကွပ်မျက်ခံရခံရဖို့ပညတ်တို့ကိုဆံ့။

အဆိုပါ algorithm ကို၏ linear ဖွဲ့စည်းပုံမှာနှုတ်နှင့်ဂရပ်ဖစ်ပုံစံ၌ရေးထားလျက်ရှိ၏နိုင်ပါသည်။

တစ်ဦးနှုတ်ပုံစံတှငျမှတျတမျးတငျထားသဒီနေရာတွင်ဥပမာတစ်ခု။ ဒီတော့တာဝန်: ကျောင်းကစုဆောင်းပါ။ ဖြေရှင်းချက်:

  • Start ကို။
  • ထရပ်တယ်။
  • လေ့ကျင့်ခန်းလုပ်ပါ။
  • သင်၏မျက်နှာကိုဆေးကြောပါ။
  • ဝတ်ဆင် Get ။
  • နံနက်စာ။
  • အစုစုကိုစုဝေးစေ။
  • အဆုံး။

အောက်မှာဖေါ်ပြတဲ့အတိုင်းဖြစ်စဉ်ကိုအထက် graphical ပုံသဏ္ဍာန် predsatvlyat ဖြစ်လိမ့်မည်:

ပိတ်ပင်တားဆီးမှုပုံ form မှာ linear algorithm ကို,

အဆိုပါပိတ်ပင်တားဆီးမှုပုံတစ်ခုချင်းစီကိုသီးခြားအဆင့်ဂျီဩမေတြီပုံစံမျိုးစုံအမျိုးမျိုးအတွက်ကိုယ်စားပြုလုပ်ကွက်ကကိုယ်စားပြုထားတဲ့အတွက်စံပြပုံရိပ်ကို algorithm ကိုကိုယ်စားပြုတယ်။ ထို့အပြင်အဆင့်ဆင့်အကြားဆက်သွယ်မှုကို (အခြားစကား, ကွပ်မျက်အဆင့်၏ sequence ကို) အပိုင်းပိုင်း (လုပ်ကွက်) ချိတ်ဆက်သောမြှားကညွှန်ပြနေသည်။ တစ်ခုချင်းစီကိုပိတ်ပင်တားဆီးမှုအနေနဲ့ကမ္ပည်းဖြင့်လိုက်ပါသွားသည်။ အဆိုပါ linear အတွက်အသုံးပြုတဲ့ algorithm ကိုအောက်ပါပုံမှန်လုပ်ဆောင်ချက်များအတွက် ဂျီဩမေတြီပုံစံမျိုးစုံ :

  • block က start-အဆုံး algorithm ကို။ ယင်းလုပ်ကွက်တွင်ကမ္ပည်း "အစအဦး" သို့မဟုတ် "အဆုံး" ဖြစ်ပါတယ်။
  • "Input အား-output ကို" ယူနစ်။ ဤသည်ပိတ်ပင်တားဆီးမှုတစ် parallelogram ၏ပုံစံကိုကိုယ်စားပြုသည်။ "Input ကို", "ရုပ်သိမ်းရေး", "ပုံနှိပ်": သူကအောက်ပါအချက်များကိုကမ္ပည်းတင်လိုက်တယ်။ ဒါ့အပြင် input ကိုစာရင်းတစ်ခုသို့မဟုတ်အသီးသီးက output variable တွေကိုသူတို့ကိုတွဲ။
  • ဂဏန်းသင်္ချာယူနစ်, ဒါမှမဟုတ်ပိတ်ပင်တားဆီးမှုဆုံးဖြတ်ချက်များကို။ ဒါဟာစတုဂံမှကိုက်ညီ။ အဆိုပါ display ကိုယူနစ်ဖြစ်သင့်: "စစ်ဆင်ရေး", "စစ်ဆင်ရေး၏အုပ်စုတစု။ "

သို့သော် linear algorithms ၏ဖြေရှင်းချက်ကိုပုံဖော်ပိတ်ပင်တားဆီးမှုကားချပ်၏အကူအညီနှင့်အတူ။ ယင်းနောက်ရဲ့တန်ဖိုးများကိုတာဝန်ပေးဖို့ရဲ့ features တွေကိုအကြောင်းပြောဆိုကြကုန်အံ့။

linear ကွန်ပျူတာ algorithms

ကွန်ပျူတာ algorithms အတွက်အဓိကမူလတန်းအရေးယူ - variable တွေကို၏ဤတာဝန်ကျတဲ့လူတယောက်တန်ဖိုး။ စဉ်ဆက်မပြတ်တန်ဖိုးကိုသူ့ရဲ့မှတ်တမ်းတင်များ၏အသွင်သဏ္ဌာန်အားဖြင့်ဆုံးဖြတ်သည်ရှိရာကိစ္စတွင်ခုနှစ်, တစ်ခုတည်းကိုသာတာဝနျ၏ရလဒ်အဖြစ်သတ်သတ်မှတ်မှတ် variable ကိုတန်ဖိုးကိုလက်ခံရရှိသည်။ ဤသည်မှာနှစ်ခုနည်းလမ်းများအားဖြင့်ပြည့်စုံစေခြင်းငှါ: တာဝန်ကိုညွှန်ကြားချက်အားဖွငျ့; ပညတ်တော်တို့ကိုရိုက်ထည့်ခြင်းဖြင့်။

linear ဖြေရှင်းရေးတစ်ခု algorithm ကိုတခုရဲ့ဥပမာ

ဤတွင်ကျောင်းကပြဌာန်းစာအုပ်အကြောင်းအရာရှိသည်သောတစ်ဦး linear algorithm နှင့်အတူပိုငျး၏ဌာနခွဲများ၏စည်းမျဉ်းများဥပမာတစ်ခုဖော်ပြချက်ဖြစ်ပါသည်:

  • အဆိုပါအစိတ်အပိုင်း 1 ပိုင်းဝေသည့်အစိတ်အပိုင်း 2 ၏ပိုင်းခြေအားဖြင့်များပြားစေရပါမည်;
  • 1 ပိုင်းခြေပိုင်းဝေကို 2 နဲ့မြှောက်ခံရဖို့,
  • 2 မှတ်၏ရလဒ် - သငျအဘယ်သူ၏ပိုင်းဝေအပိုဒ် 1 များ၏အကောင်အထည်ဖော်မှုရဲ့ရလဒ်ဖြစ်ပြီးတစ်အစိတ်အပိုင်း, နှင့်ပိုင်းခြေမှတ်တမ်းတင်ချင်ပါတယ်။ အောက်မှာဖေါ်ပြတဲ့အတိုင်းဤနည်းဥပဒေများ၏ algebra ပုံစံဖြစ်ပါသည်:

a / b: က c / ဃ = (က * ဃ) / (ခ * ဃ) = m / n ။

ဒါကြောင့်ကျနော်တို့အပိုငျးအခွဲဝေများအတွက်ကွန်ပျူတာ algorithm ကိုတည်ဆောက်စေ။ စိတ်ရှုပ်ထွေးမှုများကိုရှောင်ကြဉ်ဖို့, ကျနော်တို့ variable တွေကိုအသုံးပြုပါလိမ့်မယ်အထက်တွင်သတ်မှတ်ထားသောခဲ့ပြီးသောပုံသေနည်းထဲမှာရှိသကဲ့သို့တူညီအဓိပ္ပါယ်များရှိပါသည်။ ကိန်း variable တွေကိုအဖြစ် a, b, c ကို, d- မူရင်းဒေတာ။ အဆိုပါရလဒ်ကိန်းတန်ဖိုးများကိုရလိမ့်မည်။ အောက်မှာဖေါ်ပြတဲ့အတိုင်း algorithmic ဘာသာစကားဖြေရှင်းချက်ပါလိမ့်မယ်:

အပိုငျး၏ SAL ဌာနခွဲ

စောစော

ရည်ရွယ်ချက်နှင့်, b, c, d, မီတာ, ဎ

a, b, c ကို, ဃအုပ်ချုပ်

မီတာ: = တစ်ဦး * ဃ

ဎ: = ခ * နှင့်အတူ

ဆုတ်ခွာမီတာ, ဎ

ဂိမ်း

ဂရပ်ဖစ် format နဲ့ဖြေရှင်းနည်းများ

အောက်မှာဖေါ်ပြတဲ့အတိုင်းအထက်တွင်ဖော်ပြခဲ့ scheme linear algorithm ကိုဖြစ်ပါသည်:

အဖွဲ့မှတန်ဖိုးသတ်မှတ်အောက်ပါပုံစံရှိပါတယ်:

variable: = စကားရပ်။

နိမိတ်လက္ခဏာ "=" တာဝန်ပေးအပ်အဖြစ်ကိုဖတ်ဖြစ်ပါတယ်။

တာဝန်ကျတဲ့နေရာ - အောက်ပါလုပ်ဆောင်ချက်များသည် execute မှကွန်ပျူတာများအတွက်လိုအပ်သောအရာအဖွဲ့တစ်ဖွဲ့:

  • ဟူသောအသုံးအနှုနျးမြား၏အကဲဖြတ်ခြင်း,
  • ရရှိသော variable ကိုတန်ဖိုးများကိုတာဝန်ပေးဖို့။

အထက်ပါ algorithm ကိုတာဝန်ကျတဲ့နေရာအဖြစ်နှစ်ခုပညတ်တော်တို့ကိုရှိပါတယ်။ အမိန့်တာဝန်ကျတဲ့နေရာများ၏ဘလောက်ပုံထဲမှာကွန်ပျူတာယူနစ်ဟုခေါ်သည့်စတုဂံ, တှငျမှတျတမျးတငျထားရပါမည်။

linear algorithms များကဖော်ပြထားသည့်အခါအသုံးအနှုန်းတွေရေးသားခြင်းအခါတင်းကျပ်သောစည်းမျဉ်းများနှင့်အတူမဖြစ်မနေလိုက်နာစရာအထူးလိုအပ်ကြောင်းလည်းမရှိ။ သင့်အနေပုံမှန်အတိုင်းသင်္ချာပုံစံကိုအသုံးပြုပြီးသူတို့ကိုမှတ်တမ်းတင်နိုင်ပါတယ်။ ဒါပေမဲ့ဒီတစ်တင်းကျပ်သော programming language ကိုအထားအသိုမဟုတျပါဘူး။

ဒီဥပမာထဲမှာ, algorithm ကိုလည်းအဖွဲ့ထဲသို့ဝင်ထားပါတယ်:

a, b, c ကို, d ရိုက်ထည့်ပါ။

အဆိုပါ flowchart အတွက် input ကို command ကတော့ parallelogram, တနည်းအတွက် input ကို-output ကိုယူနစ်၌ရေးထားလျက်ရှိ၏ဖြစ်ပါတယ်။ ဒီ command ကွပ်မျက်လိုက်တဲ့အခါအသုံးပြုသူအချို့လုပ်ရပ်တွေကထွက်သယ်ဆောင်ပါလိမ့်မယ်တိုင်အောင်, Processor ကို interrupts ။ အမည်, အသုံးပြုသူရန်လိုအပ်ပါသည် ရိုက်သွင်းရေးကိရိယာ ဟာ Enter key ကိုအဖြစ်ပြုမူသော input ကို variable တွေကိုရိုက်ထည့် (မိမိတို့၏တန်ဖိုးများ) နှင့်စာနယ်ဇင်း Enter (ကီးဘုတ်) ။ ဒါဟာတန်ဖိုးများကိုသက်ဆိုင်ရာ variable တွေကိုအတွင်းတည်ရှိသော input ကိုစာရင်းကဲ့သို့တူညီသောအမိန့်, ဝင်ခဲ့အရေးကြီးပါသည်။

linear algorithm ကို။ ၎င်း၏ပရိုဂရမ်းမင်း

အစောပိုင်းကဒီဆောင်းပါးမှာဖော်ပြထားတဲ့အတိုင်း, linear အစီအစဉ်ကိုထိုကဲ့သို့သောထုတ်ပြန်ချက်ပါဝင်နိုင်ပါသည်:

  • တာဝန်ကျတဲ့နေရာ;
  • ကော်မရှင်;
  • နိဂုံးချုပ်။

ဒါကမှအထက်ပါအော်ပရေတာကို အသုံးပြု. ဖြစ်ပါတယ် programming ကို linear algorithms ။

ထို့ကြောင့် တာဝန်ကျတဲ့အော်ပရေတာ ကိုအောက်ပါအတိုင်း programming language ကိုတိကျမ်းစာ၌လာသည်ကား:

စေတစ်ဦးက = B, ဘယ်နေရာမှာတစ်ဦးက - အဆိုပါ variable ကို B ကို - စကားရပ်။ ဥပမာအားဖြင့်, တစ်ဦးက = Y ကို + 20 ။

အောက်မှာဖေါ်ပြတဲ့အတိုင်း entry ကိုအော်ပရေတာသည်:

ဥပမာအားထည့်သွင်းမှု: ထည့်သွင်းမှုကို C

အော်ပရေတာဒေတာကို output, ပုံစံ၌ရေးထားလျက်ရှိ၏တန်ဖိုးများ:

ပုံနှိပ်ပါ။ ဥပမာအားဖြင့်တူထုအက်စ်များအတွက်

ဒီနေရာမှာတစ်ဦးရိုးရှင်းတဲ့ဥပမာဖြစ်ပါတယ်။ ကျနော်တို့ကီးဘုတ်နံပါတ်များကို A နှင့် B တွင်ဆီက input ၏ပမာဏတှေ့လိမျ့မညျသော program တစ်ခုရေးဖို့ရန်လိုအပ်ပါတယ်

တစ်ဦးက programming language ကိုကျနော်တို့ program တစ်ခုရရာ၏စာသားကိုအောက်မှာပြထားပါတယ်။

entry ကိုအော်ပရေတာ, အစကယ်ပရိုဂရမ်းမင်းဘာသာစကားမှာ output ကို

Pascal linear algorithms သုံးကြောင်း input ကိုသို့မဟုတ် output ကိုစစ်ဆင်ရေးကိုညွှန်း, အထူးအော်ပရေတာခွဲဝေချထားပေးရန်မထားဘူး။ သတင်းအချက်အလက်ဖလှယ်မှုများ၏အစီအစဉ်များကို built-in လုပ်ထုံးလုပ်နည်းများ၏အကူအညီနှင့်အတူထွက်ယူသွားတတ်၏။ စံလုပ်ထုံးလုပ်နည်း၏ပဏာမဖော်ပြချက်များအတွက်မလိုအပ်လည်းမရှိကတည်းကအဲဒါကိုတစ်ဦးကိုကိုးကားင်တစ်ဦးချင်းစီအစီအစဉ်အတွက်ရရှိနိုင်ပါသည်။ ထို့အပြင်ဆိုပါတယ်လုပ်ထုံးလုပ်နည်း၏နာမကိုမဆို keyword ကိုပရောဂျက်မထားဘူး။

ရှိပြီးသားအစီအစဉ်ကိုသို့ပေါင်းစည်းကြောင်းဒေတာ entry ကို၏စံလုပ်ထုံးလုပ်နည်းမှဝင်ရောက်ခွင့်များအတွက်ထိုကဲ့သို့သောအော်ပရေတာကို အသုံးပြု. data တွေကိုဝင်ရောက်တဲ့အခါ။

Read (A, B, C) ရှိရာ A, B, C - သိုလှောင်မှုအတွက်မှတ်ဉာဏ်သို့ဝငျရပါမညျသော variable တွေကို။

Readlnn (x1, y က, x2) - ဖြည့် entry ကို, အ cursor အသစ်တစ်ခုလိုင်း၏အစမှခုန်။

Readlnn; - « Enter »အစောင့်ဆိုင်းစာနယ်ဇင်းဖော်ပြသည်။ နောက်ဆုံးမျက်နှာပြင် contents တွေကိုအပေါ်ကိုပရိုဂရမ်၏ရလဒ်များကိုကယ်ဖို့, « End »မတိုင်မီအများအားဖြင့်ဒီအော်ပရေတာစာသားကိုသို့ဖြည့်စွက်ထားပါသည်။

ဤအအော်ပရေတာကို အသုံးပြု. အားဖြင့်မော်နီတာ screen ပေါ်မှာ output ဒေတာ:

(A, B, C) ရေးထား - တဦးတည်းအတန်းများတွင် A, B, C ၏တန်ဖိုးများကိုသတ်မှတ်ခြင်း, နှင့် cursor လက်ရှိလိုင်းမချန်မထားပါဘူး။

Writeln (z, y က, Z2) - က output တန်ဖိုးများကိုအဆုံးသတ်သည် cursor ကြောင်းအနေအထားမှာအသစ်တခုလိုင်းကိုရွှေ့မည်။

writeln; - တစ်လိုင်းကိုကူးသွားအသစ်တစ်ခုတဦးတည်း၏အစပြောင်းရွှေ့ဖို့သက်သေခံ၏။

သို့သော်ထိုကဲ့သို့သောရိုးရှင်းသောထုတ်ပြန်ချက်များ၏အကူအညီနှင့် Pascal အတွက်အချက်အလက်များ၏ input ကိုနှင့် output ကိုထွက်သယ်ဆောင်။

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 my.unansea.com. Theme powered by WordPress.