Programmeerstructuren met App Inventor



Vergelijkbare documenten
Maak je eigen app met Thunkable!

Android apps met App Inventor 2 antwoorden

Variabelen en statements in ActionScript

Scratch voor mobiel: AppInventor

Scratch in drie uur. Hallo, mijn naam is Minti Mint! Ik ga je uitleggen hoe je je eigen computerspel kunt maken. We gaan een racespel maken!

Handleiding CrisisConnect app beheersysteem

Gemeente Haarlemmermeer. Leer zelf je nieuwsbrief maken in YMLP. Opgesteld door: drs. Mariska I.R. Franse Datum: 6 en 11 juni 2013

HANDLEIDING DOIT BEHEER SYSTEEM

Formulieren maken met Dreamweaver CS 4/CS 5

Website maker. Bezoek je domein om de Website maker in te stellen. De volgende melding zal zichtbaar zijn.

Een spoedcursus python

van PSD naar JavaScript

Handleiding online Factsheetmodule

BEGINNER JAVA Inhoudsopgave

Handleiding helpdesk. Datum: Versie: 1.0 Auteur: Inge van Sark

STAP 1- Foto s in het schoolalbum zetten

In de tweede regel plaatsen we in het gereserveerde stukje geheugen een getal.

Handleiding Joomla CMS

Uitleg CMS Utrecht Your Way Button 1. Inloggen

VIVA3.0. Klantenproperties. VIVA 3.0 Klantenproperties

Een quiz plaatsen op je website

Cursus Onderwijs en ICT. Programmeren met Visual Basic

Android Apps met App Inventor

Handleiding Wordpress

1 BUSINESS INTERNET SUPPORT

Boekje met opdrachten

Programmeren: Visual Basic

Scratch les 3: Quiz! Je eigen spelshow

En hoe gaan ze dit allemaal terugvinden?

Leren Programmeren met Visual Basic 6.0 Les 3+4. Hoofdstuk 4 : De Selectie

Film monteren met Windows Live Moviemaker

digitale ontwerp technieken SketchUp

Handleiding CMS VOORKANT

Handleiding online Factsheetmodule

Algemene handleiding beheermodule: WORDPRESS. digital4u.nl effectief op internet

Samenvoegen met Word en Excel 2010

APP INVENTOR ERVAREN

De Kleine WordPress Handleiding

Doe het zelf installatiehandleiding


PLAKKEN Nadat u een gedeelte heeft geknipt of gekopieerd kunt u met dit icoon de selectie weer in het veld plakken.

Handleiding Wordpress CMS

Scratch. Gemaakt door: Déjan van Noordt en Leroy van den Driesche Leerlingen HAVO 5 SG Spieringshoek Als onderdeel voor het vak Informatica

5. Een nieuw grijs blok onderaan plaatsen

MICRO:BIT. Uitdaging 5 Magic8. Origineel: Micro:bit Educational Foundation 2016 Vertaling: CoderDojo Kennemerwaard 2017

Je gaat leren programmeren en een spel bouwen met de programmeertaal Python. Websites zoals YouTube en Instagram zijn gebouwd met Python.

Web Presence Builder. Inhoud

Inhoud. Handleiding Dododent. Beste tandarts of praktijkmanager,

Inhoudsopgave. 01. Inloggen & wachtwoord aanpassen Blz Pagina s beheren Blz Sidebars beheren Blz Menu beheren Blz.

Het scherm is verdeeld in enkele blokken.

8.1.1 Aanmaken van een nieuwsbrieflijst voor een nieuwsbrief

Bloggen met blogdirect

Handleiding website SVNL voor evenementenverkeersregelaars

LES 4: Scrollen achtergrond en tegels gebruiken

1. Sluit de LED aan zoals afgebeeld 2. Sluit de USB-kabel aan op de Arduino 3. Klik op de knop uploaden 4. De LED begint te knipperen

HANDLEIDING DMS Plugin Installatie, configuratie & werking

Handleiding MOBICROSS actie banners

Handleiding CrisisConnect app beheersysteem

Je gaat leren programmeren in Ruby. En daarna in Ruby een spelletje maken. Websites zoals Twitch en Twitter gemaakt zijn met behulp van Ruby?

Werken met App Inventor. {1} Hallo wereld!

!!!!!!!!!!!! Handleiding website! VV Den Ham

Klikt u op dan komt er een scherm of u dit bestand wilt of

Formulieren maken met Dreamweaver CS 4

QUESTI OPSTARTGIDS ALGEMENE INSTELLINGEN EN LVS

Op de website van de N!X Ruilkring klik je in het menu op Cyclos". Rechts bovenin klik je op de knop aanmelden. Je komt dan in het inlogscherm.

Inlogprocedure Surf naar janitor.be en kies bovenaan voor LEEROMGEVING

User accounts maken in een Wandy Hotspot, d.m.v. een batch.

Handmatig Onderzoekmelding invoeren Archis III

Handleiding Facebook Hulst Online

1. HOE MAAK IK EEN IPART EN PLAATS IK DEZE IN HET CONTENT CENTER?

Workshop Centrale ELO naar Blackboard maart Introductie. 2. Inloggen

Contents 1 Handleiding Formulier Jaargesprek UT Algemeen De web applicatie jaargesprekken INTRODUCTIE

Handleiding voor Leden Teampagina aanpassen op

Zodra er toernooi informatie bekend is en afgestemd is met de trainer(s), moet deze info in de Agenda van de website van Hantei worden ingevoerd.

Basishandleiding WordPress

Hoofdstuk 1: het maken van een eenvoudig artikel met alleen tekst

Hoe moet je een prachtige presentatie maken?

Handleiding voor Leden

Camtasia Studio 4: filmpjes bewerken en video opnemen.

HANDLEIDING. coachtool

CMS HANDLEIDING

Selecteer een gedeelte van de tekst in je artikel waar je een hyperlink op wilt plaatsen.

In dit document wordt uitleg gegeven over de inrichting van formulieren binnen Trajectplanner voor

Handleiding voor de admin van vvstroe.nl

HANDLEIDING scoolfolio COACH

Testplan. Versie

RIE Vragenlijst Editor

Handleiding website SVNL voor evenementenverkeersregelaars

Handleiding Cubigo Verenigingen en Organisaties

Basis handleiding CMS

Heb je geen entree-account dan kun je tijdens de workshop gebruik maken van de volgende aanmeldgegevens:

Gebruikersinstructie:

Over deze handleiding

Handleiding Dance.nl CMS Systeem

Handleiding bijlage: NIEUWSBRIEF. digital4u.nl effectief op internet. telefoon:

GAIA handleiding aanbieder verkorte versie INHOUD

Nieuwsbrieven versturen met MailPoet

Interactief lesgeven / presenteren met Shakespeak

Veelgestelde vragen. Inhoud

Transcriptie:

Programmeerstructuren met App Inventor Kevin Krul, Universiteit Utrecht Roncalli, Bergen op Zoom Inhoud: Les 1: Introductie tot App Inventor, when statement en variabelen. Les 2: Introductie if-statement Les 3: Introductie While loop Les 4: Introductie For loop Les 5: Eindopdracht

Les 2: Introductie If-statement In de vorige les hebben we gezien hoe we de actie afhandelen als er een knop wordt ingedrukt. Hierin hoeft er niet aan een bepaalde voorwaarden te woorden voldaan, wat er gebeurt als er op deze knop wordt gedrukt is altijd hetzelfde. Voor deze les gaan we kijken naar een situatie waar er wel aan een voorwaarde moet worden voldaan. Automatisch sms antwoord sturen Wanneer we een sms ontvangen met de tekst Alles goed? willen we automatisch een antwoord terug sturen via sms. Er kan dus niet altijd een sms worden terug gestuurd, alleen als het ontvangen bericht aan de voorwaarden voldoet dat de inhoud overeenkomt met Alles goed?. Dit moet gecontroleerd worden voordat er actie kan worden ondernomen. Dit controleren gebeurt in je applicatie via een If statement: If (voorwaarden voldoet) Then (actie uitvoeren) Else (actie uitvoeren) Oftewel in het Nederlands vertaald: Als (voorwaarden voldoet) Doe dan (actie uitvoeren) Of anders (actie uitvoeren) In App Inventor gaat dit met het If en Ifelse blokje. Te vinden onder Built-In - Control Toegepast op een simpel sommetje ziet dit er zo uit: Als ((1 +2) = 3) Doe dan (Tekst Ja dat is goed!) Of anders (Tekst Nee dat is fout!)

Voor het maken van de gevraagde applicatie hebben we de Texting control nodig. In de GUI editor is deze te vinden onder het kopje Social, sleep de Texting control naar het scherm van de applicatie. Nu verschijnt er onder het scherm een kopje Non-visible components met de gekozen controls. Open nu de Block Editor. Onder het kopje My Blocks staat nu ook Texting1. Klik hierop en sleep het blok Texting1.MessageReceived naar het veld. Er zijn gelijk twee nieuwe variabele aangemaakt. Te weten het nummer van de afzender (number) en de inhoud van het bericht (messagetext). Dit zijn geen globale variabele en dus alleen bruikbaar binnen het MessageReceived blok! Nu moeten we testen of de binnengekomen sms aan de voorwaarden voldoet. Sleep een nieuw If blok binnen het MessageReceived blok. Aan de test ingang van het if blok slepen we een vergelijking (=), te vinden onder Built-In Logic. Hierin slepen we de number variabele en de tekst Alles goed? De variabele is te vinden onder My Blocks My Definitions De tekst onder Built-In Text (selecteer het blokje tekst en pas dan de inhoud aan)

Nu controleren we of de ontvangen tekst (messagetext) gelijk is aan Alles goed?. Als dit het geval is worden de blokjes in Then uitgevoerd. Als dit niet het geval is gebeurt er niks (er is geen Else aanwezig). Sleep de volgonde blokjes in de Then: My Blocks Texting1 set Texting1.Message to My Blocks Texting1 set Texting1.PhoneNumber to My Blocks Texting1 call Texting1.SendMessage Maak een nieuwe text aan, pas de inhoud aan naar het gewenste antwoord en koppel deze aan set Texting1.Message to. Koppel de variabele number aan set Texting1.PhoneNumber to. Nu is de applicatie af! Loop de applicatie blokje voor blokje door en bedenk voor jezelf wat er precies bij dat blokje gebeurt. Opdrachten: 1. Breid deze applicatie uit. Maak twee buttons op het scherm Goed en Slecht. Aan de hand van welke button er het laatst is ingedrukt wordt er geantwoord op de sms Ja het gaat goed of Nee het gaat slecht. Maak gebruik van een globale variabele en een extra if binnen de al bestaande if. 2. Maak een nieuwe applicatie. Met een button op het scherm Achtergrond, wanneer deze knop wordt ingedrukt veranderd de achtergrond kleur van het scherm. Als de achtergrondkleur wit is wordt deze zwart, als deze zwart is wordt het wit.

Les 3: Introductie While-loop In de vorige les hebben we geleerd hoe we code kunnen uitvoeren als het aan een bepaalde volwaarde voldoet. Dit is een eenmalige controle of er aan de volwaarde wordt voldaan. Wanneer je hetzelfde stukje code meerdere keren wilt uitvoeren kan je ook controleren zolang er aan de volwaarde wordt voldaan. Zo kan je gecontroleerd een stuk code meerdere keren laten uitvoeren. Dit noemen we loopen. Hiervoor gebruiken we een While loop. Toon de tafel van het ingevulde getal In deze opdracht kan de gebruik een getal invoeren in een tekstveld waarna er doormiddel van popups de tafel van dit getal wordt getoont. Maak een nieuw project aan en sleep een tekstveld en button in het scherm. Sleep nu uit het kopje Other stuff de Notifier in het scherm. Deze verschijnt onder het scherm als non-visible components. Nu kan je de Blocks Editor openen.

Zoals in de eerste les slepen we hier de When Button1.click in het veld, deze is te vinden onder My Blocks Button1. Sleep hierin het while blokje, te vinden onder Built-In Control While. Het zier nu zo uit: Om bij te houden hoe vaak de tafel is doorlopen maken we gebruik van een variabele. Deze maken we aan via Built-In Defintion def variable as. Sleep dit blokje in het veld en hernoem variable naar keer. Koppel hier het getal 1 aan via Built-In Math number 123. Nu kunnen we in de While loop testen een voorwaarde aanmaken om te testen. De voorwaarde is dat keer lager of gelijk is aan 10. Zolang dat het geval is mag de code worden uitgevoerd. Dit werkt op dezelfde manier als bij de if. Het blokje voor lager of kleiner dan (<=) is te vinden onder built-in math. Sleep de variabele keer (My Blocks My Definitions) en het getal 10 er juist in. Zolang er aan deze voorwaarde wordt voldaan willen we een popup weergeven met de uitkomst van de tafel. Dit doen we met een MessageDialog. Sleep het blokje call Notifier1.ShowMessageDialog (My Blocks Notifer1) in de while loop.

Dit blokje heeft 3 ingangen waar we iets moeten invullen: message: wat het bericht is title: wat de titel is van de popup buttontext: wat er op de knop (om het venster te sluiten) komt te staan. De laatste 2 kunnen we makkelijk invullen met als titel tafel en als buttontext volgende. Deze kan je erin slepen via Built-in Text text tekst en dan te hernoemen naar het gewenste woord. Als message willen we de uitkomst van de tafelsom. De inhoud van de textbox * keer. De inhoud van de textbox is te vinden in My Blocks TextBox1 TextBox1.text. Het * blokje is te vinden onder Built-in math. We zijn nu bijna klaar. Nu staat er, zolang keer kleiner of gelijk is aan 10, voer het ShowMessageDialog blokje uit. De variabele keer hebben we eerder de waarde 1 gegeven. Hierdoor zal de while loop nu oneindig door blijven gaan en uiteindelijk het programma laten vastlopen. Om dit te voorkomen moeten we natuurlijk de keer verhogen zodat hij op een gegeven moment hoger is dan 10 en de while stopt. Dan komt er ook elke keer een andere uitkomst in de MessageDialog.

Dit moeten we binnen de While loop doen, nadat het MessageDialog is getoond. Na de While loop zetten we de variabele keer weer op 1, zodat er de volgende keer als er op de knop wordt gedrukt weer opnieuw kan beginnen. Nu is de applicatie af! Opdracht 1: Wanneer je de applicatie uitvoert zal je zien dat de eerste popup die je te zien krijgt die van getal * 10 is. Waarom is dit? Pas de applicatie aan zodat wel als eerste de uitkomst van getal * 1 tevoorschijn komt. Opdracht 2: Maak een applicatie waarin de gebruiker een getal in kan voeren en op de OK knop kan drukken. Wanneer dit 5 keer is gedaan wordt het gemiddelde van de getallen getoont in een popup. Let op dat je geen oneindige loop veroorzaakt!

Les 4: Introductie For loop Met een while loop, geïntroduceerd in de vorige les kan kan je ook een lijst (list) doorlopen. Echter is hier een snellere methode voor, de For loop. De for loop herkent de waardes (variabelen) in de lijst en kan zo voor elke waarde het stukje code uitvoeren. Automatisch sms antwoord sturen (versie 2) Als oefenopdracht gaan we verder met de applicatie uit les 2, waar je een applicatie heb gemaakt die automatisch reageert op een sms. Deze kan nu alleen reageren op één tekst. Om meerdere teksten toe te voegen kan je meerdere if statements maken. Om dit meer efficiënt te doen (minder code) kunnen we gebruik maken van een lijst waarin we alle mogelijke teksten opslaan en deze lijst dan met een for lus doorlopen. Sleep een make a list blokje in het veld, te vinden onder Built-In Lists Maak hierin de gewenste teksten. Built-In Text text Deze lijst moeten we nu koppelen aan een variabele zodat we hem kunnen aanspreken. Built-In Definition variable, noem deze lijst en koppel deze aan de list.

Nu kunnen we de bestaande code uit les 2 gaan herbouwen zodat we de for loop erin kunnen gebruiken. Sleep de if statement eventjes uit het MessageReceived blok en slaap er een foreach in. Built-In Control foreach. Hernoem de var naar tekst. De net aangemaakte list genaamd lijst zetten we onderaan bij de foreach bij de in list ingang. Deze is nu te vinden onder My Blocks Definitions lijst. Hier staat nu, voor elke waarde in de list lijst wordt een tijdelijke variabele aangemaakt met de naam tekst. Deze variabele tekst is alleen beschikbaar binnen de foreach loop. Sleep nu de eerder gemaakte if statement met inhoud binnen de foreach loop.

We zijn nu bijna klaar. We moeten alleen nog aanpassen dat de if voorwaarde de inhoud van de sms (messagetext) niet vergelijkt met Alles goed? maar met de waardes uit de lijst, die nu benaderd kunnen worden door de variabele tekst. We slepen de Alles goed? tekst uit de if naar de prullenbak (rechtsonder) en plaatsen de variabele tekst daar (My Blocks My Definitions tekst ). Nu zijn we klaar! Elke tekst uit de lijst wordt tijdelijk opgeslagen als variabele tekst, dan vergelijkt de if of de inhoud van de sms gelijk is aan deze tekst, indien dit het geval is wordt er een sms terug gestuurd. Opdracht 1: Bedenk of je ook een lijst kan maken met antwoorden die teruggestuurd worden. Hoe zou je deze kunnen implementeren in de bestaande code? Opdracht 2: Maak een nieuwe app, met 1 knop op het scherm. Wanneer deze knop wordt ingedrukt veranderd de achtergrond kleur van de app in een willekeurige kleur. Tip: maak een lijst met verschillende kleuren en gebruik het random integer blok (Built-In Math). Ga verder zelf opzoek naar nieuwe blokjes die je hierbij kunnen helpen.

Les 5: Eindopdracht v1 Voor de eindopdracht ga je zelf een grote applicatie maken, waarin gebruik wordt gemaakt van een when, if en for. Het betreft een quiz applicatie. Op het scherm staan een vraag afgebeeld en een textbox om het antwoord in te vullen. Tot slot een knop om het antwoord te controleren. Wanneer er op de controleer knop wordt gedrukt worden de ingevulde antwoorden gecontroleerd. Voor de vraag is er een lijst met mogelijke antwoorden, bijvoorbeeld Parijs, Paris, parijs, Wanneer de vraag goed is beantwoord veranderd de test van de knop in Goed!, anders in Fout! Wanneer de applicatie af is: Maak screenshots van de blokjes. Plak deze in een Word bestand Upload Word bestand naar Moodle

Les 5: Eindopdracht v2 Voor de eindopdracht ga je zelf een grote applicatie maken, waarin gebruik wordt gemaakt van een when, if en for. Het betreft een quiz applicatie. Op het scherm staan 2 vragen afgebeeld en 2 textboxen om de antwoorden in te vullen. Tot slot een knop om de antwoorden te controleren. Wanneer er op de controleer knop wordt gedrukt worden de ingevulde antwoorden gecontroleerd. Voorelke vraag is er een lijst met mogelijke antwoorden, bijvoorbeeld Parijs, Paris, parijs, Wanneer de vragen goed zijn beantwoord veranderd de tekst van de knop in Goed!, anders in Fout! Wanneer de applicatie af is: Maak screenshots van de blokjes. Plak deze in een Word bestand Upload Word bestand naar Moodle