-107 / 1 / 0
Регистрация: 04.03.2017
Сообщений: 228
1

Целое число прописью

06.06.2017, 14:38. Показов 748. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Уважаемые форумчане,здравствуйте!
Не подскажите, что нужно убрать в коде, чтобы записывал целые числа прописью, без копеек и рублей.

Или может есть какой-то другой код!?
________________________________________________________________________________ ______________________________

Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
Option Compare Database
 
 
Option Explicit
 
Function Unit(ByVal X As Long, ByVal Form1 As String, ByVal Form234 As String, ByVal FormOther As String) As String
  Select Case X Mod 100
    Case 10 To 20
      Unit = FormOther
    Case Else
      Select Case X Mod 10
         Case 1
           Unit = Form1
         Case 2
           If Form234 = " тысячи " Then
             Unit = "е тысячи "
           ElseIf Form234 = " копейки" Then
             Unit = Form234
           Else
             Unit = "а" & Form234
           End If
         Case 3 To 4
           Unit = Form234
         Case Else
           Unit = FormOther
      End Select
  End Select
End Function
 
Public Function CardText(ByVal XX As Currency) As String
'On Error GoTo err
Dim Triade As Currency, X As Currency, R As String, i As Byte, Units, Ones, Tens, Hundreds
Units = Array( _
  Array(" копейка", " копейки", " копеек"), _
  Array("ин рубль ", " рубля ", " рублей "), _
  Array("на тысяча ", " тысячи ", " тысяч "), _
  Array("ин миллион ", " миллиона ", " миллионов "), _
  Array("ин миллиард ", " миллиарда ", " миллиардов "), _
  Array("ин триллион ", " триллиона ", " триллионов "), _
  Array(" ? ", " ? ", " ? "), _
  Array(" ? ", " ? ", " ? "))
Ones = Array("", "од", "дв", "три", "четыре", "пять", "шесть", "семь", "восемь", "девять", "десять", "одиннадцать", "двенадцать", "тринадцать", "четырнадцать", "пятнадцать", "шестнадцать", "семнадцать", "восемнадцать", "девятнадцать")
Tens = Array("", "десять ", "двадцать ", "тридцать ", "сорок ", "пятьдесят ", "шестьдесят ", "семьдесят ", "восемьдесят ", "девяносто ")
Hundreds = Array("", "сто ", "двести ", "триста ", "четыреста ", "пятьсот ", "шестьсот ", "семьсот ", "восемьсот ", "девятьсот ")
XX = XX + 0.005
X = Int(XX)
Triade = Int((XX - X) * 100)
R = Format(Triade, "00") + Unit(Triade, Units(0)(0), Units(0)(1), Units(0)(2))
If XX = 0 Then CardText = "Ноль рублей " & R: Exit Function
i = 0
While X > 0
  Triade = (X / 1000 - Int(X / 1000)) * 1000: X = Int(X / 1000): i = i + 1
  If Triade <> 0 Or i < 2 Then
    Select Case Triade Mod 100
    Case 1 To 19
      R = Hundreds(Triade \ 100) & Ones(Triade Mod 100) & Unit(Triade, Units(i)(0), Units(i)(1), Units(i)(2)) & R
    Case Else
      R = Hundreds(Triade \ 100) & Tens((Triade Mod 100) \ 10) & Ones(Triade Mod 10) & Unit(Triade, Units(i)(0), Units(i)(1), Units(i)(2)) & R
    End Select
  End If
Wend
R = Trim(R)
CardText = UCase(Left(R, 1)) & LCase(Mid(R, 2))
Exit Function
err:
CardText = "#ош."
End Function
________________________________________________________________________________ ______________________________
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.06.2017, 14:38
Ответы с готовыми решениями:

Число прописью
Добрый день! Нашел в инете программу преобразующую число в текст с рублями и копейками. Всё бы...

Число прописью
Доброго времети суток! Подскажите, пожалуйста, можно ли в MS Access сделать отображение чисел...

Число прописью в Access
Кода число прописью где надо вставлять в Access? Например: у меня на форме 2 поле первую поле цифру...

Вывести число прописью
Здравствуйте, помогите пожалуйста переделать модуль на VBA, который используется для перевода числа...

0
06.06.2017, 14:38
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.06.2017, 14:38
Помогаю со студенческими работами здесь

Округлить целое число до 5 или 10
Есть поле с денежным форматом, есть значения которые нужно округлить до ближайшей 5 или до 0 на...

Записать число прописью
Дано целое число в интервале 1...999999999. Записать данное число прописью, используя функции для...

Вывести двузначное целое число прописью
&quot;Напишите программу, которая вводит целое число, не превышающее 100, и выводит его прописью,...

Вывести двузначное целое число прописью
Ввести целое число в диапазоне -99...99 и вывести в консоль его словесное описание. Пример: -57 –...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru