Vragen en toetsenbordinvoer

Programmeergidsen

Invoer is informatie die iemand je programma geeft. De vraagtekst, ook prompt genoemd, is de vraag die het toont; het antwoord is wat je teruggeeft. De host kan een tekstvraag of een grafisch invoervak tonen. Een overlay is een vak dat over het bestaande beeld verschijnt.

Inclusieve grenzen tellen de eindpunten mee: bij minimum 1 en maximum 5 mogen 1 en 5 dus ook. Eindig sluit oneindigheid en ongeldige getalwaarden uit. Witruimte trimmen verwijdert spaties en vergelijkbare tekens aan het begin en einde. Normaliseren brengt een geaccepteerde schrijfwijze naar één afgesproken vorm, bijvoorbeeld het antwoord "2,5" naar 2.5.

Exponentnotatie in een getalantwoord, zoals 1e2, betekent één keer tien tot de tweede macht: 100. Een teken is + of -. Dit zijn regels voor het beantwoorden van een vraag; daardoor is 1e2 nog geen geldige getalliteral in Pliro-broncode. Een bepaald invoervak kan beperken wat je mag typen.

Invoerfuncties

Nederlandse aanroep Canonieke ID Resultaat Vereisten
vraag(vraagtekst) input.readLine Text Vraagtekst is Text.
vraagGetal(vraagtekst, minimum, maximum) input.readNumber Number Tekst en eindige, geordende, inclusieve getalgrenzen.
vraagJaNee(vraagtekst) input.readBoolean Boolean Vraagtekst is Text.
kies(vraagtekst, opties) input.choose Text Tekst en 1 tot en met 100 unieke, niet-blanke tekstopties.

Invoer wacht coöperatief op de consolevraag of grafische bediening van de host.
De runtime controleert en converteert het antwoord. Getalantwoorden worden
getrimd; één decimale komma zonder punt wordt een punt. De antwoordparser
accepteert ook een teken en exponentnotatie voor eindige getallen, al kan de
hostbediening de invoer beperken. Dit verruimt de getalliterals in broncode niet.
Een keuze is exact één van de opgegeven teksten; uniekheid is hoofdlettergevoelig.

Console-invoer voor ja accepteert true, yes, y, waar, ja, j of 1;
voor nee false, no, n, onwaar, nee of 0, ongeacht hoofdletters en
omringende witruimte. Grafische hosts bieden begrensde ja/nee- en keuzebediening.
Antwoorden zijn maximaal 64 KiB geldige UTF-8. Datuminvoer is nog niet beschikbaar.

Nederlandse aanroep Canonieke ID Resultaat
toetsIngedrukt(toets) input.keyDown Boolean

De toetsnaam is niet-lege tekst. De overdraagbare spelnamen zijn "left",
"right", "up", "down" en "space". Native grafische hosts herkennen ook
namen zoals "enter", "escape"/"esc", "backspace" en afzonderlijke
ASCII-letters en cijfers. Een toets die een host niet aanbiedt, geldt als niet
ingedrukt. Toetsnamen zijn gegevenswaarden en worden niet vertaald.

als toetsIngedrukt("left"):
    zet x = x - snelheid

De host bemiddelt de invoer; broncode leest niet rechtstreeks het toetsenbord.

Gerelateerde lemma’s

Syntaxis en waarden · Ingebouwde functies · Programmeergidsen