Dodawanie i odejmowanie
Część sekcji Podstawy ścieżki Solidity w Coddy. Lekcja 11 z 53.
Użyj +, aby połączyć ilości, a -, aby odjąć jedną ilość od drugiej. Zapisz wynik w zmiennej lub przekaż wyrażenie do konsoli. Solidity 0.8 sprawdza działania arytmetyczne na liczbach całkowitych: wynik spoza zakresu typu powoduje cofnięcie transakcji zamiast cichego zawinięcia.
Instrukcje w tym fragmencie są wykonywane wewnątrz udostępnionej funkcji main.
uint256 stock = 18;
uint256 remaining = stock - 5;
console.log(remaining + 2);Odjęcie pięciu od osiemnastu daje trzynaście. Dodanie dwóch daje piętnaście. Odejmowanie bez znaku jest prawidłowe tylko wtedy, gdy jego wynik jest nieujemny. Zadania ćwiczeniowe określają ograniczenia, które zapewniają prawidłowość operacji.
Odejmowanie bez znaku nie może dawać wyniku ujemnego.
Wyzwanie
ŁatwyNa półkę trafia delivery książek, a wypożyczanych jest borrowed książek. Mając początkowy stock, wypisz stock + delivery - borrowed. Dane wejściowe gwarantują, że liczba wypożyczonych książek nie przekracza sumy początkowego stanu i dostawy.
Testy przekazują argumenty do main w następującej kolejności: uint256 stock, uint256 delivery, uint256 borrowed. Każdy test rozpoczyna się od nowego stanu kontraktu.
Użyj console.log do wypisania wymaganego wyniku. Wypisz tylko wymagane wartości, po jednej w wierszu, bez dodatkowych etykiet, chyba że zadanie określa inaczej.
Spróbuj swoich sił
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.26;
import "forge-std/console.sol";
contract Main {
function main(uint256 stock, uint256 delivery, uint256 borrowed) external view {
// Wpisz tutaj swoje rozwiązanie.
}
}Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
2Zmienne i typy
Liczby całkowite bez znakuWejście i wyjścieLiczby całkowite ze znakiemWartości logiczneŁańcuchy znaków w pamięciKarta profilu5Funkcje
Parametry funkcjiZwracanie wartościFunkcje czysteWywołania pomocniczeWielokrotnego użytku obliczeniaPoćwicz samodzielnie: Edytor online Solidity