Twee prompts bij deze proef. Met Coach krijg je hulp terwijl je de proef maakt, zonder code. Met Quoteer laat je je afgewerkte code streng verbeteren, volgens de puntenverdeling en het boeteblad.

Let op: de quoteerprompt is recent gemaakt en werd niet gebruikt bij de originele proef. De score die je ermee krijgt, zegt dus niets over de scores van toen. Had de proef geen puntenverdeling, dan is die achteraf toegevoegd.

Opgave vaardigheidsproef 2020-2021 - APstream

Geschatte tijd om dit te maken: 90 minuten

Intro

De bekende streamingdienst APstream heeft jou gevraagd om een programma te maken dat hun streamers kunnen gebruiken terwijl ze video’s streamen. De applicatie helpt streamers om viewers bij te kopen en om te zien hoe goed hun stream het doet.

De applicatie bestaat uit 3 duidelijke delen, die alle 3 altijd uitgevoerd worden:

Drie blokken na elkaar: DEEL 1: Setup, DEEL 2: keuzemenu, DEEL 3: bepalen categorie.

Belangrijke afspraken:

  • Tekst gaat altijd met string interpolatie naar het scherm.
  • Gebruik constanten waar nodig.
  • Ga ervan uit dat de gebruiker géén foute invoer doet: in het menu typt hij altijd een geheel getal.

Deel 1: setup

Bij het opstarten groet de applicatie de gebruiker. De gebruikersnaam haal je uit het systeem, met de juiste eigenschap van Environment.

Daarna maakt het programma twee willekeurige getallen aan:

  • Het aantal viewers dat naar de stream kijkt: 1000, 2000, 3000, 4000 of 5000.
  • Het huidige budget van de gebruiker in credits: een willekeurig geheel getal van 100 tot en met 600.

Deel 2: keuzemenu

Het programma toont een menu, met de keuzes onder elkaar en een tab ervoor:

Wat wil je doen?
    1. Koop 1000 viewers (200 credits)
    2. Koop adspace viewers (300 credits)
    3. Niets

Gebruik een enum voor de keuzes.

Keuze 1: viewers kopen

Deze optie kost 200 credits. Heeft de gebruiker niet genoeg credits, dan verschijnt er in rode letters “Niet genoeg credits” en gaat het programma naar deel 3. Heeft de gebruiker 200 of meer credits, dan:

  • daalt het budget met 200;
  • stijgt het aantal viewers met 1000.

Het programma onthoudt dat de gebruiker viewers gekocht heeft. Daarna verschijnen het nieuwe budget en het nieuwe aantal viewers op het scherm, en gaat het programma naar deel 3.

Keuze 2: adspace kopen

Deze optie kost 300 credits. Heeft de gebruiker niet genoeg credits, dan verschijnt er in rode letters “Niet genoeg credits” en gaat het programma naar deel 3.

Heeft de gebruiker 300 of meer credits, dan:

  • daalt het budget met 300;
  • stijgt het aantal viewers:
    • met 1000 als het huidige aantal viewers een veelvoud van 2000 is;
    • anders met 500.

Het programma onthoudt dat de gebruiker adspace gekocht heeft. Daarna verschijnen het nieuwe budget en het nieuwe aantal viewers op het scherm, en gaat het programma naar deel 3.

Keuze 3: niets

Kiest de gebruiker optie 3, dan gaat het programma meteen verder naar deel 3.

Andere keuze: budget afname

Voert de gebruiker een ander getal dan 1, 2 of 3 in, dan verschijnt er dat dit geen geldige keuze is. Daarna gebeurt het volgende:

  • Het budget daalt met 10%, naar beneden afgerond op een geheel getal.
  • Het aantal viewers daalt met een vierde, naar boven afgerond.

Er verschijnt op het scherm: “Je verliest 1 op 4 viewers.”

Deel 3: bepalen van de categorie

In dit laatste deel bepaalt het programma hoe “gezond” de streamer is. Het aantal viewers, het budget en de aankoop in deel 2 bepalen de categorie. De categorie stel je in het programma voor met een enum.

Er zijn 4 soorten streamers:

  1. Faker: je hebt 4000 of minder viewers en je hebt in deel 2 adspace gekocht
  2. Gevorderde: je hebt 5000 of meer viewers en je hebt in deel 2 iets gekocht
  3. Beginner: je hebt 200 of minder credits en 4000 of minder viewers
  4. Onbekend: je voldoet aan geen van de vorige categorieën

Gelden er 2 of meer categorieën, dan krijgt de gebruiker de bovenste uit deze lijst. Het programma toont de categorie.

Console: Welkom timdams op APstream. Volgens onze data kijken er momenteel 2000 viewers. Je budget is 305 credits. Wat wil je doen? 1.Koop 1000 viewers (200 credits) 2.Koop adspace viewers (300 credits) 3.Niets. Invoer 2. Adspace viewers gekocht. Je nieuwe statistieken zijn: 3000 viewers en 5 credits. Jouw streamertype is Faker.

Voorbeeld uitvoer

Wordt de gebruiker een “Faker”, dan vraagt het programma of hij zijn profiel voor 100 credits wil laten omzetten naar “Gevorderde”. Antwoordt de gebruiker “nee”, dan stopt het programma. Antwoordt hij “ja”, dan verschijnt er “Word beter!” en stopt het programma.

Voorbeeld uitvoer

Tekst die start met “>” is invoer van de gebruiker.

Welkom timdams op APstream.
Volgens onze data kijken er momenteel 2000 viewers. Je budget is 305 credits.

Wat wil je doen?
    1. Koop 1000 viewers (200 credits)
    2. Koop adspace viewers (300 credits)
    3. Niets
>2
Adspace viewers gekocht. Je nieuwe statistieken zijn: 3000 viewers en 5 credits.
Jouw streamertype is Faker.
Wil je voor 100 credits je profiel laten omzetten naar Gevorderde? (ja/nee)
>ja
Word beter!

Deze oplossing is afgeschermd.
Studenten krijgen de sleutel van hun lesgever. Heb je de sleutel al eens op dit toestel gebruikt, dan verschijnt de oplossing hier vanzelf.