Karena masih coba-coba apa aja jadi ada.... juga jarang ada berita, semua lama.....

Program terbilang 3 digit

Tidak ada komentar
Penjelasannya langsung kopas ke notepad, biar loe ngerti sendiri :

@echo off
mode 80,10
title System Pembilang Angka - [3 digit]
setlocal ENABLEDELAYEDEXPANSION
:start
cls
(set val=)
set /p "val=# Nilai Angka = "
if not defined val goto start
if !val! equ 0 (set "Hasil=Nol" && goto :Result)
:Manage
for /l %%i in (0,1,2) do if not "!val:~%%i,1!"=="" (
if "!val:~0,1!" equ "0" (set "val=!val:~1!" && goto :Manage)
if "!val:~%%i,1!" gtr "9" (goto start)
if "!val:~%%i,1!" lss "0" (goto start)
if not "!val:~3!"=="" (goto start)
)
set "val=00!val!"
set "val=!val:~-3!"
)

REM SET DEFINITION
(set def_1=satu)
(set def_2=dua)
(set def_3=tiga)
(set def_4=empat)
(set def_5=lima)
(set def_6=enam)
(set def_7=tujuh)
(set def_8=delapan)
(set def_9=sembilan)

REM ARRANGE VALUE
if "!val:~0,1!" equ "0" (set val_0=) else (call set "val_0=%%def_!val:~0,1!%% ratus")
if "!val:~1,1!" equ "0" (set val_1=) else (call set "val_1=%%def_!val:~1,1!%% puluh")
if "!val:~2,1!" equ "0" (set val_2=) else (call set "val_2=%%def_!val:~2,1!%%")
if "!val:~0,1!" equ "1" set val_0=seratus
if "!val:~1,1!" equ "1" set val_1=sepuluh
if "!val:~1,1!"=="1" (
if "!val:~2,1!"=="1" (set "val_1=sebelas"&set "val_2=")
if "!val:~2,1!" gtr "1" (set "val_1=!val_2!"&&set "val_2=belas")
)
(set Hasil=)
for /l %%a in (2,-1,0) do (
if defined val_%%a set "Hasil=!val_%%a! !Hasil!"
)
:Result
echo.# Terbilang = !Hasil!

REM Clear Used Variable
for /l %%a in (0,1,2) do (
set "val_%%a="
)
PAUSE >nul
goto start

Tidak ada komentar :

Posting Komentar