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

Задача про сдачу

11.10.2017, 00:06. Показов 1573. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер! Написал код, но уж очень коряво.Помогите пожалуйста исправить. Заранее спасибо.
P.S если есть ошибки в оформлении темы сообщите пожалуйста.

В обращении имеются 1, 2, 5, 10, 20, 50 рублевых монет. Написать программу, определяющую сдачу наименьшим количеством монет. Для определения размера сдаваемой сдачи сначала опре-делить, сколько требуется для этого монет 50-рублевого достоинства, затем 20, 10, 5, 2, 1, пока необходимая сумма не будет набрана.

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
Sub Main()
    Dim money As UShort 
    Dim surrender1 As Byte
    Dim surrender2 As Byte
    Dim surrender3 As Byte
    Dim surrender4 As Byte
    Dim surrender5 As Byte
    Dim surrender6 As Byte
    Console.WriteLine("Введите количество денег")
    money = Console.ReadLine()
    If money \ 50 <> 0 Then
       surrender1 = money \ 50
    ElseIf money Mod 50 <> 0 Then
       surrender2 = (money Mod 50) \ 20
    ElseIf money (money Mod 50) Mod 20) <> 0 Then
       surrender3 = ((money Mod 50) Mod 20) \ 10
    ElseIf (((money Mod 50) Mod 20) Mod 10) <> 0 Then
       surrender4 = (((money Mod 50) Mod 20) Mod 10) \ 5
    ElseIf ((((money Mod 50) Mod 20) Mod 10) Mod 5)  <> 0 Then
       surrender5 = ((((money Mod 50) Mod 20) Mod 10) Mod 5) \ 2 
    Else 
       surrender6 = 1
    End if 
    Console.WriteLine("Ваша сдача составит " & surrender1 & " купюр по 50 рублей " & surrender2 & " купюр по 20 рублей " & surrender3 & " купюр по 10 рублей " & surrender4 & " купюр по 5 рублей " & surrender5 & " купюр по 2 рубля " & surrender6 & " купюр по рублю " )
End Sub
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
11.10.2017, 00:06
Ответы с готовыми решениями:

Экстренно требуется ассистенция.Задача про монетки и сдачу.
Дано натуральное число N(N&lt;=99). Получить все способы выплаты суммы N с помощью монет достоинством 1,5,10,20 копеек. пользуясь языком...

Задача про взлом кода из книги Эрика Фримена про основы javascript в конце 5 главы.
читаю книгу Эрика Фримена про основы javascript.В конце 5 главы есть задачка про взлом кода.Никак не могу понять как ее решить.НЕ понимаю...

Задача на перебор вариантов. Задача Л.Эйлера. Про чиновника
Задача Л.Эйлера. Некий чиновник купил лошадей и быков на сумму 1770 талеров. За каждую лошадь он уплатил по 31 талеру, а за каждого быка по...

9
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
11.10.2017, 07:16
VB.NET
1
2
3
4
5
6
7
8
9
10
11
12
    Sub Main()
        Dim money As Integer, i, m(5), surrender(5) As Integer, s As String = "Ваша сдача составит:" & vbCrLf
        m = {50, 20, 10, 5, 2, 1}
        Console.WriteLine("Введите количество денег")
        money = Console.ReadLine()
        For i = 0 To 5
            surrender(i) = money \ m(i)
            If surrender(i) <> 0 Then s &= "-количество купюр по " & m(i) & " руб.: " & vbTab & surrender(i) & vbCrLf : money -= surrender(i) * m(i)
        Next
        Console.WriteLine(s)
        Console.ReadLine()
    End Sub
Добавлено через 6 часов 13 минут
Definited, кстати, surrender - это скорее сдача в плен, а вовсе не сдача с покупки.
2
1 / 1 / 0
Регистрация: 10.10.2017
Сообщений: 44
11.10.2017, 16:34  [ТС]
SoftIce, Спасибо большое!). Еще один вопрос, а используя только условия можно решить данную задачу ?
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
11.10.2017, 16:48
Цитата Сообщение от Definited Посмотреть сообщение
используя только условия можно решить данную задачу
Можно.
0
1 / 1 / 0
Регистрация: 10.10.2017
Сообщений: 44
11.10.2017, 17:06  [ТС]
SoftIce, так понимаю, что мое решение в корне неправильное ?
0
Заблокирован
12.10.2017, 21:46
Цитата Сообщение от SoftIce Посмотреть сообщение
VB.NET
1
money -= surrender(i) * m(i)
Или в VBNET нет оператора MOD, или SoftIce решил покуражиться?
Visual Basic
1
money = money Mod m(i)
1
193 / 191 / 31
Регистрация: 11.10.2016
Сообщений: 610
13.10.2017, 09:15
Цитата Сообщение от Definited Посмотреть сообщение
а используя только условия можно решить данную задачу
получится, надо полагать, что-то вроде этого:
VB.NET
1
2
3
4
5
6
7
money = Console.ReadLine()
If money >= 50 Then q = money \ 50: money = money - q * 50: Console.WriteLine(q & " x50" & vbCrlf)
If money >= 20 Then q = money \ 20: money = money - q * 20: Console.WriteLine(q & " x20" & vbCrlf)
If money >= 10 Then q = money \ 10: money = money - q * 10: Console.WriteLine(q & " x10" & vbCrlf)
If money >= 5 Then q = money \ 5: money = money - q * 5: Console.WriteLine(q & " x5" & vbCrlf)
If money >= 2 Then q = money \ 2: money = money - q * 2: Console.WriteLine(q & " x2" & vbCrlf)
If money = 1 Then Console.WriteLine("1" & vbCrlf)
разумеется, повторяющиеся участки кода можно оформить в виде процедуры с параметрами
2
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
13.10.2017, 09:19
Цитата Сообщение от _shark Посмотреть сообщение
money = money - q * 50
Тоже куражитесь ?

А как же ?
Цитата Сообщение от Остап Бонд Посмотреть сообщение
money = money Mod m(i)
То есть, money = money Mod 50
0
193 / 191 / 31
Регистрация: 11.10.2016
Сообщений: 610
13.10.2017, 11:13
Цитата Сообщение от SoftIce Посмотреть сообщение
Тоже куражитесь ?
это на случай, если
Цитата Сообщение от Остап Бонд Посмотреть сообщение
в VBNET нет оператора MOD
0
es geht mir gut
 Аватар для SoftIce
11274 / 4760 / 1183
Регистрация: 27.07.2011
Сообщений: 11,439
13.10.2017, 12:10
Цитата Сообщение от _shark Посмотреть сообщение
в VBNET нет оператора MOD
Да есть он там. Мне просто не понравилось в первом сообщении Mod.. Mod.. Mod.. Mod.. Mod.. Mod.. двадцать раз подряд, да еще в час ночи
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
13.10.2017, 12:10
Помогаю со студенческими работами здесь

Задача про IP
Простите что не совсем в тему , но у меня ответ 97.15.81.53/15 , но говорят это неправильно Дана сеть 97.0.0.0/8 Надо разбить ...

Определить сдачу с покупки
Разбор От C отнимем A и от D отнимем B. Если D&lt;0, то уменьшаем С на единицу и увеличиваем D на 100. Если после всего этого С&lt;0, то...

Программа, рассчитывающая сдачу
Просьба помочь в написании кода: Составьте алгоритм и напишите программу, рассчитывающую сдачу с 50 рублей, которую необходимо вернуть...

Определить сдачу с покупки
1.Товар стоит a руб. b коп. За него заплатили c руб. d коп. Сколько сдачи требуется получить?(e руб. f коп.) a,b,c,d целые, &gt;0, &lt;100 ...

Задача про биоритмы
Разработать программу, осуществляющую оценку физического, эмоционального и интеллектуального состояния человека на основании гипотезы о...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Новые блоги и статьи
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка SDL3 из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru