Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 05.06.2014
Сообщений: 26

Что выполняет код?

19.10.2017, 09:42. Показов 1467. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, подскажите суть выполнения данного кода
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
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
Public Function SFUNCTION(Source As Long, Rod%, Optional ByVal w1 As String = "", Optional ByVal w2to4 As String = "", Optional ByVal w5to10 As String = "") As String 
' Исходные данные: 
' Source - число от 0 до 2147483647 (2^31-1) 
 
' далее нужно задать информацию о единице изменения 
' Rod% = 1 - мужской, = 2 - женский, = 3 - средний 
' название единицы изменения: 
' w1$ - именительный падеж единственное число (= 1) 
' w2to4$ - родительный падеж единственное число (= 2-4) 
' w5to10$ - родительный падеж множественное число ( = 5-10) 
 
'================================ 
Dim Summa As String 
Dim TempValue As Long 
' 
If Source& = 0 Then 
SummaString = RTrim$("ноль " + w5to10$): Exit Function 
End If 
' 
TempValue = Source: Summa = "" 
' единицы 
Call STREE(Summa, TempValue, Rod%, w1$, w2to4$, w5to10$) 
If TempValue = 0 Then SummaString = Summa: Exit Function 
' 
Call STREE(Summa, TempValue, 2, "тысяча", "тысячи", "тысяч") 
If TempValue = 0 Then SummaString = Summa: Exit Function 
' 
Call STREE(Summa, TempValue, 1, "миллион", "миллиона", "миллионов") 
If TempValue = 0 Then SummaString = Summa: Exit Function 
' 
Call STREE(Summa, TempValue, 1, "миллиард", "миллиарда", "миллиардов") 
If TempValue = 0 Then SummaString = Summa: Exit Function 
End Function 
 
Private Sub STREE(Summa$, TempValue As Long, Rod%, w1$, w2to4$, w5to10$) 
'==================================== 
Dim Rest%, Rest1%, EndWord$, s1$, s10$, s100$ 
' 
Rest% = TempValue& Mod 1000 
TempValue& = TempValue& \ 1000 
If Rest% = 0 Then 
If Summa$ = "" Then Summa$ = w5to10$ + " " 
Exit Sub 
End If 
' 
' начинаем подсчет с Rest 
EndWord$ = w5to10$ 
Select Case Rest% \ 100 
Case 0: s100$ = "" 
Case 1: s100$ = "сто " 
Case 2: s100$ = "двести " 
Case 3: s100$ = "триста " 
Case 4: s100$ = "четыреста " 
Case 5: s100$ = "пятьсот " 
Case 6: s100$ = "шестьсот " 
Case 7: s100$ = "семьсот " 
Case 8: s100$ = "восемьсот " 
Case 9: s100$ = "девятьсот " 
End Select 
' 
Rest% = Rest% Mod 100: Rest1% = Rest% \ 10 
s1$ = "" 
Select Case Rest1% 
Case 0: s10$ = "" 
Case 1 ' особый случай 
Select Case Rest% 
Case 10: s10$ = "десять " 
Case 11: s10$ = "одиннадцать " 
Case 12: s10$ = "двенадцать " 
Case 13: s10$ = "тринадцать " 
Case 14: s10$ = "четырнадцать " 
Case 15: s10$ = "пятнадцать " 
Case 16: s10$ = "шестнадцать " 
Case 17: s10$ = "семнадцать " 
Case 18: s10$ = "восемнадцать " 
Case 19: s10$ = "девятнадцать " 
End Select 
Case 2: s10$ = "двадцать " 
Case 3: s10$ = "тридцать " 
Case 4: s10$ = "сорок " 
Case 5: s10$ = "пятьдесят " 
Case 6: s10$ = "шестьдесят " 
Case 7: s10$ = "семьдесят " 
Case 8: s10$ = "восемьдесят " 
Case 9: s10$ = "девяносто " 
End Select 
' 
If Rest1% <> 1 Then ' единицы 
Select Case Rest% Mod 10 
Case 1 
Select Case Rod% 
Case 1: s1$ = "один " 
Case 2: s1$ = "одна " 
Case 3: s1$ = "одно " 
End Select 
EndWord$ = w1$ 
Case 2 
If Rod% = 2 Then s1$ = "две " Else s1$ = "два " 
EndWord$ = w2to4$ 
Case 3: s1$ = "три ": EndWord$ = w2to4$ 
Case 4: s1$ = "четыре ": EndWord$ = w2to4$ 
Case 5: s1$ = "пять " 
Case 6: s1$ = "шесть " 
Case 7: s1$ = "семь " 
Case 8: s1$ = "восемь " 
Case 9: s1$ = "девять " 
End Select 
End If 
' 
Summa$ = RTrim$(RTrim$(s100$ + s10$ + s1$ + EndWord$) + " " + Summa$) 
End Sub
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.10.2017, 09:42
Ответы с готовыми решениями:

Что выполняет код
initMas: mov EBX, offset array mov ESI, 0 mov dword ptr , 1 ;a0 inc ESI mov dword ptr , 1 ;a1 Nachalo: cmp ESI,...

Что выполняет код?
Всем привет. Я давно занимаюсь программированием, но так и не знаю, что выполняется в таких кодах? int peremennaya == 123; и ...

Что выполняет код?
Всем привет, расскажите, что выполняет этот код и что означают i и v? $.each(itemsTape, function(i,v){ ...

2
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
19.10.2017, 12:33
Лучший ответ Сообщение было отмечено Alin04Ka как решение

Решение

Понятно же. Переводит число, записанное цифрами, в число, записанное словами.
1
 Аватар для Pro_grammer
6807 / 2839 / 527
Регистрация: 24.04.2011
Сообщений: 5,308
Записей в блоге: 10
19.10.2017, 15:32
Цитата Сообщение от SoftIce Посмотреть сообщение
Переводит число, записанное цифрами, в число, записанное словами.
Похоже тут несколько шире функционал, чем просто "число прописью"
По идее код универсальный и должен работать с любыми величинами, как то проценты, километры, литры, доллары и т.п.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.10.2017, 15:32
Помогаю со студенческими работами здесь

Что выполняет данный код?
Здравствуйте, пожалуйста объясните что выполняют функции в данном коде? (setq echo nil) (LOOP (PRIN1 (QUOTE *)) (EVAL (READ))...

Что выполняет данный код?
namespace StartProgramm { class Program { public static String file_dll =...

Что выполняет этот код?
Что выполняет этот код? Распишите подробнее по строчкам float f(float a, float b, float c, float x) { if (a &lt; 0.0f &amp;&amp; c...

Azure. Что именно выполняет код?
Что именно выполняет выделенное в коде ?

Компилятор не выполняет полностью код. Что я не так делаю?
!!! import java.util.Scanner; public class Main { static Scanner str = new Scanner(System.in); //static...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка. Рецензия / Мнение/ Перевод https:/ / **********/ gallery/ thinkpad-x220-tablet-porn-gzoEAjs . . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru