OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

[/] [or1k/] [trunk/] [insight/] [itcl/] [iwidgets3.0.0/] [generic/] [roman.itcl] - Blame information for rev 578

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 578 markom
namespace eval ::iwidgets {
2
  set romand(val)   {1000 900 500 400 100 90 50 40 10  9 5  4 1}
3
  set romand(upper) {   M  CM   D  CD   C XC  L XL  X IX V IV I}
4
  set romand(lower) {   m  cm   d  cd   c xc  l xl  x ix v iv i}
5
 
6
  proc roman2 {n {case upper}} {
7
      global romand
8
      set r ""
9
      foreach val $romand(val) sym $romand($case) {
10
          while {$n >= $val} {
11
              set r "$r$sym"
12
              incr n -$val
13
          }
14
      }
15
      return $r
16
  }
17
 
18
  proc roman {n {case upper}} {
19
      global romand
20
      set r ""
21
      foreach val $romand(val) sym $romand($case) {
22
          for {} {$n >= $val} {incr n -$val} {
23
              set r "$r$sym"
24
          }
25
      }
26
      return $r
27
  }
28
}

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.