Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 21.04.2022
Сообщений: 9
1
Excel

В ячейках А2, С3 и В3 находятся целые числа. Составить подпрограмму для нахождения произведения этих чисел

14.06.2022, 10:20. Показов 806. Ответов 15
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Здравствуйте можете подсказать как правильно написать данную не очень сложную программу? Буду очень презнательна вам:

В ячейках А2, С3 и В3 находятся целые числа. Составить подпрограмму для нахождения произведения этих чисел. Если произведение меньше 122 в диалоговом окне вывести слово «МЕНЬШЕ» иначе слово «НЕТ ».
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.06.2022, 10:20
Ответы с готовыми решениями:

Считая что в двух строках находятся очень длинные целые числа, сформировать третью строку - сумму этих чисел
Вообщем, задание вот такое: Даны две символьные строки, состоящие только из цифр (длина каждой...

Считая, что в этих строках находятся очень длинные числа, сформируйте третью строку- сумму этих чисел.
Вот сама задача: Даны две символьные строки, состоящие только из цифр (длина каждой более 10...

Составить 2 бок-схемы и 2 программы для нахождения произведения первых 20 чисел
помогите пожалуйста решить Составить 2 бок-схемы и 2 программы для нахождения произведения...

Дан массив A(N) и целые числа К и L. Составить программу для вычисления сумм элементов, чьи номера находятся в интервалах 1)1<=I<=L; 2)K
напишите код пожалуйста

Дан массив A(N) и целые числа К и L. Составить программу для вычисления сумм элементов, чьи номера находятся в интервалах 1)1<=I<=L; 2)K<I<=L; 3)
Дан массив A(N) и целые числа К и L. Составить программу для вычисления сумм элементов, чьи номера...

15
Динохромный
1375 / 749 / 271
Регистрация: 22.12.2015
Сообщений: 2,341
14.06.2022, 11:13 2
Visual Basic
1
2
3
Public Sub rt()
If Range("A2") * Range("B3") * Range("C3") >= 122 Then MsgBox "Нет" Else MsgBox "МЕНЬШЕ"
End Sub
1
Модератор
Эксперт функциональных языков программированияЭксперт Python
36601 / 20330 / 4220
Регистрация: 12.02.2012
Сообщений: 33,644
Записей в блоге: 13
14.06.2022, 11:14 3
Visual Basic
1
2
3
4
5
6
7
8
Sub Test()
    q#=Range("A2").value * Range("C3").value * Range("B3").value 
    if q# < 122 Then
       MsgBox "Меньше"
    else
       MsgBox "Нет"
    end if
end Sub
0
1846 / 1161 / 354
Регистрация: 11.07.2014
Сообщений: 4,102
14.06.2022, 12:20 4
Не могу не проучаствовать в столь сложной задаче. Значимая строка
Visual Basic
1
MsgBox IIf([A2] * [B3] * [C3] >= 122, "Нет", "Меньше")
1
ᴁ®
Эксперт MS Access
3648 / 2004 / 427
Регистрация: 13.12.2016
Сообщений: 6,894
Записей в блоге: 5
14.06.2022, 21:57 5
Burk, вы самый лаконичный, ну а Catstail, самый точный ибо если = 122 выведет правильно только у Catstail
0
1846 / 1161 / 354
Регистрация: 11.07.2014
Сообщений: 4,102
15.06.2022, 02:08 6
АЕ, а вы как 122 набирали? Т.к 61 простое число, то возможно только 2 набора 122*1*1 и 61*1*2
мы, конечно, помним, что от перемены мест сомножителей произведение не меняется. Так вот, при этих двух наборах выдается "Нет", что и должно быть. Но вы не заметили ещё одного - моё первое послание было написано с долей иронии.
If и IIF работают одинаково, иначе это была катастрофа для программистов.

Даже самый простой вопрос можно превратить в огромную проблему.
0
ᴁ®
Эксперт MS Access
3648 / 2004 / 427
Регистрация: 13.12.2016
Сообщений: 6,894
Записей в блоге: 5
15.06.2022, 02:38 7
Цитата Сообщение от Burk Посмотреть сообщение
выдается "Нет", что и должно быть.
И правда, а что должно быть, если равно? "Нет"
Поистине - превратил в проблему.
0
Модератор
Эксперт MS Access
11960 / 4828 / 779
Регистрация: 07.08.2010
Сообщений: 14,140
Записей в блоге: 4
15.06.2022, 07:55 8
Цитата Сообщение от Burk Посмотреть сообщение
If и IIF работают одинаково, иначе это была катастрофа для программистов
вы не правы, они работают по разному - в них разный порядок вычислений
запустите код
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Option Compare Database
Option Explicit
Sub mm220615()
Dim a, b, c
a = 0
b = 32
If a = 0 Then c = 3 Else c = b / a
'' просчитывается только нужная ветвь
Debug.Print "вариант if", c
 
c = IIf(a = 0, 3, b / a)
'' просчитываются обе  ветви, а только потом идет выбор
Debug.Print "вариант iif", c
End Sub
Миниатюры
В ячейках А2, С3 и В3 находятся целые числа. Составить подпрограмму для нахождения произведения этих чисел  
1
1846 / 1161 / 354
Регистрация: 11.07.2014
Сообщений: 4,102
15.06.2022, 13:20 9
shanemac51, даже запускать не буду, я это уже знаю сто лет. Имелась ввиду проверка логических условий, а не порядок вычислений. А в этой задаче только произведение. Может закончим на этом на такой фитюльке показывать свои глубокие знания. По мне, так я бы подобные задачи фильтровал, а не выпускал на форум. Человек не знает элементарных вещей, а мы тут копья ломаем. Я для того и написал свой вариант после Catstail, Dinoxromniy, чтобы в мягкой форме подчеркнуть это.
0
Модератор
Эксперт MS Access
11960 / 4828 / 779
Регистрация: 07.08.2010
Сообщений: 14,140
Записей в блоге: 4
15.06.2022, 13:40 10
Цитата Сообщение от Burk Посмотреть сообщение
А в этой задаче только произведение
какая разница, какая операция, главное, что IIF имеет побочный эффект
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Option Compare Database
Option Explicit
Sub mm220615()
Dim a As Integer, b As Integer, c As Integer
a = 50
b = 1000
If a < 10 Then c = a * b Else c = b / a
'' просчитывается только нужная ветвь
Debug.Print "вариант if", c
 
c = IIf(a < 50, a * b, b / a)
'' просчитываются обе  ветви, а только потом идет выбор, поэтому дает ошибку
Debug.Print "вариант iif", c
End Sub
1
1846 / 1161 / 354
Регистрация: 11.07.2014
Сообщений: 4,102
15.06.2022, 13:50 11
shanemac51, Да знаю я этот побочный эффект, знаю!!! А при умножении целых чисел он не проявится, тем более, что вычислений по веткам нет, а только вывод коротких строковых
0
828 / 479 / 185
Регистрация: 09.03.2009
Сообщений: 1,644
16.06.2022, 08:08 12
Вот все же не хватает короткозамкнутости операций, как в Си, код был бы короче с IIf.
1
1846 / 1161 / 354
Регистрация: 11.07.2014
Сообщений: 4,102
16.06.2022, 08:56 13
Zeag, абсолютно с вами согласен, глупо, конечно, сначала вычислять результаты по веткам, а потом проверять какая же нужна.
0
Модератор
Эксперт MS Access
11960 / 4828 / 779
Регистрация: 07.08.2010
Сообщений: 14,140
Записей в блоге: 4
24.06.2022, 12:54 14
Цитата Сообщение от Burk Посмотреть сообщение
Да знаю я этот побочный эффект, знаю!!!
надо чтобы знали не только вы, но и начинающие осваивать vba/access
иначе потратят и время и нервы, чтобы найти ошибку
2
1846 / 1161 / 354
Регистрация: 11.07.2014
Сообщений: 4,102
24.06.2022, 17:21 15
shanemac51, не учите меня жить и давно бы пора вам сосредоточиться на других темах. А лентяи, выкладывающие такие темы, пусть ходят на занятия. А насчет нервов и времени, не беспокойтесь, они их тратить не будут.
0
Модератор
Эксперт MS Access
6012 / 2840 / 693
Регистрация: 12.06.2016
Сообщений: 7,631
02.03.2023, 16:28 16
Цитата Сообщение от Burk Посмотреть сообщение
Не могу не проучаствовать в столь сложной задаче.
Случайно и меня сюда вдруг занесло. )))
Visual Basic
1
2
3
4
5
6
7
8
MsgBox Format(x > 122, ";""Yes"";""No""")
 
? Format(5 > 122, ";""Yes"";""No""")
No
? Format(123 > 122, ";""Yes"";""No""")
Yes
? Format(122 > 122, ";""Yes"";""No""")
No
0
02.03.2023, 16:28
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
02.03.2023, 16:28
Помогаю со студенческими работами здесь

Составить алгоритм для нахождения произведения двух наименьших чисел из трех заданных
10. Составить алгоритм для нахождения произведения двух наименьших чисел из трех заданных.

Составить программу для нахождения произведения всех делителей целого числа вводимого с клавиатуры
Составить программу для нахождения произведения всех делителей целого числа вводимого с клавиатуры...

Составить программу для нахождения произведения всех делителей целого числа вводимого из клавиатуры
Помогите, плз, очень надо

Составить подпрограмму нахождения максимума из двух чисел
Определив подпрограмму нахождения максимума из двух чисел, найти максимум из четырех заданных...

Составить программу нахождения произведения чисел 15 и 8
Помогите пожалуйста составить программу для нахождения произведения чисел 15 и 8.


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

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