Presentation på ämnet "Pascal ABC programmeringsmiljö". Presentation om ämnet: Pascal ABC programmeringsmiljö Presentation av grunderna i objektorienterad programmering Pascal ABC

1 rutschkana

PASKAL Belyakova Natalya Alexandrovna Lärare i datavetenskap, teknik och konst, MBOU gymnasieskola nr 6 i Kholmsk, Sakhalin-regionen Pascal ABC

2 rutschkana

3 rutschkana

REAL datatyp Om ett tal har ett kommatecken och är ett bråktal, så kallas det REAL. För att lagra reella tal i Pascal används en speciell datatyp - REAL. För att lägga in dem i programmet används operatorn VAR (variabel) EXEMPEL: program p15 ; VAR a, b, c: REAL ; Börja och mer……….

4 rutschkana

VERKLIGA variabler: program summa ; VAR A, B, C: RIKTIGT ; Börja A:= 3,5; B:= 7,6; C:=A + B; writeln("summa = ", c) ; slutet. ______________________________________ Alla reella tal skrivs inte med kommatecken, utan med en punkt!!!

5 rutschkana

Skrivformat för reella variabler: Regelbunden form: 0,7 kan skrivas som 0,7 eller ,7 -2,1 kan skrivas som -2,1 Notation med exponent: Ett tal uttrycks som en mantissa (bråkdel av ett tal) multiplicerat med 10 till någon potens 2700 \u003d 2,7 * 10 Siffran 10 skrivs som bokstaven E, följt av gradens värde: 2,7E3 0,002 \u003d 2 * 10 Siffran 10 skrivs som bokstaven E, följt av gradens värde: 2E-3 3 - 3

6 rutschkana

VERKLIGA variabler: program z16 ; var a, b, c: verklig; börja a:= 17,3; b:= 3,4; c:=a+b; writeln("tillägg A+B = ", c); c:=a-b; writeln("subtraktion A-B = ", c); c:=a*b; writeln("multiplikation A*B = ", c); c:=a/b; writeln("A/B division = ", c); slutet.

7 rutschkana

RIKTIGA funktioner: PROGRAM Z18 ; VAR A , B: RIKTIGT ; BEGIN A:= 2.0 ; (kvadratrotsberäkning) B:= SQRT(A); WRITELN (Kvadratrot (Sqrt (A)) = ", B) ; (sinusberäkning) B:= SIN (A); WRITELN (sinus av talet (SIN (A) = ", B) ; (cosinusberäkning) B : = COS (A); WRITELN ('cosinus för talet (COS (A) = ", B) ;

8 rutschkana

(beräkning av bågtangens) B:= ARCTAN (A); WRITELN (bågtangens av (Arctan (A)) = ", B) ; (logaritmberäkning) B:= LN (A); WRITELN ('logaritm av (LN (A) = ", B) ; (exponentiering av E till potensen A) B:= EXP (A); WRITELN ('exponent till potensen av A (EXP (A) = ", B) ; (beräkning av Pi) B:= PI ; WRITELN (' Pi (Pi) = ", B) Slut.

9 rutschkana

(beräkning av bågtangens) B:= ARCTAN (A); WRITELN ('arctangent för talet (Arctan (A)) = ", B); _______________________________ Utdata från ett reellt tal kan ställas in. Under värdet för variabeln "B" sätter vi 6 siffror, 4 av dem efter decimalkomma: (beräkning av bågtangens) B: = ARCTAN (A ), WRITELN ('bågtangens för talet (Arctan (A)) = ", B: 6: 4) ; _______________________________

10 rutschkana

De viktigaste systemsatserna är: Programnamn program Börja och Sluta Börja och Sluta. Variabler VAR Heltal heltal Realt tal reellt Skriv ut till skärm Skriv('x= ', x) Skriv ut till skärm från nyrad Writeln('x= ', x) Talmodul Abs (x) Kvadrering Sqr(x) Kvadratrot ur tal Sqrt (x) Talsinus Sin (x) Talets Cosinus Cos (x) Bågtangens för tal Arctan(x) Tallogaritm Ln(x) Exponentiering av tal E till potensen av X Exp (x) Beräkning av tal Pi Pi

11 rutschkana

UPPGIFT: z15) Förutsatt att operationen av multiplikation och operationen av kvadrering har samma komplexitet, skriv ner uttrycken på det optimala sättet: Z15a) Z15b) Z15c) Z15d) Z15e) Z16) Skriv ett problem för grundläggande aritmetiska operationer (exempel) i en anteckningsbok) Z17) Beräkna uttrycket: Z18) Skriv ett problem för att beräkna standardfunktionerna för ett tal d:=8 (modul, kvadratrot, kvadrat av ett tal, sinus, cosinus, tangens, bågtans, cotangens, logaritm av ett tal) Z19) Skriv ett program för att beräkna diskriminanten för en andragradsekvation. Ange koefficienterna i programmet med hjälp av tilldelningsoperatorn Z20) Beräkna uttrycket:

12 rutschkana

Z21) Cirkelns d diameter anges. Hitta dess längd () Z22) Givet längden på kubens kanter, a, b, c på kuben. Hitta dess volym och ytarea Z23) Hitta omkretsen L och arean av en cirkel S med en given radie R: L=2πR, S = πR Z24) Givet 2 siffror a och b. Hitta deras aritmetiska medelvärde Z25) Givet 2 icke-negativa tal a och b. Hitta deras geometriska medelvärde (kvadratroten av deras produkt) Z26) Hitta avståndet mellan två punkter med givna koordinater x1 och x2 på den reella axeln: |x2 - x1|. 2

13 rutschkana

Litteratur: M. E. Abrahamyan. programmeringsuppgiftsbok. Elektronisk problembok för programmering. Version 4.6 / Rostov-on-Don - 2007. 2. Ushakov D.M., Yurkova T.A. Pascal för skolbarn. St Petersburg: Piter, 2010. - 256 sid.

glida 2

Programstruktur

Ett Pascal ABC-program har följande form: programprogramnamn; modulanslutningssektion; beskrivningssektion; startsatser; slutsatser. Den första raden kallas programhuvud och är valfri. Modulanslutningssektionen börjar med nyckelordet uses, följt av en kommaseparerad lista med modulnamn. Deklarationssektionen kan innehålla deklarationssektioner för variabler, konstanter, typer, procedurer och funktioner, som följer efter varandra i en godtycklig ordning. Avsnittet för anslutning av moduler och avsnittet för beskrivningar kan saknas. Operatörer separeras från varandra med semikolon.

glida 3

programnamn för programmet; använder avsnitt för att ansluta moduler var avsnitt för beskrivningar start-satser slut.

glida 4

Program - Program; Användning - Användning; Var - beskrivning; Börja - Början; Slut - Slut.

glida 5

glida 6

Bild 7

Bild 8

Bild 9

Bild 10

glida 11

glida 12

använder kommando - användning, öppnas i ett separat fönster

  • glida 13

    Låt oss skriva vårt första program: Låt oss ge vårt program ett namn, det ska skrivas med latinska bokstäver och ska inte börja med en siffra. Varje påstående slutar med - ; Write är ett kommando för att mata ut till visningsporten.

    Bild 14

    Uppgift 1.

    Låt oss visa en hälsning: "God eftermiddag". Programpriml; (valfritt element i programmet. Namnet på detta program är prim1 (observera att programnamnet inte får innehålla mellanslag, det måste börja med en bokstav, endast bestå av latinska bokstäver, siffror och vissa symboler, punkter och kommatecken är inte tillåtna) . Ingen beskrivande del, och omedelbart finns det en sektion med operatörer, som börjar med serviceordet börjar i TurboPascal 7.0, varefter det finns en språkoperatör)begin (Utmatningstext) writeln("God eftermiddag");(I slutet av programmet i TurboPascal 7.0, slutoperatören krävs.)end.

    glida 15

    Program priml; begin writeln("God eftermiddag"); slut.

    glida 16

    Uppgift 2. Ange värdet för variabeln N från tangentbordet

    programInp; använder Crt; var N: heltal; beginClrScr; write("Ange ett nummer från tangentbordet:"); readln(N); (Programmet kommer att pausa här och vänta på inmatning från tangentbordet. Skriv ett nummer på tangentbordet, till exempel 153, och tryck på Enter-tangenten) writeln("Du skrev in ett nummer ", N); readln ( Detta är en tom inmatningssats. Här pausar programmet igen och väntar på att Enter-tangenten trycks ned. Under denna tid kommer du att ha tid att granska resultatet på skärmen.) slut.

    Bild 17

    programInp; usesCrt; var N: heltal; beginClrScr; write("Ange ett nummer från tangentbordet:"); readln(N); writeln("Du skrev in ett nummer", N); läs slutet.

    Bild 18

    Beräkning av en kropps hastighet när den faller från ett torn

    Program Piza; const (Detta är den konstanta deklarationssektionen. Den kommer före var-sektionen) G=9.8; ( Typen av konstanten bestäms automatiskt, enligt formen av talet. I detta fall, på grund av närvaron av en decimalkomma, är denna typ reell ) var V,H: real; begin write("Ange tornhöjd:"); readln(H); V:=Sqrt(2*G*H); writeln("Fallhastighet",V:6:3):( För att förhindra att text och siffra "klibbar ihop", läggs ett mellanslag till efter texten inuti apostroferna) readln end.

    Bild 19

    programpiza; constcrt; G=9,8; varV,H,N:real; börja clrscr; write("Ange tornhöjd:"); readln(H); V:=Sqrt(2*G*H); writeln("Fall rate",V:6:3): readlnend. crt, clrscr; - skärmrengöring

    Bild 20

    glida 21

    Pascal ABC-system

    Pascal ABC-systemet är utformat för att lära ut programmering på Pascal-språket och riktar sig till skolbarn och studenter på grundutbildningen. Enligt författarna bör den inledande utbildningen i programmering ske i ganska enkla och vänliga miljöer, samtidigt bör dessa miljöer ligga nära standardmiljöerna vad gäller programmeringsspråkets möjligheter och ha tillräckligt rika och moderna bibliotek standardsubrutiner. Pascalspråket är erkänt av många ryska lärare som ett av de bästa för grundskoleutbildning. Den MS DOS-orienterade BorlandPascal-miljön är dock föråldrad, och den rika BorlandDelphi-miljön är svår för en nybörjare. Så ett försök att börja lära sig genom att skriva ett evenemangsprogram i BorlandDelphi orsakar många svårigheter för studenten och leder till ett antal felaktigt utformade färdigheter. Pascal ABC-systemet är baserat på DelphiPascal-språket och är designat för att göra en gradvis övergång från enkla program till modulär, objektorienterad, händelse- och komponentprogrammering. Vissa språkkonstruktioner i Pascal ABC tillåter, tillsammans med den huvudsakliga, en förenklad användning, vilket gör att de kan användas i de tidiga inlärningsstadierna. Moduler får till exempel inte delas upp i en gränssnittssektion och en implementeringssektion. I det här fallet är modulerna arrangerade på ungefär samma sätt som huvudprogrammet, vilket gör att du kan börja studera dem parallellt med ämnet "Procedurer och funktioner". Metodkroppar kan definieras direkt inom klasser (i stil med Java och C#), vilket gör att du kan skapa klasser nästan omedelbart efter att ha studerat poster, procedurer och funktioner. Ett antal moduler i Pascal ABC-programmeringssystemet skapades speciellt för utbildningsändamål: GraphABC-rastergrafikmodulen undviker objekt, även om dess möjligheter är praktiskt taget desamma som BorlandDelphis grafikfunktioner. Det är tillgängligt i icke-evenemangsprogram och gör det enkelt att skapa flimmerfria animationer. Händelsemodulen låter dig skapa enkla händelseprogram utan användning av objekt (händelser är vanliga procedurvariabler). Timers och ljudmodulerna låter dig skapa timers och ljud, som också implementeras i en procedurstil. Dessa moduler kan till och med användas i konsolprogram. Behållarklassmodulen Containers låter dig arbeta med grundläggande datastrukturer (dynamiska arrayer, stackar, köer, uppsättningar) implementerade som klasser. ABCObjects vektorgrafikmodul är designad för att snabbt lära dig grunderna i objektorienterad programmering, och låter dig även skapa ganska komplexa spel- och träningsprogram. VCL visuella komponenter-modulen låter dig skapa händelsedrivna applikationer med en huvudform i Delphi-stil. VCL-klasserna är något förenklade jämfört med deras motsvarigheter i Delphi. Det finns en formulärredigerare och en objektinspektör. Tekniken för att återställa formuläret med hjälp av programkoden gör det möjligt att använda en fil (!) för en applikation med huvudformuläret. Pascal ABC har skrivit pekarritmetik (i C-stil) och en komplex typ för att hantera komplexa tal. Pascal ABC-kompilatorn är en front-end-kompilator. Det betyder att den inte genererar körbar kod i form av en .exe-fil, utan skapar ett programträd i minnet som ett resultat av kompilering, som sedan exekveras med den inbyggda tolken. Som ett resultat är programmets hastighet cirka 20 gånger långsammare än hastigheten för samma program som kompilerats i Borland Pascal-miljön, och 50 gånger långsammare än samma program som kompilerats i Borland Delphi-miljön. I Pascal ABC-systemet kan eleven utföra de så kallade verifierbara uppgifterna, som ger formulering av ett problem med slumpmässiga initiala data, kontroll av input-output-operationer, verifiering av lösningens riktighet, samt underhåll av ett protokoll för att lösa problem. Uppgifterna som ska kontrolleras implementeras i form av en elektronisk programmeringsuppgiftsbok ProgrammingTaskbook, som innehåller 1000 programmeringsuppgifter av olika komplexitetsnivåer (från de enklaste uppgifterna till uppgifter om filer, pekare och rekursion) medelklass. Den fritt distribuerade versionen av Pascal ABC & ProgrammingTaskbookMiniEdition innehåller en miniversion av den elektroniska uppgiftsboken (200 uppgifter) och en trunkerad uppsättning uppgifter för utförare Robot och Draftsman. Pascal ABC & ProgrammeringTaskbookCompleteEdition innehåller den kompletta uppsättningen uppgifter.

    För att använda förhandsvisningen av presentationer, skapa ett Google-konto (konto) och logga in: https://accounts.google.com


    Bildtexter:

    Programmeringsspråk ABC Pascal årskurs 9

    Programmeringsspråk Detta är ett formellt teckensystem (en uppsättning instruktioner) som en dator förstår. Ett språks alfabet är den uppsättning symboler som används i den PL.

    I början av 70-talet av XX-talet utvecklade den schweiziska forskaren Niklaus Wirth ett programmeringsspråk och gav det namnet Pascal, för att hedra den berömda franska matematikern från XVII-talet, uppfinnaren av den första beräkningsmaskinen Blaise Pascal. Med hjälp av Pascal kan du utveckla program för olika ändamål. Syntaxen för detta språk är intuitiv även för dem som precis har börjat lära sig grunderna i programmering.

    Pascal-språket är praktiskt för inledande programmeringsinlärning, inte bara för att det lär ut hur man skriver ett program på rätt sätt, utan också hur man korrekt utvecklar metoder för att lösa programmeringsproblem.

    Språkets alfabet är de stora och små bokstäverna i det latinska alfabetet från A till z , samt understreckstecknet (_), som också anses vara en bokstav. Versaler och gemener är utbytbara (lika); Arabiska siffror 0 1 2 3 4 5 6 7 8 9 ; specialtecken: + – * / = . , : ; ^ $ # @ ; speciella parade tecken: () ( ) ; sammansatta tecken: = .. (* *) (..) .

    Programstruktur Ett Pascal-program består av: // Header (valfri del) // Beskrivningsblock // Programkropp

    Beskrivningsblock Etikettbeskrivning; Definition av konstanter; Typdefinition; Beskrivning av variabler; Beskrivning av rutiner och funktioner.

    Programtext Börja ………… (programtext, kommandolista) Slut.

    Programstruktur ProgramnamnProgram ; (programtitel) Använder...; (modulanslutningssektion) Etikett … ; (etikettbeskrivningsavsnitt) Const ...; ( konstant beskrivningssektion ) Typ ... ; ( typdefinitionsavsnitt ) Var ... ; (variabel deklaration avsnitt) Funktion ...; ... Procedur ; (funktions- och proceduravsnitt) BEGIN ... (påstående avsnitt) END.

    Förklaringar Förklaringar kan använda ryska bokstäver (kan stå inom parentes) // kan skrivas efter två snedstreck

    Utdatasats Write(' text '); - Operatör för att visa text och variabler på skärmen (låter markören stå på den aktuella raden); WriteIn(' text '); - Operatör för att visa text och variabler på skärmen (flyttar markören till en ny rad);

    Kompilera (F9) Felsökning av programmet.

    Exempelprogram Börja skriva(' Detta är mitt första program! '); slutet. Kompilera och kör programmet för körning, se resultatet.

    Programexekveringsresultat Stoppa programexekveringen

    Uppgift 001 Skriv ut följande text på skärmen: Hej alla! Jag är den bästa programmeraren SSS #3! Observera att texten visas på två olika rader.

    Aritmetiska operationer Om programmet skriver: Writeln('3+8'); Sedan efter körningen av programmet kommer inskriptionen 3 + 8 att dyka upp på exekveringsskärmen. Om däremot, skriv: Writeln (3 + 8); // utan apostrof Sedan efter att programmet har körts kommer inskriptionen 11 att dyka upp på runtime-skärmen, dvs. Pascal kommer att beräkna sig själv Försök att beräkna uttrycket: 185(14+16)



    Niklaus Wirth I början av 70-talet av XX-talet utvecklade den schweiziska vetenskapsmannen Niklaus Wirth ett programmeringsspråk och gav det namnet Pascal, för att hedra den berömda franska matematikern på 1600-talet, uppfinnaren av den första räknemaskinen Blaise Pascal. Med hjälp av Pascal kan du utveckla program för olika ändamål. Syntaxen för detta språk är intuitiv även för dem som precis har börjat lära sig grunderna i programmering.




    Språkets alfabet är de stora och små bokstäverna i det latinska alfabetet från A till z, samt understreckstecknet (_), som också anses vara en bokstav. Versaler och gemener är utbytbara (lika); Arabiska siffror; speciella enstaka tecken: + – * / =., : ; ^ $ specialpar: () ( ) ; sammansatta tecken: =.. (* *) (..).








    Programstruktur ProgramnamnProgram; (programhuvud) Använder ...; (modulanslutningssektion) Etikett ...; (etikettbeskrivningsavsnitt) Const …; (konstant beskrivningssektion) Typ …; (typdefinitionsavsnitt) Var ...; (avsnitt med variabel deklaration) Funktion …; ...procedur; (funktions- och proceduravsnitt) BEGIN... (påståendeavsnitt) END.











    Aritmetiska operationer Om programmet skriver: Writeln(3+8); Sedan efter körningen av programmet kommer inskriptionen 3 + 8 att dyka upp på exekveringsskärmen. Om däremot, skriv: Writeln (3 + 8); //utan apostrof Efter att programmet har körts kommer inskriptionen 11 att visas på exekveringsskärmen, Pascal kommer att beräkna sig själv Försök att beräkna uttrycket: 185(14+16)

    Programmering i Pascal



    År 1970 ägde åtminstone två stora händelser rum i programmeringsvärlden - operativsystemet UNIX och ett nytt programmeringsspråk skapat av professor Niklaus Wirth från det schweiziska federala tekniska institutet i Zürich. Wirth döpte den efter den store franske matematikern och filosofen Blaise Pascal från 1600-talet.

    Niklaus Wirth

    Blaise Pascal


    Språk Pascal bekvämt för inledande inlärning av programmering, inte bara

    eftersom den lär ut hur man skriver ett program på rätt sätt, men också hur man

    utveckla metoder för att lösa programmeringsproblem


    • versaler och gemener i det latinska alfabetet från A till Z, samt understrecket (_), som också anses vara en bokstav.
    • Versaler och gemener är utbytbara (lika);
    • Arabiska siffror 0 1 2 3 4 5 6 7 8 9 ;
    • speciella enstaka tecken: + – * / = . , : ; ^ $ # @ ;
    • speciella partecken: () { } ;
    • sammansatta tecken: = .. (* *) (..) .

    Programstruktur

    Pascal-programmet består av:

    // Titel (valfritt)


    • Beskrivning av etiketter;
    • Definition av konstanter;
    • Typdefinition;
    • Beskrivning av variabler;
    • Beskrivning av rutiner och funktioner.

    • Börja { programstart }
    • { programkropp }
    • slutet. { slutet av programmet }

    Programstruktur

    program Program namn; ( programtitel }

    använder …; (modulanslutningssektion)

    märka; { etikettbeskrivningsavsnittet }

    Const; { ständig deklarationssektion }

    Toure; { typdefinitionsavsnitt }

    Var; { variabel deklaration avsnitt }

    fungera; procedur; { funktion och procedur avsnitt }

    ... { operatörssektion }


    Vad består programmet av?

    Konstant är ett konstant värde med ett namn.

    Variabel är ett variabelvärde som har ett namn (minnescell).

    Procedur - en hjälpalgoritm som beskriver vissa åtgärder (rita en cirkel).

    Fungera - hjälpalgoritm för att utföra beräkningar (beräkning av kvadratroten, synd) .


    Konstanter

    i2 = 45; { heltal }

    pi = 3,14; { riktigt nummer }

    q=" Vasya "; { teckensträng }

    L=Sant; { booleskt }

    heltals- och bråkdelar separeras med en punkt

    du kan använda ryska bokstäver!

    kan ta två värden:

    • Sant (sant, "ja") Falskt (falskt, "nej")
    • Sant (sant, "ja")
    • Falskt (falskt, "nej")

    Variabler

    Variable typer:

    • heltal ( hela )verklig( verklig ) röding ( en karaktär )sträng( teckensträng ) boolesk ( logisk }
    • heltal ( hela }
    • verklig( verklig }
    • röding( en karaktär }
    • sträng( teckensträng }
    • boolesk( logisk }

    Deklarera variabler ( minnesallokering ) :

    variabler- variabel

    typ - heltal

    var a, b, c: heltal ;

    lista över variabelnamn


    Programexempel

    skriva(' Detta är mitt första program ! ’);

    Kör programmet för exekvering och se resultatet.


    Utgångsoperatör

    Skriva(' text ’); - Operatör för att visa text och variabler på skärmen (låter markören stå på den aktuella raden);

    Writeln(' text ’); - Operatör för att visa text och variabler på skärmen (flyttar markören till en ny rad);


    Uppgiften

    • Visa följande text på skärmen:

    Hej alla!

    Jag är den bästa programmeraren SSS #3!

    Observera att texten visas på två olika rader.



    Beräkning av matematiska uttryck i ABC Pascal


    • Prioritet för utförande av operationer i ABC Pascal samma som i matematik.
    • Det räcker bara att lära sig hur man skriver matematiska uttryck korrekt på språket Pascal

    Aritmetiska operationer

    Drift

    namn

    Tillägg

    Subtraktion

    Multiplikation

    Division (endast verklig typ)

    MEN div B

    Beräkning av heltalsdelen (ofullständig kvot)

    Resterande beräkning

    Beräkna:

    10 div 3 18 mod 4


    Exempel

    Matematisk inträde

    Inspelning på språk Pascal

    37(25+87,5)-17(4,6+1,9)

    37*(25+87.5)-17*(4.6+1.9)

    (a+2*b-3*c)/(5*a+4)

    (a+b)/(a-b)+a*b/3,14

    Decimalkomma in Pascal betecknas med en prick


    Standardfunktioner

    Pascal funktion

    Matematisk notation

    namn

    Det absoluta värdet av talet X (modulo)

    Kvadratera ett nummer

    Utställare

    Beräkna kvadratroten

    Beräknar bråkdelen av ett tal

    Avrundas uppåt till närmaste heltal

    Skär bort bråkdelen

    Bestämma resultat:

    frac(16,68); Rund (16,68); trunk(16.68);


    Standardfunktioner

    Pascal funktion

    Matematisk notation

    namn

    Sinusberäkning

    Cosinusberäkning

    Heltalets del av talet

    Beräknar den naturliga logaritmen

    Att höja ett nummer till en makt

    Returnerar ett slumptal mellan 0 och X

    siffra π


    grader in Pascal måste omvandlas till radianer

    Inspelning på språk Pascal

    Matematisk notation


    PL-operatörer Pascal ABC


    := uttryck; Ett aritmetiskt uttryck kan inkludera konstanter variabelnamn tecken på aritmetiska operationer: konstanter namn på variabler tecken på aritmetiska operationer: + - * / div mod + - * / div mod funktion anropar parentes () funktion anropar parentes () heltals division multiplikation återstod division division " width="640"

    uppdragsoperatör

    variabelnamn := uttryck ;

    Aritmetiska uttryck kan innefatta

    • konstanter variabelnamn tecken på aritmetiska operationer:
    • konstanter
    • variabelnamn
    • tecken på aritmetiska operationer:

    + - * / div mod

    • + - * / div mod
    • funktion anropar parenteser ()
    • funktionsanrop
    • runda parenteser ()

    heltalsdivision

    multiplikation

    resten av divisionen


    Vilka operatörer har fel?

    program qq;

    var a, b: heltal;

    x, y: verklig;

    10 :=x;

    y:= 7 , 8;

    b:= 2,5;

    x:= 2*(a + y);

    a:= b + x;

    variabelnamn måste stå till vänster om tecknet :=

    heltals- och bråkdelar separeras punkt

    du kan inte skriva ett verkligt värde till en heltalsvariabel


    ingångsoperatör

    Läs en); { inmatning av variabelt värde a)

    läs(a,b); { inmatning av variabelvärden a Och b)

    Hur anger man två siffror?

    genom ett utrymme:

    tvärs över Stiga på :


    Utgångsoperatör

    Skriv en); { visar värdet på en variabel a)

    skriva ln (a); { visar värdet på en variabel a Och flytta till en ny linje }

    skrivln(" Hallå! "); { textutmatning }

    skrivln(" Svar: ", c); { visningstext och variabelvärde c)

    writeln(a, "+", b, "=", c);


    Tillägg av två siffror

    En uppgift. Ange två heltal och visa deras summa.

    Den enklaste lösningen:

    program qq;

    var a, b, c: heltal;

    läs(a,b);

    c:= a + b;

    skrivln(c);


    Komplett lösning

    program qq;

    var a, b, c: heltal;

    skrivln(" Ange två heltal ");

    läs(a,b);

    c:= a + b;

    writeln(a, "+", b, "=", c);

    en dator

    Protokoll :

    Ange två heltal

    25+30=55

    användare



    BERÄKNA:

    12 div4=

    1 9 div 5 =

    12 mod 3 =

    1 36 mod 10 =


    På Pascal

    På matematikens språk

    Modul av x

    Kvadratera talet x

    Trunc(x)

    e X

    Rund(x)

    Bråkberäkning

    Kvadratroten ur x

    Avrundar till närmaste heltal

    Slumpmässig(x)

    Skär bort bråkdelen

    Sinus x

    Exp/y*ln(x))

    Returnerar ett slumptal från 0 till x

    Cosinus x

    [ X ]

    X

    Ln x


    Läxa

    1. Beräkna omkretsen och arean av en cirkel för en given radie

    2. Beräkna omkretsen av en rätvinklig triangel från dess ben




    Villkorlig operatör ( fulla formen )

    fullständig grenform

    skick

    Åtgärd 1

    Åtgärd 2

    produktion


    sedan börja ( vad ska man göra om villkoret är sant ) slut annars börja ( vad ska man göra om villkoret är falskt ) slut ; Funktioner: före annars sätts ett semikolon INTE början och slut, innan annat sätts ett semikolon INTE om det finns ett påstående i blocket, du kan ta bort orden start och end" width="640"

    Villkorlig operatör (fulla formen)

    om skick sedan Börja

    { }

    annars börja

    { vad man ska göra om villkoret är falskt }

    Egenskaper:

    • främre annan INTE ett semikolon sätts om det finns en sats i blocket, du kan ta bort orden Börja Och slutet
    • främre annan INTE sätt ett semikolon
    • om det finns ett påstående i blocket kan du ta bort orden Börja Och slutet

    villkorligt uttalande (ej fulla formen )

    ofullständig form av förgrening

    skick

    Handling

    produktion


    sedan börja (vad ska man göra om villkoret är sant) slut; Funktioner: om det finns ett påstående i blocket kan du ta bort orden börjar och slut, om det finns ett påstående i blocket kan du ta bort orden start och end" width="640"

    Villkorlig operatör (ofullständig form)

    om skick sedan Börja

    { vad man ska göra om villkoret är sant }

    Egenskaper:

    • om det finns ett påstående i blocket kan du ta bort orden Börja Och slutet
    • om det finns ett påstående i blocket kan du ta bort orden Börja Och slutet


    Läxa

    • Skriv ett program som reducerar den första siffran med en faktor fem om den är större än den andra.

    2. Skriv ett program där värdet av en variabel från beräknas med formeln: a+b , om men udda Och a*b , om men även .



    b sedan c:= a + b annars c:= b – a;" width="640"

    Läxa

    1. Skriv ett program för att lösa problemet:

    men). Värdet på x är känt. Beräkna y if

    b). Punktkoordinater anges. Ta reda på om denna punkt ligger i 3:e koordinatkvartalet?

    2. Bestäm värdet på variabeln c efter att ha kört följande programfragment:

    a:= 6 ;

    b:= 15 ;

    a:= b - a * 2;

    om ett b då

    c:= a + b

    annars c:= b - a;




    Cykel är det upprepade utförandet av samma sekvens av åtgärder.

    • slinga med känd antal steg ( slinga med parameter ) cykla med okänd antal steg ( slinga med skick )
    • slinga med känd antal steg ( slinga med parameter )
    • slinga med okänd antal steg ( slinga med skick )



    := startvärde till slutvärde börjar (loopkropp) slut; Minska variabeln med 1 (steg -1) : för variabel:= startvärde ner till slutvärde start (loop body) end;" width="640"

    Öka variabeln med 1 (steg 1):

    för variabel := ursprungligt värde till

    slutvärde do Börja

    { öglekropp }

    Minska variabeln med 1 (steg 1) :

    för variabel := ursprungligt värde ner till

    slutvärde do Börja

    { öglekropp }


    Egenskaper:

    • heltal ) till ) eller -1 ( ner till ) Börja Och slutet du kan inte skriva: till ) exekveras aldrig (
    • loopvariabel kan bara vara ett heltal ( heltal )
    • steget att ändra loopvariabeln är alltid 1 ( till ) eller -1 ( ner till )
    • om det bara finns ett påstående i loopkroppen, orden Börja Och slutet du kan inte skriva:
    • om slutvärdet är mindre än startvärdet, loop ( till ) exekveras aldrig ( kontrollera villkoret i början av slingan, en slinga med en förutsättning)

    för jag:= 1 till 8 do

    skrivln( " Hallå " );


    • det är inte tillåtet att ändra loopvariabeln i loopens kropp
    • att ändra start- och slutvärdena inuti slingan kommer inte att ändra antalet steg:

    för jag:= 1 till n börja

    skrivln( " Hallå " );

    n:= n + 1;

    ingen looping




    börja (loopkropp) slut; Funktioner: du kan använda komplexa villkor: om det bara finns ett påstående i cykelns brödtext, kan du inte skriva orden börjar och slutar: du kan använda komplexa villkor: om det bara finns ett påstående i cykelns kropp, orden börjar och slut kan utelämnas: while (ado begin ( body loop ) end; while adoa:= a + 1;" width="640"

    medan skick do Börja

    { öglekropp }

    Egenskaper:

    • du kan använda komplexa villkor: om det bara finns en operator i loopkroppen, orden Börja Och slutet du kan inte skriva:
    • du kan använda komplexa villkor:
    • om det bara finns ett påstående i loopkroppen, orden Börja Och slutet du kan inte skriva:

    medan (a d Börja

    { öglekropp }

    medan a d o

    a:= a + 1;


    b d o a: = a - b; a:= 4; b:= 6; medan a d o d:= a + b;" width="640"
    • villkoret omvärderas varje gång slingan går in
    • om loop-ingångsvillkoret är falskt, exekveras loopen aldrig
    • om villkoret aldrig blir falskt, loopar programmet

    a:= 4; b:= 6;

    medan a b d o

    a:= a - b;

    a:= 4; b:= 6;

    medan a d o

    d:= a + b;




    tills skick " width="640"

    Slinga med postcondition är en slinga där tillståndstestet utförs i slutet av slingan.

    öglekropp

    fram tills skick


    EN UPPGIFT

    Hitta summan av kvadraterna av alla naturliga tal från 1 till 100. Låt oss lösa detta problem med alla tre typerna av cykler.


    "Hejdå" .

    Program qq;

    var a, s: heltal;

    s:=s+a*a;

    skrivln(ar);


    ett hundra ; skrivln(ar); slut." width="640"

    "Innan"

    Program qq;

    var a, s: heltal;

    s:=s+a*a;

    till 100 ;

    skrivln(ar);


    "Med parameter"

    Program qq;

    var a, s: heltal;

    för a:=1 till 100 do

    s:=s+a*a;

    skrivln(ar);


    En uppgift.

    Visa kvadrater och kuber med heltal från 1 till 8.

    Egenhet:

    samma åtgärder utförs 8 gånger.


    blockera "cykel"

    i 1 := i * i;

    i 2 := i 1 * i;

    öglekropp

    jag, i 1 , i 2


    Program

    program qq;

    var i, i1, i2: heltal;

    för i:=1 till 8 börjar

    i1:=i*i;

    i2:= i1*i;

    writeln(i, i1, i2);

    ursprungligt värde

    variabel

    slutvärde


    Slinga med variabel dekrement

    En uppgift. Visa kvadrater och kuber med heltal från 8 till 1 (i omvänd ordning).

    Egenhet: loopvariabeln bör minska.

    Lösning:

    för i:=8 1 börjar

    i1:=i*i;

    i2:= i1*i;

    writeln(i, i1, i2);

    ner till




    array är en grupp av element av samma typ som har ett gemensamt namn och ligger sida vid sida i minnet.

    Egenskaper:

    • alla element är av samma typ hela arrayen har samma namn
    • alla element är av samma typ
    • hela arrayen har samma namn
    • alla element är placerade sida vid sida i minnet

    Exempel:

    • lista över elever i klassen lägenheter i byggnaden skolor i staden
    • lista över elever i klassen
    • lägenheter i byggnaden
    • skolor i staden
    • årliga lufttemperaturdata

    RUM arrayelement

    (INDEX)

    array

    MENANDE arrayelement

    NUMBER (INDEX) arrayelement: 2

    MENANDE arrayelement: 10


    Array-deklaration

    Varför meddela?

    • definiera namn array definiera typ array definiera antal element markera plats i minnet
    • definiera namn array
    • definiera typ array
    • definiera antal element
    • markera plats i minnet

    Array av heltal:

    Storlek via konstant:

    element

    slutindex

    startindex

    var A : array[ 1 .. 5 ] av heltal ;

    var A: matris av heltal ;

    constN=5;


    Vad är fel?

    var a: array av heltal;

    A:= 4,5;

    var a: array ["z".."a"] av heltal;

    A["B"] := 15;

    ["a".."z"]

    var a: array av heltal;

    A := "X";


    Annons:

    Tangentbordsinmatning:

    Element-för-element-operationer:

    Utgång på displayen:

    konst N = 5;

    var a: array av heltal;

    jag: heltal;

    a =

    a =

    a =

    a =

    a =

    för i:=1 till N börjar

    skriv("a[", jag, "]=");

    read(a[i]);

    Varför skriva ?

    för i:=1 till N gör a[i]:=a[i]*2;

    skrivln(" array A:");

    för i:=1 till N do skriv(a[i]:4);

    array A:

    1 0 24 68 112 26


    En uppgift:

    1. Stiga på c tangentbordsmatris med 5 element, hitta det aritmetiska medelvärdet av alla matriselement.

    Exempel:

    Ange fem siffror:

    4 15 3 10 14

    aritmetiskt medelvärde 9.200

    LÖSNING:


    Program qq;

    var N: array av heltal;

    för i:=1 till 5 börjar

    skriv("N[",i,"]");

    för i:=1 till 5 börjar

    write("genomsnitt", k:6:2);