Indholdsfortegnelse:

Højeste fællesfaktorberegner: 6 trin
Højeste fællesfaktorberegner: 6 trin

Video: Højeste fællesfaktorberegner: 6 trin

Video: Højeste fællesfaktorberegner: 6 trin
Video: Euklids Algoritmer: Hjørnestenen i Diskret Matematik Forklaret (Lektion 9 - Part 1/3) 2024, Juli
Anonim
Højeste fælles faktorberegner
Højeste fælles faktorberegner

mange af mine venner og børn, jeg vejleder, har problemer med at finde den højeste fælles faktor (HCF) for enhver flok tal. Dette skyldes mest, at uddannelse i mit land virkelig er sub-standard. børn plejer at ty til rutinemæssig læring og hårde regler.

I denne forstand oprettede jeg et program, som beregner HCF.

selvom dette faktisk ikke kan gøres i hånden, og der er endnu lettere og enklere måder at få HCF, tror jeg personligt, at dette er den mest primitive og dermed den mest grundlæggende teknik. Jeg håber, at folk vil være i stand til at forstå arten af HCF.

programmeringssproget, jeg skal skrive i dag, er Microsoft studio 2010 i konsoltilstand

dette er fordi det ikke er så store og små bogstaver, og det er meget brugervenligt og derfor perfekt til en håbefuld nybegynder.

Trin 1: Trin 1: erklæring af variablerne

i ethvert program, når vi vil gemme enhver form for data til manipulation, skal vi deklarere variabler. Selvom der er mange typer i mit program, har jeg kun brugt lokale variabler.

det gemmer integrale variabler i formatet

Dim x Som heltal

denne mærker variabel med navnet "x" som en heltal datatype

så i programmet skal vi deklarere disse variabler

Dim firstNum, secondNum, TEMP, HCF As Integer

Jeg har stort set gemt for variabler ved navnene: firstNum, secondNum, TEMP, HCF

Trin 2: Lagring af variablerne

Når vi har erklæret en variabel, skal vi tildele den en værdi, ellers er den ubrugelig.

For at gøre dette gør vi brug af "=" operatoren

men for at få det læst fra brugeren, har vi brug for en måde, hvorpå det kan indtastes. vi bruger funktionen "Console. ReadLine"

dette er en funktion af visual basic's konsoltilstand, der læser en linje, der er indtastet i konsollen

programmet går sådan her;

firstNum = Console. ReadLine

vi gør derefter det samme med den næste variabel

secondNum = Console. ReadLine

dette gemmer to tal til manipulation af programmet

Trin 3: Sammenligning

derefter sammenligner vi to variabler og kontrollerer, hvilken der er mindre. vi kunne også bruge det større antal, men det ville være nytteløst at lægge for stor belastning på programmet. men hvis begge variabler er ens, kan vi bruge begge

til sammenligning bruger vi if -sætningerne

If condition Then (handling hvis betingelsen er sand)

Ellers Hvis tilstanden da

(handling hvis betingelsen er sand)

Afslut Hvis

så det ser faktisk sådan ud

Hvis firstNum <secondNum Then TEMP = firstNum ElseIf firstNum> secondNum Then TEMP = secondNum

ElseIf firstNum = secondNum Herefter

TEMP = andetNum

Afslut Hvis

Trin 4: Find HCF

i teorien er HCF det højeste heltal, hvormed alle de givne tal individuelt kan divideres med uden at efterlade en rest. eller i en computers sanser en rest på nul

i mit program bliver jeg ved med at dele tallene og stige, indtil jeg får det højest mulige heltal, som deler alle numrene uden at efterlade en rest.

til dette vil jeg bruge en "for iteration loop"

syntaksen lyder:

For i = (et vilkårligt tal) til (et hvilket som helst nummer) trin (inkrementelt tal)

(fungere)

Næste

da jeg ikke kan dividere med 0, skal jeg starte fra 1 og til det mindste tal. dette er fordi HCF ikke kan være større end nogen af tallene. hvis du husker, at vi lagrede det mindste tal i variablen 'TEMP'.

For at sammenligne tallene vil vi bruge en if -sætning.

til denne opgave vil vi også bruge en speciel operator kaldet modulus operator

dette returnerer resten fra en division

dens syntaks er

(nummer) mod (divisor)

i andre programmeringssprog, dvs. C ++, mod kan erstattes af procenttegnet '%'

så til vores program skriver vi

For i = 1 Til TEMP Trin 1

Hvis ((firstNum Mod i = 0) And (secondNum Mod i = 0)) Så

HCF = i

Afslut hvis næste

vi gemmer tallene i variablen "HCF" hver gang der findes en større variabel HCF overskrives

hvis i hvis en faktor for begge tal, så er det gemt i variabel HCF

Trin 5: Visning af output

For at vise output på konsolskærmen bruger vi kommandoen "console.write ()" eller "console.writeline ()"

en vigtig tommelfingerregel er, at skrevne ord skal være omsluttet af apostrofer (""). Variabler behøver ikke at være omsluttet af apostrofer

vi kan også gøre brug af "&" -operatoren til at forbinde linjer, husk at placere et mellemrum på hver side af & -symbolet

således går programmet

Console. WriteLine ("Den højeste fælles faktor er" og HCF)

Desværre venter computeren normalt ikke på brugeren, medmindre den får besked. så vi tilføjer endnu en programlinje, så brugeren kan læse resultatet.

Console. WriteLine ("TRYK PÅ EN KNAP FOR AT AFSLUTTE")

Console. ReadKey ()

Trin 6: For nemhed

dette er min version af programmeringen med kommentarer til hjælp.

Modul Modul1 Sub Main ()

'i ethvert program skal vi erklære variabler

Dim firstNum, secondNum, TEMP, HCF As Integer '"As Integer" symboliserer, at datatypen for disse variabler er heltal

'først informerer vi brugeren om instruktionerne

Console. WriteLine ("indtast to tal for højeste fælles faktor") ', så beder vi brugeren om at indtaste et nummer Console. WriteLine ("indtast første nummer")' vi gemmer cifret i en variabel firstNum firstNum = Console. ReadLine ' så beder vi brugeren om at indtaste et andet nummer Console. WriteLine ("indtast andet nummer") 'på samme måde gemmer vi det også, men i en anden variabel' ønsker vi ikke, at den første skal overskrives secondNum = Console. ReadLine

'vi sammenligner hvilken der er større og gemmer den i en midlertidig opbevaring "TEMP"

Hvis firstNum secondNum Så er TEMP = secondNum

'i klausulen nedenunder lagrede vi en værdi i TEMP, selvom det første og andet tal var ens

'det er fordi vi havde brug for det "højeste" nummer af enten hvad det end måtte være.

ElseIf firstNum = secondNum Herefter

TEMP = secondNum End If

'her starter programmeringen for alvor

'mod -funktionen deler heltalet med et tal og returnerer resten' dette er nyttigt, på denne måde kan vi kontrollere, ved hvilke tal der er resterne nul

'her bruger vi en "FOR ITERATION LOOP" til at udføre jobbet

'vi opretter en variabel' i 'og øger den med 1 efter hver sløjfe

For i = 1 Til TEMP Trin 1 '"Trin 1" viser, at der er et trin på 1 efter hver sløjfe

'som du kan se, brugte vi også en AND -funktion

'det er fordi vi kun havde brug for tal, der deler begge variabler, der giver resten nul

'en anden vigtig bemærkning er, at vi ikke kan begynde i med 0

'det er fordi alt divideret med 0 kan føre til uendelig Hvis ((firstNum Mod i = 0) And (secondNum Mod i = 0)) Så

'vi gemmer tallene i variablen "HCF"

'hver gang der findes en større variabel HCF overskrives HCF = i Afslut hvis næste

Console. Clear () 'denne kommando sletter alt, der er skrevet på konsolskærmen

Console. WriteLine ("worst common factor =" & HCF) 'denne kommando viser meddelelse på konsolskærmen

'kommandoerne nedenunder giver mulighed for at forlade konsolskærmen

Console. WriteLine () Console. WriteLine ("TRYK PÅ ALLE KNAPPER FOR AT AFSLUTTE") Console. ReadKey ()

'P. S

'under programmering, så længe du ikke ødelægger syntakser', kan du frit placere mellemrum, faner eller tomme linjer for at få programmet til at se mindre rodet ud

Afslut Sub

Afslut modul

Anbefalede: