トラック
/
Perl
Perl
/
演習
/
ラザニア
ラザニア

ラザニア

学習演習

説明

お気に入りの料理本のラザニア作りを手伝ってくれるコードを書いていきます。

タスクは5つあり、どれもレシピの調理に関係しています。

1. オーブンでの想定焼き時間を分単位で定義する

$Lasagna::ExpectedMinutesInOven変数に、ラザニアをオーブンに入れておくべき分数を設定します。料理本によると、オーブンでの想定焼き時間は40分です。

$Lasagna::ExpectedMinutesInOven
# => 40

2. オーブンでの残り時間を分単位で計算する

Lasagna::remaining_minutes_in_ovenサブルーチンを修正します。このサブルーチンは、ラザニアがオーブンに入っていた実際の分数を引数として受け取り、前のタスクで求めたオーブンでの想定焼き時間をもとに、ラザニアをあと何分オーブンに入れておく必要があるかを返します。

Lasagna::remaining_minutes_in_oven(30)
# => 10

3. 準備にかかる時間を分単位で計算する

Lasagna::preparation_time_in_minutesサブルーチンを修正します。このサブルーチンは、ラザニアに追加した層の数を引数として受け取り、ラザニアの準備にかかった分数を返します。層を1つ用意するのに2分かかるものとします。

Lasagna::preparation_time_in_minutes(2)
# => 4

4. 合計の作業時間を分単位で計算する

Lasagna::total_time_in_minutesサブルーチンを修正します。このサブルーチンは2つの引数を取ります。1つ目の引数はラザニアに追加した層の数で、2つ目の引数はラザニアがオーブンに入っていた分数です。 このサブルーチンは、ラザニアの調理に合計で何分かかったかを返します。これは、準備にかかった分数と、その時点でラザニアがオーブンに入っていた分数を足したものです。

Lasagna::total_time_in_minutes(3, 20)
# => 26

5. ラザニアができたことを知らせる通知を作成する

Lasagna::oven_alarmサブルーチンを修正します。このサブルーチンは引数を取らず、ラザニアが食べごろになったことを知らせるメッセージを返します。

Lasagna::oven_alarm()
# => "Ding!"
GitHubで編集する リンクは新しいウィンドウまたはタブで開きます
Perl Exercism

ラザニアを始める準備はできましたか?

Exercismに登録すれば、5個のコンセプト84個の演習、そして本物の人間によるメンタリングとともに、Perlを学んでマスターできます。すべて無料です。