Raku kurss / Pamati / Asociatīvie datu tipi / Vingrinājumi / Pirkumu tabula

Risinājums: Pirkumu tabula

Tabulā ir galvene (kuru jūs vienkārši izdrukājat ar vienu say) un vairākas rindas ar līdzīgu struktūru: preces nosaukums, preces cena, daudzums un šo preču kopējās izmaksas.

Tā kā vēlaties saglabāt rindu secību, masīvs ir laba izvēle, lai saglabātu preces. Tātad, katra tabulas rinda atbilst vienam masīva elementam.

Otrajā līmenī ierakstu var saglabāt heša struktūrā ar dažiem nosauktiem laukiem: name, price un quantity.

Pārējā programma ir, lai pārstaigātu preces, aprēķinātu kopsummas un izdrukātu tabulas rindas.

Kods

Šeit ir viens no iespējamiem risinājumiem šim uzdevumam:

my @items = [
    {
        name => 'Krēsli',
        price => 20.57,
        quantity => 4,
    },
    {
        name => 'Galdi',
        price => 50.18,
        quantity => 1,
    }
];

say "Prece\tCena\tN\tKopā";
for @items -> $item {
    my $total = $item<price> * $item<quantity>;
    say "$item<name>\t\$$item<price>\t$item<quantity>\t\$$total";
}

🦋 Atrodiet programmu failā purchase-table.raku.

Izvade

$ raku exercises/associatives/purchase-table.raku
Prece	Cena	N	Kopā
Krēsli	$20.57	4	$82.28
Galdi	$50.18	1	$50.18

Nākamais uzdevums

💪 Ceļošanas attālums

Kursa navigācija

Pozicionālie datu tipi / Diapazonu apakšizteiksmes   |   Funkciju izveide un izsaukšana

Šī lapa ir automātiski tulkota ar ChatGPT 4o. Oriģinālais teksts angļu valodā.

Šīs lapas tulkojumi: EnglishDeutschEspañolItalianoLatviešuNederlandsБългарскиРусскийУкраїнська