Բովանդակություն:

Ամենաբարձր ընդհանուր գործոնի հաշվիչը `6 քայլ
Ամենաբարձր ընդհանուր գործոնի հաշվիչը `6 քայլ

Video: Ամենաբարձր ընդհանուր գործոնի հաշվիչը `6 քայլ

Video: Ամենաբարձր ընդհանուր գործոնի հաշվիչը `6 քայլ
Video: Кавказ: Регион с характером | Интересные факты про Кавказские горы 2024, Նոյեմբեր
Anonim
Ամենաբարձր ընդհանուր գործոնի հաշվիչ
Ամենաբարձր ընդհանուր գործոնի հաշվիչ

իմ ընկերներից և երեխաներից շատերը խնդիրներ ունեն թվերի ցանկացած փունջից ամենաբարձր ընդհանուր գործոնը (HCF) գտնելու հետ: Դա հիմնականում այն պատճառով է, որ իմ երկրում կրթությունն իսկապես ենթա ստանդարտ է: երեխաները սովորաբար դիմում են սովորելու և կոշտ կանոնների:

Այս առումով ես ստեղծեցի մի ծրագիր, որի միջոցով հաշվարկվում է HCF- ը:

չնայած դա իրականում հնարավոր չէ անել ձեռքով, և կան ավելի հեշտ և պարզ եղանակներ HCF ստանալու համար, ես անձամբ կարծում եմ, որ սա ամենապրիմիտիվ և, հետևաբար, ամենահիմնական տեխնիկան է: Հուսով եմ, որ մարդիկ կկարողանան հասկանալ HCF- ի բնույթը:

ծրագրավորման լեզուն, որով ես այսօր կգրեմ, Microsoft studio 2010- ն է `մխիթարական ռեժիմում

դա տեղի է ունենում այն պատճառով, որ այն այնքան էլ զգայուն չէ գործերի նկատմամբ և շատ բարեկամական է, ուստի կատարյալ է սկսնակ սկսնակների համար:

Քայլ 1: Քայլ 1. Փոփոխականների հայտարարում

ցանկացած ծրագրում, երբ մենք ցանկանում ենք պահել ցանկացած ձևի տվյալներ մանիպուլյացիայի համար, մենք պետք է հայտարարենք փոփոխականներ: Չնայած իմ ծրագրում շատ տեսակներ կան, ես օգտագործել եմ միայն տեղական փոփոխականներ:

այն պահում է անբաժանելի փոփոխականները ձևաչափում

Dim x Որպես ամբողջ թիվ

սա պիտակում է փոփոխականին «x» անունով ՝ որպես ամբողջական տվյալների տեսակ

ուստի ծրագրում մենք պետք է հայտարարենք այս փոփոխականները

Dim firstNum, secondNum, TEMP, HCF As Integer

Ես հիմնականում պահել եմ փոփոխականների համար ՝ firstNum, secondNum, TEMP, HCF անուններով

Քայլ 2: Փոփոխականների պահպանում

Երբ մենք հայտարարում ենք փոփոխական, մենք պետք է նրան նշանակենք արժեք, հակառակ դեպքում այն անօգուտ է:

դա անելու համար մենք օգտագործում ենք "=" օպերատորը

բայց օգտվողից այն կարդալու համար մեզ անհրաժեշտ է մուտքագրման միջոց: մենք օգտագործում ենք «Console. ReadLine» գործառույթը

սա Visual Basic- ի վահանակի ռեժիմի գործառույթ է, որը կարդում է կոնսոլում մուտքագրված տողը

ծրագիրը գնում է այսպես;

firstNum = Console. ReadLine

մենք նույնն ենք անում հաջորդ փոփոխականի հետ

secondNum = Console. ReadLine

սա պահում է երկու համար `ծրագրով շահարկելու համար

Քայլ 3: Համեմատություն

Հաջորդը մենք համեմատում ենք երկու փոփոխական և ստուգում, թե որն է ավելի փոքր: մենք կարող ենք օգտագործել նաև ավելի մեծ թիվ, բայց անիմաստ կլինի ծրագրի վրա ավելորդ բեռ դնելը: բայց եթե երկու փոփոխականներն էլ հավասար են, կարող ենք օգտագործել և մեկը

համեմատելու համար մենք օգտագործում ենք if հայտարարությունները

Եթե պայմանը (գործողություն, եթե պայմանը ճշմարիտ է)

Այլապես, եթե այդ դեպքում

(գործողություն, եթե պայմանը ճշմարիտ է)

Վերջ, եթե

ըստ էության, այսպիսին է թվում

Եթե firstNum <secondNum Ապա TEMP = firstNum ElseIf firstNum> secondNum Ապա TEMP = secondNum

ElseIf firstNum = secondNum Հետո

TEMP = երկրորդ թիվ

Վերջ, եթե

Քայլ 4: HCF- ի որոնում

տեսականորեն HCF- ն ամենաբարձր ամբողջ թիվն է, որով բոլոր տրված թվերը կարող են առանձին բաժանվել ՝ առանց մնացորդ թողնելու: կամ համակարգչի իմաստով ՝ զրոյի մնացորդ

Իմ ծրագրում ես շարունակում եմ թվերի բաժանումը և ավելանալը, մինչև ստանամ հնարավոր ամենաբարձր թիվը, որը բոլոր թվերը բաժանում է առանց մնացորդ թողնելու:

դրա համար ես կօգտագործեմ «կրկնելու օղակ»

շարահյուսությունը հետևյալն է.

I = (ցանկացած թիվ) մինչև (ցանկացած թիվ) քայլի համար (աճող թիվ)

(գործառույթ)

Հաջորդը

քանի որ ես չեմ կարող բաժանել 0 -ի, ես պետք է սկսեմ 1 -ից և նվազագույն թվից: սա այն պատճառով է, որ HCF- ը չի կարող ավելի մեծ լինել, քան որևէ թիվ: եթե հիշում եք, մենք ամենաքիչ թիվը պահել ենք «TEMP» փոփոխականի մեջ:

թվերը համեմատելու համար կօգտագործենք if հայտարարությունը:

Այս առաջադրանքի համար մենք նաև կօգտագործենք հատուկ օպերատոր, որը կոչվում է մոդուլային օպերատոր

սա մնացածը վերադարձնում է բաժանումից

դրա շարահյուսությունն է

(թիվ) ռեժիմ (բաժանարար)

այլ ծրագրավորման լեզուներում, այսինքն ՝ C ++, ռեժիմը կարող է փոխարինվել «%» տոկոսային նշանով

այնպես որ, մեր ծրագրի համար մենք գրում ենք

For i = 1 դեպի TEMP Քայլ 1

Եթե ((firstNum Mod i = 0) Եվ (secondNum Mod i = 0)) Հետո

HCF = i

Ավարտ, եթե հաջորդը

մենք թվերը պահում ենք «HCF» փոփոխականի մեջ ամեն անգամ, երբ ավելի մեծ փոփոխական է հայտնաբերվում, HCF- ը վերագրվում է

եթե i եթե երկու թվերի գործակից, ապա այն պահվում է փոփոխական HCF- ում

Քայլ 5: Արդյունքի ցուցադրում

Վահանակի էկրանին ելքը ցուցադրելու համար մենք օգտագործում ենք «console.write ()» կամ «console.writeline ()» հրամանը

բութ մատի կարևոր կանոնն այն է, որ գրված բառերը պետք է կցված լինեն ապոստրոֆներում (""): Անհրաժեշտ չէ, որ փոփոխականները փակվեն ապոստրոֆներում

մենք կարող ենք նաև օգտագործել «&» օպերատորը ՝ գծերին միանալու համար, հիշեք, որ & նշանի երկու կողմերում բացատ տեղադրեք

այսպիսով ծրագիրը գնում է

Console. WriteLine («Ամենաբարձր տարածված գործոնը» և HCF)

Ավաղ, համակարգիչը սովորաբար չի սպասում օգտագործողին, եթե դա նրան չասեն: Այսպիսով, մենք ավելացնում ենք ծրագրի մեկ այլ տող, որը թույլ կտա օգտվողին կարդալ արդյունքը:

Console. WriteLine («ՄԵԿՆԵԼ YԱՆԿԱԱ ԿՈUTՅԹ ԵԼՔՈ Մ»)

Console. ReadKey ()

Քայլ 6: Հեշտության համար

սա ծրագրավորման իմ տարբերակն է ՝ օգնության մեկնաբանություններով:

Մոդուլի մոդուլ 1 ենթակետ ()

«programանկացած ծրագրում մենք պետք է փոփոխականներ հայտարարենք

Dim firstNum, secondNum, TEMP, HCF As Integer «Ինչպես ամբողջ թիվը» խորհրդանշում է, որ այս փոփոխականների տվյալների բնույթը ամբողջ թիվ է

«Սկզբում մենք օգտվողին տեղեկացնում ենք հրահանգների մասին

Console. WriteLine («մուտքագրեք երկու թիվ ամենաբարձր ընդհանուր գործոնի համար») », այնուհետև մենք օգտվողին հուշում ենք մուտքագրել մի շարք Console. ապա մենք հուշում ենք օգտագործողին մուտքագրել երկրորդ համարը Console. WriteLine («մուտքագրել երկրորդ համարը») 'նմանապես մենք դա նույնպես պահում ենք, բայց այլ փոփոխականի մեջ' մենք չենք ցանկանում, որ առաջինը վերագրվի secondNum = Console. ReadLine

«Մենք համեմատում ենք, թե որն է ավելի մեծը և պահում ենք« TEMP »ժամանակավոր պահեստում

Եթե firstNum secondNum Ապա TEMP = secondNum

«Ստորև բերված կետում մենք արժեք ենք պահել TEMP- ում, չնայած առաջին և երկրորդ թվերը հավասար էին

«Դա տեղի է ունենում այն պատճառով, որ մեզ անհրաժեշտ էր« ամենաբարձր »թիվը, ինչ էլ որ այն լինի:

ElseIf firstNum = secondNum Հետո

TEMP = secondNum Վերջ Եթե

ահա թե որտեղից է իսկապես սկսվում ծրագրավորումը

'mod գործառույթը ամբողջ թիվը բաժանում է մի թվով և վերադարձնում մնացածը' սա օգտակար է, այս կերպ մենք կարող ենք ստուգել, թե որ թվերով են մնացորդները զրո

Այստեղ մենք օգտագործում ենք «FOR ITERATION LOOP» աշխատանքը կատարելու համար

'մենք ստեղծում ենք' i 'փոփոխական և այն ավելացնում ենք 1 -ով յուրաքանչյուր հանգույցից հետո

For i = 1 դեպի TEMP Քայլ 1 «1 -ին քայլը» ցույց է տալիս, որ յուրաքանչյուր հանգույցից հետո կա 1 -ի ավելացում

«Ինչպես տեսնում եք, մենք նաև օգտագործում էինք AND գործառույթը

«Դա տեղի է ունենում այն պատճառով, որ մեզ անհրաժեշտ էին միայն թվեր, որոնք բաժանում են երկու փոփոխականները ՝ ստանալով մնացած զրո

«Մեկ այլ կարևոր նշում է, որ մենք չենք կարող i- ն սկսել 0 -ից

«Սա այն պատճառով է, որ 0 -ի բաժանված ցանկացած բան կարող է հանգեցնել անսահմանության

«Մենք թվերը պահում ենք« HCF »փոփոխականի մեջ

'Ամեն անգամ, երբ ավելի մեծ փոփոխական է հայտնաբերվում, HCF- ը վերագրվում է HCF = i Վերջ, եթե հաջորդը

Console. Clear () 'այս հրամանը մաքրում է վահանակի էկրանին գրված ամեն ինչ

Console. WriteLine ("ամենաբարձր ընդհանուր գործոնը =" & HCF) 'այս հրամանը հաղորդագրությունը ցուցադրում է մխիթարելիս էկրանին

«ներքևում գտնվող հրամանները թույլ են տալիս դուրս գալ վահանակի էկրանից

Console. WriteLine () Console. WriteLine («ՄԵԿՆԵԼ YԱՆԿԱԱ ԿՈUTՅԹ», Console. ReadKey ()

'P. S

«mingրագրավորման ընթացքում, քանի դեռ չեք խաթարում շարահյուսությունները», դուք ազատ եք տեղադրել բացատներ, ներդիրներ կամ դատարկ տողեր `ծրագիրը ավելի խառնաշփոթ տեսք ունենալու համար

Վերջ ենթ

Ավարտի մոդուլ

Խորհուրդ ենք տալիս: