این مثال ساده در حقیقت سعی دارد شما را با عملگرهای div و rem آشنا کند که اولی تقسیم صحیح و دومی باقیمانده است. در این مثال شما باید برنامهئی بنویسید که طول و عرض یک دیوار را دریافت کند( با در نظر گرفتن این نکته که برای رنگ کردن هر 350 فوت مربع یه گالون رنگ نیاز است و همچنین امکان خرید قسمتی از یک گالون نیست و باید یک گالون کامل بخریم) و بشما اعلام کند چه تعداد گالون نیاز دارید. برای مثال اگر مساحت دیوار 351 فوت مربع باشد شما به دو گالون رنگ نیاز دارید.
-module(ex9). -export([main/0]). -define(GALLON, 350). main() -> try run() catch error:_Error -> io:format( "Please Enter only Numeric type~n"); throw:negativeNumber -> io:format( "Please Enter only non-zero positive number~n") end. run() -> {Length, Width} = readDimension(), D = calc_gallon(Length,Width), io:fwrite( "You will need to purchase ~w gallons of paint to cover ~w square feet.~n", [D,Length*Width]). calc_gallon(Length, Width) -> D = Length * Width, if D div ?GALLON == D / ?GALLON -> D div ?GALLON; true -> (D div ?GALLON) + 1 end. readDimension() -> {ok,[First]} = io:fread( "What is the length of the wall in feet? ","~d"), {ok,[Second]} = io:fread( "What is the width of the wall in feet? ","~d"), if First =< 0 orelse Second =< 0 -> throw(negativeNumber); true -> ok end, {First,Second}.