Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.70/125: Рейтинг темы: голосов - 125, средняя оценка - 4.70
1 / 1 / 0
Регистрация: 17.10.2010
Сообщений: 12

Вывести на печать переменные A, B, C в порядке их возрастания

17.10.2010, 16:10. Показов 26525. Ответов 12
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
1. вывести на печать переменные A, B, C в порядке их возрастания. Значения переменных: а) ввести с клавиатуры; б) взять из диапазана B2:B4 листа Excel; в) задать оператором присваивания

2. даны значения x,y,z. Определить, могут ли они быть сторонами: а) обычного треугольника; б) равнобедренного треугольника.

3. Даны действительные числа x,y,z. Получить минимальное из них по модулю.

Добавлено через 3 минуты
1. Как значения ввести ясно, а вот как написать сам алгоритм- уже проблема.
3. не понятно, как модулю, без модуля вот :
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Sub min3()
Dim x, y, z As Integer
x = InputBox("x")
y = InputBox("y")
z = InputBox("z")
If x < y Then
If x < z Then
Min = x
Else: Min = z
End If
Else
If y > z Then
Min = z
Else: Min = y
End If
End If
MsgBox Min
 
End Sub
1
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
17.10.2010, 16:10
Ответы с готовыми решениями:

Вывести на печать переменные A, B, C, D в порядке убывания
Вывести на печать переменные A, B, C, D в порядке убывания. Срочно нужно решение пожалуйста, куратор задолбал доп. заданиями грузить:(

Вывести в порядке возрастания из трех введеных значений
вот в принципе и все,только с использованием ImputBox

Вывести в порядке возрастания все целые числа, расположенные между A и B
Помогите пожалуйста Даны два целых числа A и B (A &lt; B). Вывести в порядке возрастания все целые числа, расположенные междуA и B...

12
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
17.10.2010, 18:18
модуль(x) = Abs(x)
0
204 / 43 / 6
Регистрация: 15.10.2010
Сообщений: 125
18.10.2010, 11:50
Цитата Сообщение от Bloodmari Посмотреть сообщение
1. вывести на печать переменные A, B, C в порядке их возрастания. Значения переменных: а) ввести с клавиатуры; б) взять из диапазана B2:B4 листа Excel; в) задать оператором присваивания

2. даны значения x,y,z. Определить, могут ли они быть сторонами: а) обычного треугольника; б) равнобедренного треугольника.

3. Даны действительные числа x,y,z. Получить минимальное из них по модулю.

Добавлено через 3 минуты
1. Как значения ввести ясно, а вот как написать сам алгоритм- уже проблема.
3. не понятно, как модулю, без модуля вот :
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Sub min3()
Dim x, y, z As Integer
x = InputBox("x")
y = InputBox("y")
z = InputBox("z")
If x < y Then
If x < z Then
Min = x
Else: Min = z
End If
Else
If y > z Then
Min = z
Else: Min = y
End If
End If
MsgBox Min
 
End Sub
Эту часть лучше сделать короче:
Visual Basic
1
2
3
4
x = InputBox("input x")
y = InputBox("input y")
z = InputBox("input z")
MsgBox (Application.Min(Abs(x), Abs(y), Abs(z)))
Добавлено через 23 минуты
А если добавить такую строчку можно дать ответ по равнобедренному треугольнику:

MsgBox (IIf(x > 0 And y > 0 And z > 0 And (x = y Or y = z Or z = x), "получится ранобедренный треугольник", "ранобедренный треугольник не получится"))

По обычному треугольнику ответить смогу, если напишите математически, как это проверяется (честно, из математики не помню ничего)
1
1 / 1 / 0
Регистрация: 17.10.2010
Сообщений: 12
18.10.2010, 19:39  [ТС]
вот, что-то получилоь на обычный треугольник....
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Sub nomer2a()
Dim x, z, y, c, a As Integer
x = InputBox("x")
y = InputBox("y")
z = InputBox("z")
If x + y > z Then
ElseIf x + z > y Then
ElseIf y + z > x Then
MsgBox "da"
Else
MsgBox "net"
End If
End Sub
Добавлено через 2 минуты
Первый номер срочно нужен((( Вообще хрень у меня получается с ним
0
1 / 1 / 0
Регистрация: 17.10.2010
Сообщений: 12
18.10.2010, 21:03  [ТС]
О, вот получился номер 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
26
27
28
29
30
Sub nomer1()
Dim a, b, c As Integer
a = 2
b = 3
c = 1
If a > b Then
If a > c Then
Max = a
If b > c Then
Min = c: sr = b
Else
Min = b: sr = c
End If
Else: Max = c: Min = b: sr = a
End If
Else
If b > c Then
Max = b
If a > c Then
Min = c: sr = a
Else
Min = a: sr = c
End If
Else: Max = c: Min = a: sr = b
End If
End If
MsgBox Min
MsgBox sr
MsgBox Max
End Sub
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
18.10.2010, 21:17
Не думаю!
ввести с клавиатуры; б) взять из диапазана B2:B4 листа Excel; в) задать оператором присваивания
0
204 / 43 / 6
Регистрация: 15.10.2010
Сообщений: 125
19.10.2010, 00:01
номер 1 правильно делается так. Сделано для двух разветвлений, но если объясните, что именно подразумевается под "задать оператором присаивания", включу Вам и 3-ю развилку:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
Sub mac1
 
Dim a%, b%, c%, vybor%
Dim mn$, sr$, mx$
 
If MsgBox("Ввести с клавиатуры?", vbYesNo) = 6 Then '6=vbYes, 7=vbNo
a = Val(InputBox("переменная A", vbOKOnly))
b = Val(InputBox("переменная B", vbOKOnly))
c = Val(InputBox("переменная C", vbOKOnly))
vybor = 1
ElseIf MsgBox("Выбрать с рабочего листа?", vbYesNo) = 6 Then
vybor = 2
End If
mn = IIf(vybor = 1, Application.Min(a, b, c), Application.Min(Range(Cells(2, 2), Cells(4, 2))))
mx = IIf(vybor = 1, Application.Max(a, b, c), Application.Max(Range(Cells(2, 2), Cells(4, 2))))
sr = IIf(vybor = 1, Application.Sum(a, b, c)- Val(mn) - Val(mx), Application.Sum(Range(Cells(2, 2), Cells(4, 2))) - Val(mn) - Val(mx))
MsgBox ("Минимум - " & mn & ", среднее - " & sr & ", максимум- " & mx)
 
End Sub
Чтобы макрос сработал с диапазоном B2:B4 , в перед запуском в эти ячейки ввести цифры .
2
1 / 1 / 0
Регистрация: 17.10.2010
Сообщений: 12
19.10.2010, 00:07  [ТС]
задать оператором присаивания
это например, x=2, y=3, x=4



В общем спасибо всем за помощь))) Только по ходу выпонения у меня возник один вопрос
MsgBox (Application.Min(Abs(x), Abs(y), Abs(z)))
Что такое Application. ? В общем виде как выглядит?
Вложения
Тип файла: xls razvet alg.xls (41.0 Кб, 96 просмотров)
0
1 / 1 / 0
Регистрация: 17.10.2010
Сообщений: 12
19.10.2010, 00:12  [ТС]
в файле все, что получилось
0
204 / 43 / 6
Регистрация: 15.10.2010
Сообщений: 125
19.10.2010, 00:15
Цитата Сообщение от Bloodmari Посмотреть сообщение
это например, x=2, y=3, x=4



В общем спасибо всем за помощь))) Только по ходу выпонения у меня возник один вопрос Что такое Application. ? В общем виде как выглядит?
Application-это указание на то, что функции максимума, минимума, суммы и т.д. - встроенные функции excel, с которыми макрос должен работать.Кстати, копировала по частям и косякнула, только что подправила: вместо
sr = IIf(vybor = 1, Application.Sum(a, b, c) , Application.Sum(Range(Cells(2, 2), Cells(4, 2))) - Val(mn) - Val(mx))
должно быть
sr = IIf(vybor = 1, Application.Sum(a, b, c) - Val(mn) - Val(mx), Application.Sum(Range(Cells(2, 2), Cells(4, 2))) - Val(mn) - Val(mx)). вариант вверху исправила. Извини. Через пару мин. скину с третьей развилкой

Добавлено через 1 минуту
Цитата Сообщение от Bloodmari Посмотреть сообщение
в файле все, что получилось
Ладно, через пару мин скину целиком файл с макросом
1
204 / 43 / 6
Регистрация: 15.10.2010
Сообщений: 125
19.10.2010, 00:31
Цитата Сообщение от Bloodmari Посмотреть сообщение
в файле все, что получилось
вот и файлик с макросом. ловите
Вложения
Тип файла: xls Exsump1.xls (26.5 Кб, 177 просмотров)
1
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
19.10.2010, 08:58
ввести с клавиатуры; б) взять из диапазана B2:B4 листа Excel
Я это имел в виду.
Понял, что необходимо реализовать это всё. Т.е сделать три варианта
0
1 / 1 / 0
Регистрация: 22.01.2015
Сообщений: 1
22.01.2015, 14:50
Решаю задачи из той же методички и как раз искал решение первого задания из приведенного списка.

В общем, достаточно много работающих вариантов в сети опубликовано, но наиболее изящным мне показался вот этот (хотя я и не уверен, что он оптимален - не разбираюсь):


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
Public Sub Increase()
 
 
Dim a As Integer, b As Integer, c As Integer, max As Integer, min As Integer, mid As Integer
 
a = InputBox("Введите a")
b = InputBox("Введите b")
c = InputBox("Введите c")
 
 
max = a
 
If b > max Then
max = b
End If
If c > max Then
max = c
End If
 
min = a
 
If b < min Then
min = b
End If
If c < min Then
min = c
End If
mid = a + b + c - min - max
MsgBox (min & " " & mid & " " & max)
 
End Sub
Если что, это просто код VBA для решения, которое дал на одном из топиков этого же форума пользователь Puporev, но на Паскале
оригинальный комментарий:
Вывести числа на экран в порядке убывания.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.01.2015, 14:50
Помогаю со студенческими работами здесь

Как вывести в порядке возрастания все целые числа, расположенные между A и B
нужен код на 1.Даны два целых числа A и B (A &lt; B). Вывести в порядке возрастания все целые числа, расположенные между A и B (включая сами...

Вывести в порядке возрастания те числа из данного диапазона, которые ни разу не встречаются в массиве
Дан одномерный массив из 50 случайных целых чисел в диапазоне от 10 до 85 включительно. Вывести в порядке возрастания те числа из данного...

Вывести на печать текст в порядке возрастания длин строк
Пусть задан текст, представляющий собой последовательность строк. Признак конца текста вводится пользователем. Выведите на печать...

Вывести слова на печать в порядке возрастания их общей длины в предложении
Строки. Дано N предложений, слова в которых разделены пробелами. Вывести их на печать в порядке возрастания общей длины слов в...

Вывести на печать в порядке возрастания общей длины слов в предложении
Дано N предложений, слова в которых разделены пробелами. Вывести их на печать в порядке возрастания общей длины слов в предложении (без...


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

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Новые блоги и статьи
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
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru