/ / Programmering. Grunnleggende algoritmiske konstruksjoner

Programmering. Grunnleggende algoritmiske konstruksjoner

For å lage programmer du trenger grunnleggendealgoritmiske konstruksjoner. Følgende er den enkleste måten å løse problemer. Den kan for eksempel brukes til å arbeide med lignende eksempler. Det er andre typer: forgrening og looping. De vil bli beskrevet i denne artikkelen. Men først må du forstå hva som utgjør algoritmen som helhet.

algoritme

Ordet "algoritme" kommer fra den latinske algoritmen.Hva betyr det? Det autentiske ordet kom fra navnet på en matematiker, hvis aktivitet falt på 900-tallet. Takket være avhandlingen av al-Khwarizmi, kunne menneskeheten bli kjent med hovedtypen av algoritmisk konstruksjon og generelt med det generelle konseptet.

Tidligere ble rettskrivningen av ordet adoptert - "algoritme". Nå brukes den bare i noen tilfeller.

En algoritme er en prosess som betyr endringkildedata, som forekommer i form av diskrete trinn. Med dette konseptet møter enhver person i livet, uansett hvem han er. Algoritmer kan kalles matlaging av te eller mat, multiplisering eller tilsetning, løse ligninger, etc. Alle husholdningsapparater, hvis arbeidsprosess er automatisert, fungerer på grunn av de klare trinnene som er skrevet i prosessorens minne. Slike algoritmer kalles husholdning. Det er andre typer. Tenk på dem.

Typer av algoritmer

De grunnleggende algoritmiske konstruksjonene er delt inn i flere typer, som vil bli diskutert i denne underklausulen. Hvordan er de?

  1. Informasjon. Slike algoritmer fungerer med en stor mengde data, men volumet av behandlingsprosessen er liten i lengde og ukomplisert.
  2. Control. Driften av slike algoritmer er assosiert med informasjon som gis fra en bestemt kilde. Etter å ha mottatt den sendes spesielle signaler som garanterer driften av enhetene.
  3. Computing. I motsetning til informasjonsalgoritmer, fungerer de beskrevne med små datamengder, men produserer en stor arbeidsprosess.

I hovedsak er algoritmen nøyaktig til de minsteDetaljer instruksjon. Imidlertid kan ikke alle slike data kalles det beskrevne konseptet. For å forstå om en algoritme er en instruksjon eller ikke, bør den sjekkes for visse egenskaper.

Algoritmeegenskaper

Alle grunnleggende algoritmiske konstruksjoner må ha handlinger som "adlyder" dem. La oss vurdere dette spørsmålet mer detaljert.

Hvis du fullstendig sporer driften av algoritmer og deresegenskaper, kan du se at det ikke er nødvendig å forstå komponentene deres, tilsvarer ganske tydelig planen. Riktig resultat vil oppnås selv om du bare mekanisk holder deg til de nødvendige handlingene. Av dette kan vi konkludere med at algoritmen på grunn av mangel på sans for gjenkjennelse av handlinger er ganske realistisk å gi til implementeringen av datamaskinen. Med andre ord, for automatiserte enheter er denne prosessen nødvendig.

Hvilke egenskaper skal de grunnleggende algoritmiske konstruksjonene ha for den mest nøyaktige operasjonen?

  1. Forståelighet.Hver kommando skal være så tydelig som mulig for objektet som blir utført. Det ser ut til å være noe enklere enn for eksempel å tegne et poeng i sentrum, nei, men inntil en kommando er skrevet som lar deg utføre en handling, vil du ikke lykkes.
  2. Effektivitet.Hva betyr denne egenskapen? Obligatorisk mottak av resultatet. Algoritmen kan ikke føre til et slags svar. På grunn av feilen kan du ikke få det ønsket resultatet, men det vil fortsatt være. Dessuten må svaret fås i et visst antall trinn.
  3. Mass. Enhver algoritme skal være relevant for noen klasse av problemer. Mellom seg kan de variere i begynnelsesdataene.
  4. Sikkerhet.Hver handling skal bare ha én verdi og ikke gi muligheten for en derivatdekryptering. Uansett hvor mye programmet starter, bør resultatet alltid være det samme.
  5. Diskret. Algoritme - sekvensiell utførelse av trinn. Hvert trinn er et team, du kan ikke hoppe over eller legge til nye.
  6. Korrekthet.Enhver algoritme som kan brukes på en slags oppgave, skal være riktig for alle. I programmering oppstår problemer ofte ikke i skrivetrinn, som ofte ikke krever mye tid, men når du utfører dem for forskjellige typer spørsmål. Derfor vil feilsøking av algoritmen være et viktig skritt. De grunnleggende algoritmiske konstruksjonene kan hjelpe i dette, hvis repetisjon vil oppnå bedre resultater.

Beskrivelse av algoritmer

Hvis vi snakker om måter å skrive algoritmer på, bør vi trekke frem følgende:

  • Verbal. Med andre ord på et språk som er praktisk for komponenten å kommunisere.
  • Tabell. Ved tingenes logikk blir algoritmen skrevet inn i tabeller og brukes som regel som et hjelpeelement.
  • Formell verbal. Den verbale forklaringsmåten er lagt til grunn, men matematiske formler eller symboler er også skrevet i slike handlinger.
  • Grafisk. En slik algoritme er skrevet på et spesielt språk for flytdiagrammer.

Det siste punktet bør avklares.Hva er et flytskjema? Dette er en lineær eller ikke-lineær algoritme, hvis trinn er registrert ved hjelp av spesielle blokker. De har sin egen konfigurasjon, formål og funksjon. Når det gjelder en slik beskrivelse, er algoritmen skrevet i blokkdiagrammer som er sammenkoblet med linjer. Det er nødvendig å skrive ned denne eller den handlingen i tillegg (trinn).

grunnleggende algoritmiske konstruksjoner

Algoritmiske konstruksjoner

Noen hevder at algoritmer ikke har 3type, og 4. Grunnleggende algoritmiske konstruksjoner: lineære, forgrenede, sykliske. Hva som er årsaken til en slik feilslutning, er ikke klar. For en enkel løsning på komplekse problemer bruker datamaskiner imidlertid algoritmene til disse tre ganske store gruppene. Tenk på dem.

  1. Lineær.En slik beregningsprosess fikk dette navnet på grunn av det faktum at alle handlinger utføres i en lineær sekvens, hvor hvert trinn ikke ble utført mer enn en gang. Hvis vi vurderer skjemaet for oppgaven, plasseres blokkene i den ene under den andre, avhengig av rekkefølgen på utførelsen. Lineære algoritmer fungerer på en slik måte at retningen og betydningen av handlinger ikke endres fra kildedataene. Denne løsningsmetoden er egnet for å beregne summen eller forskjellen, arealet til en figur eller dens omkrets, etc. Det er han som er hovedtypen til algoritmisk konstruksjon.
    algoritme grunnleggende algoritmiske konstruksjoner
  2. Forgrening.Denne beregningsprosessen innebærer tilstedeværelsen av et logisk uttrykk (heretter kalt LP) og valget av en tilstand (de "falske" og "sanne" grenene). I begge tilfeller er bare ett av to eller flere team implementert. Det er ingen oppgaver og kan ikke være der andre alternativer vil bli oppfylt. Hvis algoritmen har to grener, er den enkel; hvis mer enn to, er den kompleks. Dessuten presenteres sistnevnte prosess lett på bekostning av den første. Hovedtypen av algoritmisk konstruksjon er både første ledd og andre. Følgende visning er også inkludert i denne listen.
  3. Syklisk. I en slik algoritme vil det helt sikkert være et element som gjentas mange ganger, mens du bruker forskjellige kildedata. En slik prosess kalles med andre ord en syklus.

Det skal bemerkes at alle de grunnleggende algoritmiske konstruksjonene (følgende, forgrening, looping) er koblet sammen med hverandre, selv om de kan brukes separat.

Opprette løkker og deres typer

Hva skal til for å lage en løkke?

  • Sykelteller.Dette er en variabel som angir startverdien, og når handlingen gjentas, vil den endres. Det må inkluderes i algoritmen. De grunnleggende algoritmiske konstruksjonene av syklisk type vil ikke fungere uten den.
  • Endring av indikatoren for ovennevnte data før en ny repetisjon av selve syklusen.
  • Kontrollerer tilstanden slik at datamaskinen bestemmer om de skal sykle igjen eller ikke.

Looper kan være deterministiske ogiterasjon. Den første er en repetisjon av handlinger med et allerede kjent antall repetisjoner. En iterativ syklus er en som blir gjentatt et ubestemt antall ganger til en tilstand blir sann eller usann.

den viktigste typen algoritmisk design er

Grunnleggende algoritme

Det er verdt å huske det i hovedsakAlgoritmiske konstruksjoner inkluderer ikke den grunnleggende algoritmen. Hvordan er han? Dette konseptet er ikke funnet i moderne litteratur på lenge, men dette betyr ikke at det ikke lenger eksisterer i det hele tatt. Gitt at flere grener eller repetisjoner kan oppstå for å løse problemer, kan følgende konklusjon treffes. De grunnleggende algoritmiske konstruksjonene (lineære, forgrenede, sykliske) er grunnleggende. De representerer faktisk den "strukturelle enheten" for hver såkalt instruksjon.

Lineære algoritmer

Som allerede klart av ovenstående, algoritmeneDet er lineære og ikke-lineære. Vurder det første alternativet. Hvorfor heter han det? Alt er ekstremt enkelt. Faktum er at alle handlingene som er gjengitt i algoritmen har tydelig sekvensiell utførelse, alle trinn utføres strengt etter hverandre. Som regel er slike oppgaver små og har et lavt nivå av kompleksitet.

Et eksempel på en lineær algoritme er prosessen med å lage te:

  1. Hell vann i kjelen.
  2. Sett kjelen på komfyren for å koke.
  3. Ta en kopp.
  4. Hell te i en kopp.
  5. Tilsett sukker.
  6. Hell kokende vann i en kopp etter koking.
  7. Ta en skje.
  8. Rør sukkeret.

Å programmere de grunnleggende algoritmiske konstruksjonene er en ganske vanskelig oppgave, men når det gjelder lineære algoritmer er det ofte veldig enkelt å implementere dem.

gjelder ikke grunnleggende algoritmiske konstruksjoner

Forgreningsalgoritmer

Hvordan forstå at algoritmen er forgrening?Det er nok å sørge for at det er valg mellom to eller flere alternativer, avhengig av om vilkåret er oppfylt eller ikke oppfylt. Hver bane kalles en gren.

Hovedtrekket i en forgreningsalgoritme er eksistensen av en betinget overgang. Det oppstår når du sjekker uttrykket for sant eller usant.

Generelt er logiske uttrykk representerttegn mindre enn, større enn, mindre enn eller lik, større enn eller lik, lik, ikke like. Noen ganger er det alternativer der tilstanden er sammenkoblet ved hjelp av kommandoene og (og) og eller (eller).

Et eksempel på en slik algoritme kan være en løsningav følgende oppgave: hvis uttrykket ((x + 3) / 1) tilsvarer et positivt tall, viser resultatet på skjermen, hvis negativt, informer brukeren om feilen.

Det er ganske enkelt å bruke de grunnleggende algoritmiske konstruksjonene i praksis. Forgrening er en av de vanligste løsningsmetodene.

Deterministisk eller motsyklus

Counter Cycle - En syklus som inkludereren variabel som endrer verdien med et spesifikt trinn. Trinnet er satt av brukeren eller foreskrevet av programmereren mens du skriver programvaren. De fleste språk for denne sløyfen bruker for uttalelse.

For at programmet skal vise to linjer 4 ganger:

  1. "Hvordan har du det?"
  2. “Bra, takk!”
  3. "Hvordan har du det?"
  4. “Bra, takk!”

Det er nødvendig å lage en deterministisk syklus. Hvordan ser det ut? Vi bruker Pascal-språket for en bedre oppfatning av designet.

1. For i: = 1 til 2 gjør:

- i er sløyfetelleren, det er han som bestemmer antall repetisjoner i løkken.

2. Begynn (operatør parentes åpnes slik at begge setningene er kroppens del av løkken og gjentas sammen.)

3. Writeln (‘Hvordan har du det?’):

- ordet writeln betyr utgangen av en frase i enkelt sitater.

4. Writeln (‘Bra, takk’).

5. Slutt.

6.i: = i + 1.

Som du kan se, er det ganske enkelt og til og med interessant å bruke de grunnleggende algoritmiske konstruksjonene. De grunnleggende algoritmene er virkelig kjent, uten dem er det umulig å skrive programmer.

grunnleggende algoritmiske konstruksjoner lineær forgreningssyklisk

Postcondition sløyfe

Postcondition-loop kan gjenta seget ubestemt antall handlinger uten å sette operatørparenteser eller sammensatte ord i dem. Det vil bli utført minst en gang. Løkken løper mens tilstanden er falsk. Det stopper når indikatorene blir riktige. Algoritmen er bygget på dette. De grunnleggende algoritmiske konstruksjonene av denne typen fungerer nettopp i dette tempo.

For å implementere denne syklusen er en design nødvendigGjenta A til B. Bokstavelig talt oversettes det som "gjenta handlinger til tilstanden er falsk." Følgelig, gjennom A, uttrykkes repetisjonsprosessen, gjennom B - data, som som et resultat skal ta riktig verdi.

grunnleggende algoritmiske konstruksjoner grunnleggende algoritmer

Forkondisjonert sløyfe

Postcondition-syklusen er konstruert på en slik måtedet blir i hvert fall henrettet minst én gang. Imidlertid er det tilfeller der syklusen er nødvendig i tilfelle av en spesiell tilstand, og i mangel av dette, bør ikke repetisjoner utføres. Ellers blir resultatet feil. Det er i dette tilfellet en syklus med en forutsetning brukes. For å lage den er konstruksjonen "mens A do B" er nødvendig. Den første kommandoen oversettes bokstavelig talt som “farvel”. A er tilstanden, og B er handlingen som vil gjentas. Hele konstruksjonen betyr: "så lenge tilstanden er sann, utfør handlinger."

Alle grunnleggende algoritmiske konstruksjoner fungererbare i visse tilfeller. Hva er de i en syklus med en forutsetning? Hvis det er nødvendig at ikke en handling gjentas, men flere samtidig, er det verdt å bruke sammensatte operatører eller spesielle parenteser. En syklus kan godt mislykkes hvis tilstanden ikke er sann når den kommer inn i den. Følgelig vil handlingene gjentas hvis de er riktige.

grunnleggende algoritmiske konstruksjoner repetisjon

Hjelperalgoritme

En hjelperalgoritme brukes i andreprosesser ved bare å angi navnet hans. Det gjelder ikke de grunnleggende algoritmiske konstruksjonene. I programmeringsspråk kalles denne prosessen en subroutine. For å lette arbeidet med koden og deretter enklere oppgaveløsning, kombineres hver handling til en blokk, som er en hjelpealgoritme. Hver av dem kan tildeles sitt eget navn, som gjør det mulig å referere gjentatte ganger til det.

likte:
0
Populære innlegg
Åndelig utvikling
mat
y