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

Перевод из C++ в VBa

30.06.2020, 16:55. Показов 1379. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, можете помочь с переводом кода из одной среды в другую?

C++
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
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
//Оплата парковки
 
//Имя входного файла: стандартный ввод
//Имя выходного файла: стандартный вывод
//Ограничение по времени: 2 секунды
//Ограничение по памяти: 256 мегабайт
 
//На каникулах Роман решил отдохнуть во Флатландии и арендовал себе апартаменты
//и роскошный автомобиль. Разумеется, такой автомобиль нельзя оставлять во дворе,
 //поэтому Роман хочет также арендовать место на ближайшей охраняемой парковке.
//Поскольку он уже поиздержался с жильём и машиной, он хочет потратить на парковку
//как можно меньше бурлей.
//На парковке доступны три тарифа аренды:
 
//1. Заплатив a бурлей, можно использовать парковку в течение 1 дня.
 
//2. Заплатив b бурлей, можно использовать парковку в течение одной недели, то есть
//7 дней.
 
//3. Заплатив c бурлей, можно использовать парковку в течение четырёх недель, то есть
//28 дней.
 
//Роман планирует отдыхать во Флатландии n дней. Любой тариф можно использовать
//произвольное количество раз, также можно арендовать парковку на суммарно больший
//срок, чем нужно.
//Какое минимальное количество бурлей придётся заплатить Роману, чтобы иметь возможность
//использовать стоянку все n дней?
 
//Формат входных данных
//Первая строка входных данных содержит три целых числа a, b, c (1 <= a <= b <= c <= 1000)
//— цена в бурлях за однократную покупку первого, второго и третьего тарифа аренды
//соответственно.
 
//Вторая строка содержит целое число n (1 <= n <= 10^15) — количество дней, в течение которых
//Роман планирует отдыхать во Флатландии и оставлять машину на охраняемой парковке.
 
//Формат выходных данных
 
//Выведите единственное целое число — минимальное количество бурлей, которое Роману
//придётся потратить на аренду парковочного места.
 
//Примеры
 
//стандартный ввод   стандартный вывод
//4 7 20            14
//10
 
//2 9 38            47
//36
 
//Замечание
 
//В первом примере Роману выгодно взять 2 абонемента на неделю, это будет стоить
//2 * 7 = 14 бурлей и позволит оплатить парковку на 14 дней.
 
//Во втором примере выгодно купить 5 абонементов на неделю и 1 на день.
//Количество оплаченных дней будет ровно 36, а цена составит
//1 * 2 + 5 * 9 + 0 * 38 = 47 бурлей.
///////////////////////////////////////////////////////////////////////////////
#include <algorithm>
#include <array>
#include <cmath>
#include <iostream>
#include <limits>
///////////////////////////////////////////////////////////////////////////////
typedef long long               T_int;
///////////////////////////////////////////////////////////////////////////////
const   T_int                   TARIFFS_TOTAL   {3};
///////////////////////////////////////////////////////////////////////////////
typedef std::array  < T_int,    TARIFFS_TOTAL   >   T_int_val_of_tariff;
///////////////////////////////////////////////////////////////////////////////
const   T_int_val_of_tariff     DAYS_OF_TARIFF  { 1, 7, 28 };
///////////////////////////////////////////////////////////////////////////////
T_int     periods_of_tariff
    (
        T_int     n,
        T_int     tariff_ind
    )
{
    return          n
                /   DAYS_OF_TARIFF          [ tariff_ind ]
 
            +   (
                            n
                        %   DAYS_OF_TARIFF  [ tariff_ind ]
 
                    !=  0
                );
}
///////////////////////////////////////////////////////////////////////////////
T_int     price_total_min
    (
        T_int_val_of_tariff     const   &   price_of_tariff,
        T_int                               n
    )
{
    T_int_val_of_tariff     price_min_of_tariff{{}};
 
    for( T_int  i{}; i < TARIFFS_TOTAL; ++i )
    {
        auto    &   elem_cur    =   price_min_of_tariff[i];
        elem_cur                =   std::numeric_limits<T_int>::max();
 
        for( T_int  j{}; j <= i; ++j )
        {
            elem_cur    =   std::min    (
                                            elem_cur,
 
                                                price_of_tariff     [j]
                                            *   DAYS_OF_TARIFF      [i]
                                            /   DAYS_OF_TARIFF      [j]
                                        );
        }//for
    }//for
 
    T_int_val_of_tariff     results{{}};
 
    results[2]  =       price_min_of_tariff     [2]
                    *   periods_of_tariff       ( n, 2 );
 
    for( T_int  i = 1; i >= 0; --i )
    {
        results[i]      =   results[i + 1];
 
        auto    n_i     =       n
                            %   DAYS_OF_TARIFF[i + 1];
 
        if( n_i )
        {
            results[i]  =       results                     [i]
                            -   price_min_of_tariff         [i + 1]
 
                            +       price_min_of_tariff     [i]
 
                                *   periods_of_tariff
                                        (
                                            n_i,
                                            i
                                        );
        }//if
    }//for
 
    return  *std::min_element
                (
                    std::begin  ( results ),
                    std::end    ( results )
                );
}
///////////////////////////////////////////////////////////////////////////////
int     main()
{
    T_int_val_of_tariff     price_of_tariff{{}};
 
    for( auto   &   price   :   price_of_tariff )
    {
        std::cin    >>  price;
    }
 
    T_int     n{};
    std::cin   >>  n;
 
    std::cout   <<  price_total_min
                        (
                            price_of_tariff,
                            n
                        )
 
                <<  std::endl;
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.06.2020, 16:55
Ответы с готовыми решениями:

Перевод на VBA с c++
Перевод на VBA с c++ Ввести строку, состоящую только из цифр и букв. Распечатать те группы цифр, в которых цифра 7 встречается не...

Перевод с VBA на C#
Не знаю правильно ли я перевел, если не так то подскажите пожалуйста в чем ошибки. Код с примера ...

Перевод из Pascal в VBA
Нужно перевести из Pascal в VBA PROGRAM Solution(INPUT, OUTPUT); VAR   num: INTEGER;   n1, n2, n3: INTEGER; BEGIN

4
Эксперт CЭксперт С++
 Аватар для liv
5120 / 4574 / 855
Регистрация: 07.10.2015
Сообщений: 9,462
30.06.2020, 17:05
Mufasa12, я правильно понял, Вы хотите получить код на Visual Basic for Application?
Т.е. запустить его, например, в Excel?
1
0 / 0 / 0
Регистрация: 17.05.2019
Сообщений: 37
30.06.2020, 17:07  [ТС]
На языке visual basic можно и через платформу Visual Studio..
Могу отправить само условие задачи, может проще будет код написать заново, а не переводить с другого языка... но в общем-то вы всё верно описали
0
Эксперт CЭксперт С++
 Аватар для liv
5120 / 4574 / 855
Регистрация: 07.10.2015
Сообщений: 9,462
30.06.2020, 17:09
Mufasa12, я перекинул тему в Visual Basic
А условие давайте, конечно. Не помешает.
1
0 / 0 / 0
Регистрация: 17.05.2019
Сообщений: 37
30.06.2020, 17:13  [ТС]
очень надеюсь на вашу скорую помощь..
Миниатюры
Перевод из C++ в VBa  
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
30.06.2020, 17:13
Помогаю со студенческими работами здесь

Перевод с Python на VBA
Как перевести с Python на VBA max(text.split(), key=lambda w: len(re.sub(pat, '', w)))

Перевод из vba в delphi
Кто поможет перевести ? Selection.MoveDown Unit:=wdLine, Count:=1 Selection.EndKey Unit:=wdStory, Extend:=wdExtend

Перевод из Pascal в VBA
program Begin20; var x1,y1,x2,y2,L: Real; begin Writeln('Введите значение координат певой точки: '); Write('Введите...

Перевод с Паскаль на VBA
Само задание : Найти наименьший номер члена последовательности, для которого выполняется условие |an — an-1| &lt; ε. Вывести на...

Перевод с Бейсика на VBA
Здравствуйте, помогите, пожалуйста, перевести программный код с Бейсика на VBA. Заранее благодарю. 10 cls 20 input &quot;Введите...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru