Menu
Coddy logo textTech

Rejestr stanów magazynowych

Część sekcji Podstawy ścieżki Solidity w Coddy. Lekcja 51 z 53.

challenge icon

Wyzwanie

Trudny

Utrzymuj mapowanie identyfikatorów elementów na stany magazynowe. Dodaj firstQty do firstId i secondQty do secondId, a następnie odejmij used od stanu magazynowego dla firstId. Wypisz końcowy stan magazynowy dla firstId, a następnie dla secondId. Identyfikatory mogą być takie same. used nigdy nie przekracza stanu dostępnego dla firstId po obu dodaniach.

Testy przekazują argumenty do main w tej kolejności: uint256 firstId, uint256 firstQty, uint256 secondId, uint256 secondQty, uint256 used. Każdy test rozpoczyna się od nowego stanu kontraktu.

Użyj console.log, aby wypisać żądany wynik. Wypisz tylko żądane wartości, po jednej w wierszu, bez dodatkowych etykiet, chyba że zadanie wyraźnie ich wymaga.

Spróbuj swoich sił

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
    function main(uint256 firstId, uint256 firstQty, uint256 secondId, uint256 secondQty, uint256 used) external  {
        // Wpisz tutaj swoje rozwiązanie.
    }
}

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Edytor online Solidity