Subversion Repositories wimsdev

Rev

Go to most recent revision | Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
12964 bpr 1
!if $wims_read_parm!=slib_header
2
  !goto proc
3
!endif
4
 
5
slib_title=Numération romaine
6
slib_author=Bernadette, Perrin-Riou
7
 
8
slib_example=456\
9
654\
10
12
11
slib_out=Conversion en numération romaine
12
!exit
13
 
14
:proc
15
 
16
slib_chif=$wims_read_parm
17
 
18
slib_romain=
19
!bound $slib_chif between 1 and 3999
20
slib_number=1,I,V\
21
10,X,L\
22
100,C,D\
23
1000,M,MMMMM
24
slib_cnt=!charcnt $slib_chif
25
!for slib_a = 1 to $slib_cnt
26
  slib_digit=!char $[$slib_cnt - $slib_a+1] of $slib_chif
27
  slib_i= $(slib_number[$slib_a;2])
28
  slib_v=$(slib_number[$slib_a;3])
29
  !if $slib_digit iswordof 1 2 3
30
    slib_rom=!makelist $slib_i for x = 1 to $slib_digit
31
    slib_romain= $slib_rom $slib_romain
32
  !endif
33
  !if $slib_digit=4
34
    slib_romain= $slib_i $slib_v $slib_romain
35
  !endif
36
  !if $slib_digit=5
37
    slib_romain= $slib_v $slib_romain
38
  !endif
39
   !if $slib_digit iswordof 6 7 8
40
     slib_rom= !makelist $slib_i for x = 1 to $slib_digit -5
41
     slib_romain=$slib_v$slib_rom $slib_romain
42
   !endif
43
   !if $slib_digit=9
44
     slib_x=$(slib_number[$slib_a+1;2])
45
     slib_romain=$slib_i$slib_x$slib_romain
46
   !endif
47
 !next
48
 
49
 slib_out=!replace internal , by  in $slib_romain
50
 slib_out=!nospace $slib_out