proc toString(x: int): string = if x >= 4000: return "大きすぎます。4000未満の数字を入力してください" type RomanNums = array[0..9, string] var tenTo3 = x div 1000 tenTo2 = (x - tenTo3*1000) div 100 tenTo1 = (x - tenTo3*1000 - tenTo2*100) div 10 tenTo0 = (x - tenTo3*1000 - tenTo2*100 - tenTo1*10) tenTo3Array : RomanNums = ["","M","MM","MMM","","","","","",""] tenTo2Array : RomanNums = ["","C","CC","CCC","CD","D","DC","DCC","DCCC","CM"] tenTo1Array : RomanNums = ["","X","XX","XXX","XL","L","LX","LXX","LXXX","XC"] tenTo0Array : RomanNums = ["","I","II","III","IV","V","VI","VII","VIII","IX"] result = tenTo3Array[tenTo3] & tenTo2Array[tenTo2] & tenTo1Array[tenTo1] & tenTo0Array[tenTo0] proc toString(x: bool): string = if x: result = "true" else: result = "false" echo toString(13) # toString(x: int)プロシージャを呼び出す echo toString(true) # toString(x: int)プロシージャを呼び出す