Съдържание:

Най -висок общ коефициент калкулатор: 6 стъпки
Най -висок общ коефициент калкулатор: 6 стъпки

Видео: Най -висок общ коефициент калкулатор: 6 стъпки

Видео: Най -висок общ коефициент калкулатор: 6 стъпки
Видео: КРЕЩА - ИЗГУБЕНО 200 000 ₽ / КЕШ ЗА БОКЛУК: Тишина 2024, Ноември
Anonim
Най -висок общ коефициент калкулатор
Най -висок общ коефициент калкулатор

много от моите приятели и деца, които аз преподавам, имат проблеми с намирането на най -високия общ фактор (HCF) от всякакви купчини числа. Това е най-вече защото в моята страна образованието наистина е нестандартно. децата обикновено прибягват до изучаване отначало и твърди правила.

В този смисъл създадох програма, с която се изчислява HCF.

въпреки че това всъщност не може да се направи на ръка и има още по -лесни и опростени начини за получаване на HCF, аз лично смятам, че това е най -примитивната, а оттам и най -основната техника. Надявам се хората да могат да разберат естеството на HCF.

езикът за програмиране, който ще напиша днес, е Microsoft studio 2010 в режим на конзола

това е така, защото не е толкова чувствителен към регистъра и е много удобен за потребителя, така че е идеален за начинаещ начинаещ.

Стъпка 1: Стъпка 1: Деклариране на променливите

във всяка програма, когато искаме да съхраняваме каквато и да е форма на данни за манипулиране, трябва да декларираме променливи. Въпреки че има много типове в моята програма, използвах само локални променливи.

той съхранява интегрални променливи във формата

Dim x като цяло число

тази етикетира променлива с името "x" като цялостен тип данни

така че в програмата трябва да декларираме тези променливи

Затъмнете firstNum, secondNum, TEMP, HCF като цяло число

основно съм съхранявал променливи с имената на: 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 = secondNum

Край Ако

Стъпка 4: Намиране на HCF

на теория HCF е най -високото цяло число, чрез което всички дадени числа могат да бъдат разделени поотделно, без да се оставя остатък. или в сетивата на компютъра остатък от нула

в моята програма продължавам да разделям числата и да увеличавам, докато не получа възможно най -високото цяло число, което разделя всички числа, без да оставя остатък.

за това ще използвам "за цикъл на итерация"

синтаксисът е:

За i = (произволно число) до (произволно число) стъпка (нарастващо число)

(функция)

Следващия

тъй като не мога да разделя на 0, ще трябва да започна от 1 и до най -малкото число. това е така, защото HCF не може да бъде по -голям от някое от числата. ако си спомняте, ние запазихме най -малкото число в променлива 'TEMP'.

за да сравним числата, ще използваме оператор if.

за тази задача ще използваме и специален оператор, наречен оператор модул

това връща остатъка от деление

неговият синтаксис е

(номер) mod (делител)

в други езици за програмиране, т.е. C ++, mod може да бъде заменен със знака за процент „%“

така че за нашата програма пишем

За i = 1 Към TEMP Стъпка 1

Ако ((firstNum Mod i = 0) And (secondNum Mod i = 0)) Тогава

HCF = i

Край, ако следва

съхраняваме числата в променлива "HCF" всеки път, когато се намери по -голяма променлива HCF се презаписва

ако i ако е фактор от двете числа, той се съхранява в променлива HCF

Стъпка 5: Показване на изхода

за показване на изхода на екрана на конзолата, използваме командата "console.write ()" или "console.writeline ()"

важно правило е, че написаните думи трябва да бъдат затворени в апострофи (""). Не е необходимо променливите да се затварят в апострофи

можем също да използваме оператора "&" за присъединяване на редове, не забравяйте да поставите интервал от двете страни на символа &

така програмата върви

Console. WriteLine ("Най -високият общ фактор е" & HCF)

Уви, компютърът обикновено не чака потребителя, освен ако не му бъде казано. затова добавяме друг ред програма, за да позволим на потребителя да прочете резултата.

Console. WriteLine ("НАЖМАЙТЕ НА ВСИЧКИ БУТОН ЗА ИЗХОД")

Console. ReadKey ()

Стъпка 6: За лекота

това е моята версия на програмирането с коментари за помощ.

Модул Module1 Sub Main ()

„във всяка програма трябва да декларираме променливи

Dim firstNum, secondNum, TEMP, HCF As Integer '"As Integer" символизира, че естеството на данните за тези променливи са цели числа

„първо информираме потребителя за инструкциите

Console. WriteLine ("въведете две числа за най -висок общ коефициент") 'след това подканваме потребителя да въведе число Console. WriteLine ("въведете първо число") "съхраняваме цифрата в променлива firstNum firstNum = Console. ReadLine' след това подканваме потребителя да въведе втори номер Console. WriteLine ("въведете второ число") 'по подобен начин съхраняваме и това, но в различна променлива' не искаме първата да бъде презаписана secondNum = Console. ReadLine

„сравняваме кое е по -голямо и го съхраняваме във временно хранилище„ TEMP “

Ако firstNum secondNum Тогава TEMP = secondNum

„в клаузата отдолу съхранихме стойност в TEMP, въпреки че първото и второто число бяха равни

„това е така, защото се нуждаехме от„ най -високия “брой на всеки от тях, който и да е той.

ElseIf firstNum = secondNum Тогава

TEMP = secondNum End Ако

„Тук наистина започва програмирането

„функцията mod разделя цялото число на число и връща остатъка“това е полезно, по този начин можем да проверим с кои числа са остатъците нула

„тук използваме„ FOR ITERATION LOOP “, за да свършим работата

„създаваме променлива„ i “и я увеличаваме с 1 след всеки цикъл

За i = 1 To TEMP Стъпка 1 '"Стъпка 1" показва, че има увеличение от 1 след всеки цикъл

„както можете да видите, ние също използвахме функция AND

„това е така, защото имахме нужда само от числа, които разделят двете променливи, като остатъкът е нула

„Друга важна забележка е, че не можем да започнем i в 0

„това е така, защото всичко, разделено на 0, може да доведе до безкрайност Ако ((firstNum Mod i = 0) И (secondNum Mod i = 0)) Тогава

„съхраняваме числата в променлива„ HCF “

„всеки път, когато се намери по -голяма променлива, HCF се презаписва HCF = i Край, ако следва

Console. Clear () 'тази команда изчиства всичко написано на екрана на конзолата

Console. WriteLine ("най -висок общ фактор =" & HCF) 'тази команда показва съобщение на екрана на конзолата

'командите отдолу позволяват излизане от екрана на конзолата

Console. WriteLine () Console. WriteLine ("ПРИСЪТВАНЕ НА ВСИЧКИ БУТОН ЗА ИЗХОД") Console. ReadKey ()

'P. S

„докато програмирате, стига да не разрушавате синтаксисите“можете свободно да поставяте интервали, раздели или празни редове, за да изглежда програмата по -малко объркана

End Sub

Краен модул

Препоръчано: