Programmeringstrening er på vei fraenkelt å komplekse. Etter å ha mestret datatyper og språkoperatører, passerer de til sykliske konstruksjoner. Det finnes utallige oppgaver for sykluser: fra utdata av tall til kolonne til beregning av summer på komplekse formler. Ikke desto mindre har begynnelsen programmører fortsatt et spørsmål: "Hvordan kalkulere factorial i Pascal?"
Du kan implementere oppgaven på minst tre måter. De varierer fra operatørene som brukes.
Før du fortsetter å bygge algoritmer ogskrive programmer, bør studere teorien. I matematikk er faktorialproduktet produktet av det heltallet uttrykket er beregnet for, med et positivt heltall mindre enn det.
Et eksempel vil bidra til å forstå definisjonen. La det være nødvendig å finne fakultetet for nummer 3. Løsning: 3! = 3 * 2 * 1 = 6.
Handlingen av utropstegnet, som er plassert etter nummeret, er angitt. Et viktig notat: Faktoriet er bare definert for positive heltall. Samtidig blir begreper for null introdusert: 0! = 1.
Å lese uttrykket for store verdier manuelt er et langt yrke. For å øke hastigheten på prosessen med databehandling, bruk dataprogrammer. Deretter diskuterer vi måter å finne fakultetet i Pascal.
Koden nedenfor viser versjonen av programmet.
Eksemplet bruker en sammensatt konstruksjon med en tilstand som er skrevet før sløyfens kropp. Syntaks av posten:
mens {betingelse} gjør {operator_sequence};
Koden utføres som følger: Programmet kontrollerer gyldigheten av uttrykket {Tilstand}, i tilfelle en positiv sjekk, går til {} Posledovatelnost_operatorov.
Når du går tilbake til programmet, må du være oppmerksom på følgende linjer:
Følgende foreslår å beregne factorial i "Pascal" med hjelp av operatøren gjenta.
Byggesyklus: gjenta {operator_sequence} til {betingelse};
For å forstå hvordan programmet fungerer, bør du vurdere det linje for linje:
Sistnevnte program gjør det også mulig å beregne factorial i "Pascal" og er den mest kompakte størrelsen. Årsak - Operatør Brukt for, for hvilken økningen i disken jeg er spesifisert i syklusparametrene.
Operatørpost: for {initial_value} til {end_value} gjøre Posledovatelnost_operatorov {}.
Koden fungerer som følger (tallene angir linjene i noteringen):
Selv for tall fra de første ti, har fakultetet en verdi større enn datatypen tillater heltall. Derfor vil programmet i "Pascal" vise en feilmelding. For å fikse det enkelt - må du erstatte datatypen for resultatvariabelen med longint eller bruk typer for å lagre ekte verdier.
</ p>