Talk:Convert integer to words (QBASIC)

From LiteratePrograms
Jump to: navigation, search

[edit] Advice from French speaker

Here are some precisions from a native french speaker :

when "cent" (100) or "vingt" (20) is used in a plural form it gets a final 's' :

300 gives "trois cents"

80 gives "quatre-vingts"

BUT the 's' disappears if there are other numbers after that :

301 gives "trois cent un"

380 gives "trois cent quatre vingts"

384 gives "trois cent quatre vingt quatre"

I modified the test cases to reflect that : now they should fail !

here are links with samples and more explanations :

Also "septante", "octante" and "nonante" DO exist in belgian french ( fr_be ) this is a frequent subject of discussion where belgian people argue that they are more logical than frenchs... I guess you could support another "language" easily... maybe even two as I suspect the french speaking swiss to do the same. -- (Anon French speaker)

Thanks for that! I'll implement those changes shortly, including Belgian French. -- Derek Ross | Talk 20:29, 23 April 2007 (PDT)
Hmmm. Didn't realise that it was so complex. It'll take a little longer than I thought. Thanks for the explanatory links. -- Derek Ross | Talk 21:39, 23 April 2007 (PDT)
(fr_ch) : I can vouch for "septante", "huitante", and "nonante" in current swiss french — but I think the genevois (like the belgians) use "septante", "quatre-vingts", "nonante". -- Dave 01:16, 24 April 2007 (PDT)
Well I've done it. At least it passes the tests included with the code. More criticism is welcome though. But I don't like the program so much now. It has too much complexity in the code and it would be difficult to add another language like, say, German to the function. If anyone can see a way of moving some of that complexity out of the code and into the data without increasing the size of the program toooo much, I'd be pleased. -- Derek Ross | Talk 23:20, 2 May 2007 (PDT)