Prev: Comparing values - Calculator

Calculator - given

The given - when construct (known in other languages as case or switch) can make the previous example much more compact.

Perl compares the value of $operator (the topic) with each one of the values next to the when keywords. When if finds one that fits the appropriate block is executed and perl jumps to the next command after the given block.

If non of the when values fit the (optional) default block is evaluated.

#!/usr/bin/env perl6
use v6;

my $a        = prompt "Number:";
my $operator = prompt "Operator: [+-*/]:";
my $b        = prompt "Number:";

given $operator {
    when "+" { say $a + $b; }
    when "-" { say $a - $b; }
    when "*" { say $a * $b; }
    when "/" { say $a / $b; }
    default  { say "Invalid operator $operator"; }

Prev: Comparing values - Calculator

Table of Contents


In the comments, please wrap your code snippets within <pre> </pre> tags and use spaces for indentation.
comments powered by Disqus

Perl 6 Tricks and Treats newsletter

Register to the free newsletter now, and get updates and news.