Online een blokdiagram bouwen met code c. Gratis programma voor het tekenen van stroomdiagrammen. Maak speelblokdiagrammen voor uw kinderen

31.01.2019 Leerpascal

Laten we dus, na de lange en vervelende lof van Pascal, die de redacteuren van veel sites zo graag in hun artikelen publiceren, achterwege laten en direct doorgaan met het meest fundamentele: programmeren.

Op scholen begint de studie van Pascal in de regel met het oplossen van eenvoudige problemen door te componeren verschillende algoritmen of stroomdiagrammen, die velen zo vaak negeren, omdat ze het nutteloze onzin vinden. Maar tevergeefs. Ik, net als elke andere persoon die op zijn minst een beetje weet over programmeren (waar dan ook - in Pascal, C, Delphi), kan ik je verzekeren - het vermogen om correct en snel diagrammen op te stellen is de basis, de basis van programmeren.

Blokdiagram - grafische weergave algoritme. Het bestaat uit functionele blokken die presteren verschillende doeleinden(invoer/uitvoer, begin/einde, functieaanroep, enz.).

Er zijn verschillende hoofdtypen blokken die gemakkelijk te onthouden zijn:

Ik besloot de les van vandaag niet alleen te wijden aan de studie van stroomdiagrammen, maar ook aan de studie van lineaire algoritmen. Zoals je je herinnert, is het lineaire algoritme dat wel de eenvoudigste vorm algoritme. Zijn belangrijkste kenmerk is dat het geen enkele functie bevat. Dit is precies wat het samenwerken met hem eenvoudig en plezierig maakt.

Deze taak zou geen bijzondere problemen moeten opleveren, omdat deze gebaseerd is op formules voor het berekenen van de oppervlakte en de omtrek van een rechthoek die ons allemaal wel bekend zijn, dus we zullen niet blijven hangen bij het afleiden van deze formules.

Laten we een algoritme maken om dergelijke problemen op te lossen:

1) Lees het probleem.
2) Schrijf de voor ons bekende en onbekende variabelen op in “gegeven”. (In probleem nr. 1 omvatten de bekende variabelen de zijden: a, b; de onbekende variabelen zijn het gebied S en de omtrek P)
3) Onthoud of creëer de benodigde formules. (We hebben: S=a*b; P=2*(a+b))
4) Maak een blokdiagram.
5) Schrijf de oplossing in de programmeertaal Pascal.

Laten we de voorwaarde in een beknoptere vorm schrijven.

Vind: S, P

Oplossing voor probleem nr. 1

Doorslaggevende programmastructuur deze taak, is ook eenvoudig:

  • 1) Beschrijving van variabelen;
  • 2) Het invoeren van de waarden van de zijden van de rechthoek;
  • 3) Berekening van de oppervlakte van een rechthoek;
  • 4) Berekening van de omtrek van de rechthoek;
  • 5) Weergave van oppervlakte- en omtrekwaarden;
  • 6) Het einde.

En hier is de oplossing:

Programma rechthoek; Var a, b, S, P: geheel getal; Begin write("Voer de zijden van de rechthoek in!"); leesln(a, b); S:=a*b; P:=2*(a+b); writeln("Gebied van rechthoek: ", S); write("Rechthoekomtrek: ", P); Einde.

Taak #2: De snelheid van de eerste auto is V1 km/u, de tweede is V2 km/u, de afstand tussen hen is S km. Wat zal de afstand tussen hen zijn na T uur als de auto's rijden? verschillende kanten? De waarden van V1, V2, T en S worden ingesteld vanaf het toetsenbord.

We voeren de oplossing opnieuw uit volgens het algoritme. Nadat we de tekst hebben gelezen, gaan we verder met het volgende punt. Zoals met alle fysieke of wiskundige problemen, dit is een overzicht van de probleemomstandigheden:

Gegeven: V1, V2, S, T
Zoek: S1

Vervolgens komt het belangrijkste en tegelijkertijd meest interessante deel van onze oplossing: het opstellen van de formules die we nodig hebben. In de regel zijn in de beginfase van de training alle noodzakelijke formules ons goed bekend en afkomstig uit andere technische disciplines (bijvoorbeeld voor het vinden van het gebied van verschillende figuren, voor het vinden van snelheid, afstand, enz. .).

De formule die wordt gebruikt om ons probleem op te lossen is als volgt:

Het volgende punt van het algoritme is een blokdiagram:

Oplossing voor probleem nr. 2.

En ook de oplossing geschreven in Pascal:

Programmadistributie; Var V1, V2, S, T, S1: geheel getal; (Enter ) begin write("Voer de snelheid van de eerste auto in: "); leesln(V1); write("Voer de snelheid van de tweede auto in: "); leesln(V2); write("Voer tijd in: "); leesln(T); write("Voer de afstand tussen auto's in: "); leesln(S); S1:=(V1+V2)*T+S; writeln("Door ", t,"h. afstand ", S1," km."); Einde.

Je denkt misschien dat deze twee programma's gelijk hebben, maar dat is niet zo. De zijde van de driehoek kan immers 4,5 zijn, en niet 4, en de snelheid van de auto is niet noodzakelijkerwijs een rond getal! En Integer bestaat alleen uit hele getallen. Daarom verschijnt er een foutmelding als ik andere getallen in het tweede programma probeer te schrijven:


Let op: in Pascal, zoals in elke andere programmeertaal decimale ingevoerd met een punt, geen komma!

Om dit probleem op te lossen, moet u onthouden welk type Pascal verantwoordelijk is voor niet-gehele getallen. In hebben we gekeken naar de belangrijkste typen. Dit is dus een echt type: echt. Zo ziet het gecorrigeerde programma eruit:

Zoals u kunt zien, is dit artikel nuttig om te lezen voor zowel beginners als meer ervaren gebruikers Pascal, omdat het opstellen van stroomdiagrammen niet alleen heel eenvoudig en snel is, maar ook heel spannend.

Tegenwoordig wordt elke ontwerper en programmeur geconfronteerd met de constructie van verschillende soorten diagrammen en stroomdiagrammen. Wanneer informatie Technologie hebben nog nooit zo’n belangrijk deel van ons leven in beslag genomen, het tekenen van deze structuren moest op een vel papier gebeuren. Gelukkig worden al deze stappen nu uitgevoerd met behulp van geautomatiseerde software die op de computer van de gebruiker is geïnstalleerd.

Op internet is het vrij eenvoudig om een ​​groot aantal editors te vinden die de mogelijkheid bieden om algoritmische en zakelijke afbeeldingen. Het is echter niet altijd eenvoudig om erachter te komen welke toepassing in een bepaald geval nodig is.

Door zijn veelzijdigheid is het product Microsoft kan nuttig zijn voor professionals die al vele jaren betrokken zijn bij de constructie van verschillende constructies, en gewone gebruikers, die een eenvoudig diagram moeten tekenen.

Net als elk ander programma in de serie Microsoft Office, Visio heeft alles wat je nodig hebt comfortabel werk tools: aanvullende eigenschappen van vormen maken, bewerken, verbinden en wijzigen. Er werd ook een speciale analyse van het reeds gebouwde systeem geïmplementeerd.

Dia

Op de tweede plaats binnen deze lijst Dia is terecht gelegen, waarin al het nodige is voor de moderne gebruiker functies voor het construeren van circuits. Bovendien wordt de editor gratis verspreid, wat het gebruik ervan voor educatieve doeleinden vereenvoudigt.

Enorm standaard bibliotheek vormen en verbindingen, evenals unieke kansen, niet aangeboden door moderne analogen - dit wacht de gebruiker bij toegang tot Dia.

Vliegende logica

Als u op zoek bent naar software waarmee u snel en eenvoudig kunt bouwen het benodigde schema, dan is Flying Logic precies wat u nodig heeft. Er is geen omslachtige, complexe interface en een groot aantal visuele instellingen diagrammen. Eén klik - een nieuw object toevoegen, de tweede - een vereniging met andere blokken creëren. U kunt schema-elementen ook in groepen combineren.

In tegenstelling tot zijn analogen heeft deze editor dat niet een groot aantal verschillende vormen en verbindingen. Bovendien is het mogelijk om weer te geven aanvullende informatie op blokken, wat uitgebreid wordt beschreven in de recensie op onze website.

BreezeTree-software FlowBreeze

FlowBreeze is dat niet apart programma, en verbonden met zelfstandige module, wat de ontwikkeling van diagrammen, stroomdiagrammen en andere infographics enorm vergemakkelijkt.

Natuurlijk is FlowBreeze software die vooral bedoeld is voor professionele ontwerpers en dergelijke, die alle fijne kneepjes van de functionaliteit begrijpen en begrijpen waar ze geld voor betalen. Het zal voor gemiddelde gebruikers uiterst moeilijk zijn om de editor te begrijpen, vooral omdat de interface in het Engels is.

Edraw MAX

Net als de vorige editor is Edraw MAX een product voor gevorderde gebruikers die professioneel bij dergelijke activiteiten betrokken zijn. In tegenstelling tot FlowBreeze is het echter op zichzelf staand software met talloze mogelijkheden.

Qua interfacestijl en werking lijkt Edraw sterk op . Het wordt niet voor niets de belangrijkste concurrent van laatstgenoemde genoemd.

AFCE-editor voor algoritmestroomdiagrammen

Deze redacteur is een van de minst voorkomende onder de soorten die in dit artikel worden gepresenteerd. Dit komt door het feit dat de ontwikkelaar - een gewone leraar uit Rusland - de ontwikkeling volledig heeft verlaten. Maar er is nog steeds vraag naar zijn product, omdat het perfect is voor elk scholier of student die de basisprincipes van programmeren leert.

Bovendien is het programma volledig gratis en is de interface uitsluitend in het Russisch gemaakt.

FCEditor

Het concept van het FCEditor-programma verschilt radicaal van de andere die in dit artikel worden gepresenteerd. Ten eerste gebeurt het werk uitsluitend met algoritmische stroomdiagrammen, die actief worden gebruikt bij het programmeren.

Ten tweede kan de FSEditor onafhankelijk in automatische modus bouwt alle structuren. Het enige dat de gebruiker nodig heeft, is het kant-en-klare importeren broncode op een van beschikbare talen programmeren en exporteer vervolgens de code die is omgezet in een diagram.

BlokSjem

Het BlockShem-programma biedt helaas veel minder functies en gemak voor gebruikers. Er is geen automatisering van het proces in welke vorm dan ook. In Flowchart moet de gebruiker de vormen handmatig tekenen en ze vervolgens combineren. Deze editor is meer een grafische editor dan een objecteditor bedoeld voor het maken van diagrammen.

Helaas is de bibliotheek met figuren in dit programma buitengewoon slecht.

Zoals je kunt zien, is dat zo grote selectie software ontworpen voor het construeren van blokdiagrammen. Bovendien verschillen toepassingen niet alleen in het aantal functies - sommige impliceren een fundamenteel ander werkingsprincipe, te onderscheiden van analogen. Daarom is het moeilijk om te adviseren welke editor je moet gebruiken: iedereen kan precies het product kiezen dat hij of zij nodig heeft.

Stroomdiagrammen zijn diagrammen die de stappen van een proces weergeven. Eenvoudige stroomdiagrammen zijn eenvoudig te maken en door de eenvoud en duidelijkheid van de vormen zijn ze gemakkelijk te begrijpen.

Opmerking. U kunt ook automatisch een eenvoudig stroomdiagram van uw gegevens maken met behulp van de Data Visualizer in Visio Online (abonnement 2). Meer informatie Zie het artikel Diagrammen maken met Data Visualizer.

Steekproef " Eenvoudig blokdiagram" in Visio bevat vormen die u kunt gebruiken om verschillende processen visueel weer te geven. Het is vooral handig voor het weergeven van eenvoudige bedrijfsprocessen, zoals het voorstelontwikkelingsproces dat in de onderstaande afbeelding wordt weergegeven.

Naast de sjabloon Eenvoudig stroomdiagram biedt Visio een verscheidenheid aan meer specifieke diagramsjablonen, zoals gegevensstroomdiagrammen, tijdlijnen en softwaremodellen.

Een stroomdiagram maken

    Start de Visio-toepassing.

    Dubbelklik op het pictogram Eenvoudig blokdiagram.

    Om elementen van een stroomdiagram te verbinden, beweegt u uw muis over de eerste vorm en klikt u op de pijl die naar de vorm wijst waarmee u verbinding wilt maken. Als de tweede vorm niet naast de eerste staat, moet u de kleine pijl naar het midden van de tweede vorm slepen.

    Als u de richting van de connectorpijl wilt wijzigen, selecteert u de verbinding en vervolgens op het tabblad in de groep Vorm stijlen klik op artikel Lijn Pijlen en selecteer de goede richting en het type pijl.

Automatische uitlijning en afstand

    Druk op CTRL+A om alle objecten op de pagina te selecteren.

    Op het tabblad Thuis in de groep Bestellen klik op de knop Positie en selecteer Automatische uitlijning en afstand.

Mocht dit niet leiden tot het gewenste resultaat, annuleer het door op CTRL+Z te drukken en gebruik andere knopmenu-opties Uitlijning En Positie.

Wat vertegenwoordigen stroomdiagrammen?

Bij het openen van een sjabloon Eenvoudig blokdiagram een reeks elementen wordt geopend Eenvoudige stroomdiagramvormen. Elke figuur in deze set vertegenwoordigt een of andere fase van het proces. Maar de cijfers hebben geen universele betekenis; hun betekenis wordt bepaald door de makers en gebruikers van stroomdiagrammen. De meeste stroomdiagrammen gebruiken drie of vier soorten vormen, en dit bereik wordt alleen uitgebreid als er specifieke behoeften ontstaan.

Tegelijkertijd geven de namen van vormen in Visio het gebruik ervan aan. De meest voorkomende vormen worden hieronder beschreven.

Wat vertegenwoordigen stroomdiagrammen?

Visio 2010 bevat nog veel meer gespecialiseerde sets stencils en vormen die u in een stroomdiagram kunt gebruiken. Zie het artikel voor meer informatie over andere vormen.

Opmerking: Kunt u de vorm die u zoekt niet vinden? Zie Vormen ordenen en zoeken met behulp van het venster Vormen voor meer informatie over het zoeken naar andere vormen.

Een stroomdiagram maken

    Open het tabblad Bestand.

    Tab Bestand niet weergegeven

    Als tabblad Bestand niet wordt weergegeven, gaat u verder met de volgende stap in de procedure.

    Selecteer een team Creëren en punt Blokdiagram en dan in de lijst Beschikbare sjablonen selecteer element Eenvoudig blokdiagram.

    Klik op de knop Creëren.

    Voor elke stap in het proces dat u documenteert, sleept u de juiste stroomdiagramvorm naar uw document.

    Opmerking: Zie voor informatie over het gebruik van vormen om elke stap in een proces weer te geven.

    Standaard rechthoekig

    Rechte connectoren

    Om terug te keren naar de normale bewerking op een tabblad Thuis in de groep Dienst klik op de knop Wijzer.

    Als u tekst voor een vorm of verbindingslijn wilt toevoegen, selecteert u deze en voert u tekst in. Wanneer u klaar bent met het invoeren van tekst, klikt u in een leeg gedeelte van de pagina.

    Als u de richting van de connectorpijl wilt wijzigen, selecteert u de verbinding en klikt u vervolgens in de groep op de pijl rechts van het label Lijn, plaats de muisaanwijzer op het item Pijlen en selecteer de gewenste richting.

Een groot stroomdiagram afdrukken

Voordat u begint met afdrukken, moet u ervoor zorgen dat de tekenpagina die in Visio wordt weergegeven het volledige stroomdiagram bevat. Vormen die buiten de pagina in Visio uitkomen, worden niet afgedrukt.

Ga als volgt te werk om een ​​groot stroomdiagram af te drukken:

Wat vertegenwoordigen stroomdiagrammen?

Wanneer u de sjabloon Eenvoudig stroomdiagram opent, wordt ook het stencil Eenvoudige stroomdiagramvormen geopend. Elke vorm in de set elementen komt overeen met een specifieke stap in het proces.

Van de vormen in het stencil Simple Flowchart Shapes worden er slechts enkele veel gebruikt. Deze cijfers worden hieronder beschreven. Zie de link (Minder populaire stroomdiagramvormen) aan het einde van dit gedeelte voor meer informatie over andere vormen.

Minder populaire stroomdiagramvormen

    Dynamische verbindingslijn. Deze verbindingslijn omzeilt de figuren die op zijn pad liggen.

    Dit is een verbindingslijn met aanpasbare kromming.

    Dit is een tekstvak met een rand waarvan het formaat wordt aangepast op basis van de hoeveelheid tekst die u invoert. De breedte kan worden ingesteld door de zijkanten van de vorm te slepen. Deze figuur vertegenwoordigt geen stap in een proces, maar is nuttig voor het labelen van een stroomdiagram.

    Opmerking. Dit is een vak tussen vierkante haakjes dat van formaat verandert afhankelijk van de hoeveelheid tekst die u invoert. De breedte kan worden ingesteld door de zijkanten van de vorm te slepen. Net als het Auto-Height Field vertegenwoordigt dit cijfer geen stap in het proces. Gebruik het om notities toe te voegen aan stroomdiagramvormen.

    Handmatige invoer. Dit is de fase waarin een persoon informatie aan het proces verstrekt.

    Handmatige bediening. Dit is een stap die door een persoon moet worden voltooid.

    Interne opslag. Deze vorm vertegenwoordigt gegevens die op een computer zijn opgeslagen.

    Directe gegevens. Deze figuur vertegenwoordigt gegevens die op een zodanige manier zijn opgeslagen dat voor elk aparte ingang directe toegang mogelijk. Dit komt overeen met de manier waarop gegevens op de harde schijf van een computer worden opgeslagen.

    Seriële gegevens. Deze vorm vertegenwoordigt gegevens die opeenvolgend zijn opgeslagen (bijvoorbeeld gegevens op magneetband). Dergelijke gegevens kunnen alleen sequentieel worden gelezen. Om bijvoorbeeld toegang te krijgen tot record 7, moet u eerst de records 1 t/m 6 bekijken.

    Kaart en papieren rompslomp. Dit cijfer vertegenwoordigt een ponskaart of papieren rompslomp. In het begin computersystemen Ponskaarten en papieren tapes werden gebruikt om gegevens te schrijven en te lezen en om programma's op te slaan en uit te voeren.

    Weergave. Deze vorm vertegenwoordigt gegevens die aan de gebruiker worden weergegeven (meestal op een computerscherm).

    Voorbereiding. Deze figuur vertegenwoordigt de initialisatie van variabelen ter voorbereiding op het uitvoeren van een procedure.

    Parallelle modus. Deze figuur laat zien waar twee verschillende processen gelijktijdig kunnen werken.

    Cycluslimiet. Deze figuur toont het maximale aantal keren dat een cyclus kan worden herhaald voordat naar de volgende stap wordt gegaan.

    Overdracht van controle. Dit cijfer geeft een fase aan waarin, als aan bepaalde voorwaarden is voldaan, geen overgang naar de volgende, maar naar een andere fase plaatsvindt.

Een stroomdiagram maken

    Op het menu Bestand Creëren, om vervolgens te wijzen Blokdiagram en selecteer Eenvoudig blokdiagram.

    Voor elke stap in het proces dat u documenteert, sleept u de juiste stroomdiagramvorm naar uw document.

    Verbind de stroomdiagramvormen met behulp van een van de volgende methoden.

    Twee vormen met elkaar verbinden

    Eén vorm met meerdere vormen verbinden via één enkel verbindingspunt

    Standaard rechthoekig het verbinden van lijnen en het verbinden van een punt op een vorm met drie andere vormen ziet eruit als in de onderstaande afbeelding.

    Zodat de verbindingslijnen er recht uit komen middelpunt eerste figuur en leidde tot punten op alle andere figuren, moet u opgeven Rechte connectoren, zoals weergegeven in de onderstaande afbeelding.

    Op de werkbalk Standaard klik op gereedschap Wijzer om naar terug te keren normale modus bewerkingen.

    Als u tekst voor een vorm of verbindingslijn wilt toevoegen, selecteert u deze en voert u tekst in. Wanneer u klaar bent met het invoeren van tekst, klikt u in een leeg gedeelte van de pagina.

    Om de richting van de verbindingslijn te wijzigen, beweegt u uw muisaanwijzer over het menu Operaties en selecteer Draai de uiteinden.

Grote blokdiagrammen afdrukken

De eenvoudigste manier om een ​​stroomdiagram af te drukken dat groter is dan papier, is door het op meerdere vellen papier af te drukken en deze vervolgens aan elkaar te lijmen.

Voordat u begint met afdrukken, moet u ervoor zorgen dat de tekenpagina die in Visio wordt weergegeven het volledige stroomdiagram bevat. Vormen die buiten de pagina in Visio uitkomen, worden niet afgedrukt. Om te controleren of het stroomdiagram op de documentpagina past, gebruikt u het voorbeeld in het dialoogvenster Pagina-opties(menu Bestand, paragraaf Pagina-opties, tabblad Afdrukinstellingen).

1. Blokdiagram. die te groot is voor de Visio-tekenpagina.

2. Een stroomdiagram dat op een Visio-tekenpagina wordt geplaatst.

Wijzig de grootte van de Visio-tekenpagina zodat deze past bij de grootte van het stroomdiagram

    Wanneer een stroomdiagram geopend is, in het menu Bestand selecteer artikel Pagina-opties.

    Open het tabblad Paginagrootte.

    Op het tabblad Paginagrootte klik.

Om te zien hoe het stroomdiagram eruit zal zien wanneer het wordt afgedrukt, gaat u naar het menu Bestand selecteer artikel Voorbeeld . De onderstaande afbeelding toont het stroomdiagram dat op vier vellen Letter-formaat wordt afgedrukt.

Grote stroomdiagrammen afdrukken op meerdere vellen papier

    Op het menu Bestand selecteer artikel Pagina-opties.

    Op het tabblad Afdrukinstellingen in het veld Papier in de printer selecteren juiste maat papier als dit nog niet is opgegeven. Druk niet op de knop OK.

    Open het tabblad Paginagrootte en klik Formaat aanpassen op basis van inhoud. Het voorbeeldvenster toont nu het verschil tussen nieuwe pagina en papier in de printer.

    Klik op de knop OK.

    Op het menu Bestand selecteer artikel Voorbeeld om te zien hoe het stroomdiagram eruit zal zien als het wordt afgedrukt.

    Opmerking: Er kunnen gearceerde marges tussen pagina's verschijnen. Deze komen overeen met de gebieden die op beide vellen worden afgedrukt. Hierdoor kunt u de vellen aan elkaar lijmen, zodat er geen lege ruimtes in het blokdiagram ontstaan.

    Zodra het afdrukken is voltooid, kunt u de marges bijsnijden, de pagina's op de juiste manier rangschikken en ze aan elkaar lijmen.

Het is uiterst belangrijk om de taal van stroomdiagrammen te gebruiken bij het ontwikkelen van een algoritme voor het oplossen van een probleem. De oplossing voor hetzelfde probleem kan worden geïmplementeerd met behulp van verschillende algoritmen die van elkaar verschillen, zowel qua rekentijd en volume van de berekeningen, als qua complexiteit. Door deze algoritmen vast te leggen met behulp van stroomdiagrammen kunt u ze vergelijken, het beste algoritme selecteren, fouten vereenvoudigen, opsporen en elimineren.

Weigering van de stroomdiagramtaal bij het ontwikkelen van een algoritme en het direct ontwikkelen van het algoritme in een programmeertaal leidt tot aanzienlijk tijdverlies en tot de keuze voor een suboptimaal algoritme. Daarom is het noodzakelijk om in eerste instantie een algoritme te ontwikkelen om het probleem op te lossen in de taal van stroomdiagrammen, waarna het algoritme wordt vertaald in een programmeertaal.

Bij het ontwikkelen van een algoritme voor een complex probleem wordt de methode gebruikt stap voor stap detaillering. De eerste stap is nadenken algemene structuur algoritme zonder gedetailleerde studie van de afzonderlijke onderdelen ervan. Blokken die details vereisen, worden omlijnd stippellijn en in de daaropvolgende stappen van de algoritmeontwikkeling worden ze doordacht en gedetailleerd.

Bij het ontwikkelen van een algoritme voor het oplossen van een probleem kunnen de volgende fasen worden onderscheiden:

  • Fase 1. Wiskundige beschrijving van de oplossing voor het probleem.
  • Fase 2. Definitie van invoer- en uitvoergegevens.
  • Fase 3. Ontwikkeling van een algoritme om het probleem op te lossen.

Basisalgoritmische ontwerpen

In de programmeertheorie is bewezen dat je willekeurig kunt schrijven complex algoritme genoeg drie basisstructuren:

  • volgen (lineair algoritme);
  • vertakking (vertakkingsalgoritme);
  • loop-bye (round-robin-algoritme).

Lineaire algoritmen

Lineair algoritme wordt gevormd door een reeks acties die de een na de ander volgen. Om bijvoorbeeld de oppervlakte van een rechthoek te bepalen, moet u eerst de lengte van de eerste zijde instellen, vervolgens de lengte van de tweede zijde instellen en pas daarna de formule gebruiken om de oppervlakte ervan te berekenen.

Voorbeeld

TAAK. Ontwikkel een algoritme voor het berekenen van de hypotenusa van een rechthoekige driehoek met behulp van de bekende waarden van de lengtes van de benen a en b.

Met dit probleem als voorbeeld zullen we alle drie fasen van het ontwikkelen van een algoritme voor het oplossen van het probleem bekijken:

De wiskundige oplossing voor het probleem is de bekende formule:

,

waarbij c de lengte van de hypotenusa is, zijn a, b de lengtes van de benen.

De invoergegevens zijn de waarden van benen a en b. De output is de lengte van de hypotenusa – c.

Vertakkingsalgoritmen

bevat een voorwaarde, afhankelijk van welke een bepaalde reeks acties wordt uitgevoerd.

Voorbeeld

TAAK. Ontwikkel een algoritme voor het berekenen van het grootste getal uit twee getallen x en y.

Fase 1. Wiskundige beschrijving van de oplossing voor het probleem.

Uit een wiskundecursus is bekend dat als x > y, dan grootste aantal x als x< y, то наибольшее число y, если x = y, то число x равно числу y.

Fase 2. Bepaling van input- en outputgegevens.

De invoergegevens zijn de waarden van de getallen x en y. De uitvoer is:

  • grootste aantal
  • een van de getallen als de getallen gelijk zijn

Om het probleem op te lossen moeten we de waarden van x en y kennen.

Fase 3. Ontwikkeling van een algoritme om het probleem op te lossen.

In het diagram van het algoritme voor het oplossen van het probleem worden de nummers van de elementen van het algoritme aangegeven in cijfers, die overeenkomen met het aantal stappen in de verbale beschrijving van het algoritme

In het beschouwde algoritme (Fig. 3) zijn er drie takken voor het oplossen van het probleem:

  • ten eerste: dit zijn elementen 1, 2, 3, 4, 8.
  • ten tweede: dit zijn elementen 1, 2, 3, 5, 6, 8
  • derde: dit zijn elementen 1, 2, 3, 5, 7, 8.

De keuze voor de vertakking wordt bepaald door de x- en y-waarden in de elementen 3 en 5, dit zijn voorwaarden die bepalen in welke volgorde de elementen van het algoritme worden uitgevoerd. Als aan de voorwaarde (gelijkheid) geschreven in het “oplossings”-symbool is voldaan voor de ingevoerde waarden van x en y, worden vervolgens de elementen 4 en 8 uitgevoerd. Dit volgt uit het feit dat ze verbonden zijn door een lijn met het label “ja ' en de richting (volgorde) van de berekeningen wordt aangegeven met een pijl.

Als niet aan de voorwaarde in element 3 wordt voldaan, wordt element 5 vervolgens uitgevoerd. Het is verbonden met element 3 door een regel met het label "nee". Als aan de voorwaarde geschreven in element 5 wordt voldaan, worden de elementen 6 en 8 uitgevoerd, anders worden de elementen 7 en 8 uitgevoerd.

Cyclische algoritmen

bepaalt de herhaling van een deel van de acties (bewerkingen) totdat een voorwaarde wordt overtreden, waarvan de vervulling aan het begin van de cyclus wordt gecontroleerd. Een reeks herhaaldelijk uitgevoerde bewerkingen wordt de body van een lus genoemd.

Algoritmen waarbij individuele acties vele malen worden herhaald, worden genoemd cyclische algoritmen, De reeks acties die verband houden met herhaling wordt aangeroepen cyclus.

Bij het ontwikkelen van een cyclisch structuuralgoritme worden de volgende concepten onderscheiden:

  • cyclusparameter – een waarde waarvan de waarde verandert bij herhaling van de cyclus;
  • begin- en eindwaarden van de cyclusparameters;
  • cyclusstap – de waarde waarmee de cyclusparameter bij elke herhaling verandert.

De cyclus is georganiseerd volgens bepaalde regels. Round Robin-algoritme bestaat uit een lusvoorbereiding, een luslichaam en een lusvoortzettingsvoorwaarde.

Cyclusvoorbereiding omvat taakgerelateerde activiteiten initiële waarden voor lusparameters:

  • beginwaarden van de cyclus;
  • luseindwaarden;
  • cyclus stap.

Het lichaam van de lus omvat:

  • herhaalde acties om de benodigde hoeveelheden te berekenen;
  • het voorbereiden van de volgende lusparameterwaarde;
  • voorbereiding van andere waarden die nodig zijn voor herhaalde uitvoering van acties in de body van de lus.

De cyclusvoortzettingsvoorwaarde bepaalt de toelaatbaarheid van het uitvoeren van herhaalde acties. Als de lusparameter gelijk is aan of groter is dan de eindwaarde van de lus, moet de uitvoering van de lus worden beëindigd.

Voorbeeld

TAAK. Ontwikkel een algoritme voor het berekenen van de som van natuurlijke getallen van 1 tot 100.

Fase 1. Wiskundige beschrijving van de oplossing voor het probleem.

Laten we de som van de natuurlijke getallen aangeven met S. Vervolgens kan de formule voor het berekenen van de som van de natuurlijke getallen van 1 tot 100 als volgt worden geschreven:

waarbij Xi een natuurlijk getal X is met getal i, dat varieert van 1 tot n, is n=100 het aantal natuurlijke getallen.

Fase 2. Bepaling van input- en outputgegevens.

De invoergegevens zijn natuurlijke getallen: 1, 2, 3, 4, 5, …, 98, 99, 100.

Afdruk– de waarde van de som van de termen van een reeks natuurlijke getallen.

Lusparameter een waarde die het aantal herhalingen van de cyclus bepaalt. In ons geval is i het getal van een natuurlijk getal.

Voorbereiding van de cyclus bestaat uit het instellen van de begin- en eindwaarden van de lusparameter.

  • de initiële waarde van de lusparameter is 1,
  • de uiteindelijke waarde van de lusparameter is N ,
  • De lusstap is 1.

Voor een correcte optelling moet u eerst de beginwaarde van de som op 0 zetten.

Het lichaam van de lus. Het lichaam van de lus verzamelt de waarde van de som van getallen en berekent ook volgende waarde cyclusparameters met behulp van de formules:

Voorwaarde voor het voortzetten van de lus: de cyclus moet worden herhaald totdat het laatste lid van de reeks natuurlijke getallen is toegevoegd, d.w.z. totdat de lusparameter kleiner is dan of gelijk is aan de eindwaarde van de lusparameter.

Fase 3. Ontwikkeling van een algoritme om het probleem op te lossen.

Laten we de volgende notatie introduceren: S is de som van de reeks, i is de waarde van het natuurlijke getal.

De beginwaarde van de cyclus is i=1, de eindwaarde van de cyclus is i =100, de cyclusstap is 1.

Verbale beschrijving van het algoritme Een algoritme schrijven in stroomdiagramtaal
  1. Het begin van het algoritme.
  2. Cyclusvoorbereiding: S:=0; ik=1; n= 100;
  3. Controle van de toestand. Als ik<=n , то перейти к шагу 4, иначе к шагу 6.
  4. Cumulatie van het bedrag: S:=S+i;
  5. Berekening van de volgende waarde van de lusparameter: i:=i+1;
  6. Informatie-uitvoer: som van natuurlijke getallen – S.
  7. Einde van het algoritme.

In het diagram van het algoritme voor het oplossen van het probleem worden de nummers van de elementen van het algoritme in cijfers aangegeven. De aantallen elementen komen overeen met het aantal stappen in de verbale beschrijving van het algoritme.








Terug Vooruit

Aandacht! Diavoorbeelden zijn uitsluitend voor informatieve doeleinden en vertegenwoordigen mogelijk niet alle kenmerken van de presentatie. Als u geïnteresseerd bent in dit werk, download dan de volledige versie.

Lesdoelstellingen.

Educatief - systematisering van kennis, vaardigheden en capaciteiten over het onderwerp "Algoritmen en artiesten"; oefenen van vaardigheden in het samenstellen van algoritmen en deze presenteren in de vorm van stroomdiagrammen.

Educatief – het vergroten van de motivatie van studenten, het ontwikkelen van vaardigheden op het gebied van zelforganisatie, onafhankelijkheid en initiatief.

Ontwikkelingsgericht – ontwikkeling van figuurlijk, logisch denken van studenten; vermogen om kennis te analyseren en te synthetiseren; vorming van informatiecultuur onder studenten.

Apparatuur: computer, projector, scherm, presentatie.

VOORTGANG VAN DE LES

I. Organisatiemoment (dia's 1, 2).

II. Basiskennis bijwerken (dia's 3, 4, 5).

  • Noem de eigenschappen van het algoritme.
  • Noem de soorten algoritmen.
  • Wat is een lineair algoritme.
  • Wat is een vertakkingsalgoritme?
  • Wat is een round robin-algoritme?
  • Welke soorten cyclische algoritmen ken je?
  • Noem manieren om het algoritme te presenteren.
  • Welke van de volgende figuren worden gebruikt in blokdiagrammen?
  • 10. Noem op basis van deze blokdiagrammen het type algoritme.

    lineair

    lus met voorwaarde

    vertakking (volledige vorm)

    lus met postconditie

    vertakking (onvolledige vorm)

    lus met parameter

    III. Probleem oplossen

    Docent: Nu gaan we verder met het oplossen van problemen. Vandaag gaan we samen met u blokdiagrammen bouwen.

    Taak 1. Bepaal de afstand die een persoon heeft afgelegd als de tijd, bewegingssnelheid en de beweging uniform bekend waren. (Dia 6)

  • Jongens, wat weten we uit de probleemstelling? ( Snelheid, tijd en beweging waren uniform, wat betekent dat we de afstand berekenen met de formule S=v*t)
  • Wat moeten jij en ik doen voordat we een stroomdiagram maken? (Maak een algoritme)
  • Laten we verbaal een verbaal algoritme samenstellen.
  • Algoritme

    1. Voer v, t in.

    2. Berekening van s.

    3. Conclusie s.

    • Vertel me eens, welk algoritme hebben we gekregen? ( Lineair algoritme)
    • Laten we nu verder gaan met het bouwen van een blokdiagram. Welke stroomdiagramelementen hebben we nodig? ( Start, einde, gegevensinvoer, afstandsberekening, resultaatuitvoer) alle elementen op het scherm.
    • Jongens, zet alle elementen in de juiste volgorde. ( Het resultaat staat op het scherm)

    Bereken (dia 7).

    • Waar beginnen we? (Maak een verbaal algoritme)
    • Waar moet je op letten bij deze taak? (We berekenen de waarde van de breuk; de noemer bevat het verschil 7-y, dat, afhankelijk van de waarde van y, gelijk kan zijn aan nul, in dit geval zal er geen oplossing zijn)

    Algoritme

    1. Voer a, y in.

    2. Als 7-y=0, dan is er geen oplossing.

    4. Conclusie s.

    • Vertel me eens, welk algoritme hebben we gekregen? (Vertakkingsalgoritme, volledige vorm)
    • Jongens, kijk naar elk punt van het algoritme en vertel me welke elementen van het stroomdiagram daarmee overeenkomen. (Op het scherm zijn de figuren individueel)
    • Welke stroomdiagramelementen missen we? ( Begin, einde)
    • Jongens, help me een stroomdiagram te maken en de elementen in de juiste volgorde te benoemen. (Elementen verschijnen één voor één op het scherm.)

    Taak 3. Maak een stroomdiagram van het algoritme voor het ondertekenen van 10 nieuwjaarskaarten. (Dia 8)

    De leerlingen schrijven een verbaal algoritme op in een notitieboekje, er wordt een controle uitgevoerd (het antwoord staat op het scherm), vervolgens bouwen ze een stroomdiagram en er wordt een controle uitgevoerd (het antwoord staat op het scherm).

    IV. De les samenvattend

    V. Huiswerk

    Maak voor probleem 3 stroomdiagrammen met behulp van een lus met een preconditie en een postcondition.