Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 24.04.2009, 17:59   #1
spiritknight
Новичок
Джуниор
 
Регистрация: 24.04.2009
Сообщений: 2
По умолчанию Одномерные массивы

Помогите написать процедуру по блок схеме...Буду очень признателен)

У меня получилось вот что....но не запускается((
Sub prim()
Dim n As Double
Rem
n = Val(InputBox("Введите n"))
ReDim A(i)
p = 1
For i = 1 To n
A(i) = (InputBox("Введите число"))
Next
For i = 1 To n
p = p * A(i)
Next
c = p ^ (1 / n)
MsgBox "c=" & c
End Sub

Последний раз редактировалось spiritknight; 24.04.2009 в 18:35.
spiritknight вне форума Ответить с цитированием
Старый 24.04.2009, 18:22   #2
pivas
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 412
По умолчанию

Ошибка здесь ReDim A(i). Не объявлен размер массива. Попробуйте добавить так
i = n
ReDim A(i)
pivas вне форума Ответить с цитированием
Старый 24.04.2009, 18:44   #3
spiritknight
Новичок
Джуниор
 
Регистрация: 24.04.2009
Сообщений: 2
По умолчанию

Спасибо большое... получилось!!!
spiritknight вне форума Ответить с цитированием
Старый 18.12.2009, 13:51   #4
kuperfbi
Пользователь
 
Регистрация: 18.12.2009
Сообщений: 17
По умолчанию

Добрый день. Нужно посчитать колличество совпадений значений в двух массивах. Пробую через счетесли, но что-то не так. То не считает, то возвращает "истину"/"ложь"
К примеру: один массив - 1;2;3;4;5. Второй - 4;5;6;7;8;9. Совпадают два числа 4;5. Вот требуется, чтобы функция возвращала (2)

Последний раз редактировалось kuperfbi; 18.12.2009 в 14:37. Причина: уточнение
kuperfbi вне форума Ответить с цитированием
Старый 18.12.2009, 14:09   #5
Serge 007
Участник клуба
 
Аватар для Serge 007
 
Регистрация: 15.12.2009
Сообщений: 1,448
По умолчанию

Цитата:
Сообщение от kuperfbi Посмотреть сообщение
Добрый день. Нужно посчитать колличество совпадений значений в двух массивах. Пробую через счетесли, но что-то не так. То не считает, то возвращает "истину"/"ложь"

Выкладывайте файл.
Бесплатная помощь: www.excelworld.ru
Платная помощь: serge_007.planetaexcel@mail.ru
https://yoomoney.ru: 41001419691823
Serge 007 вне форума Ответить с цитированием
Старый 18.12.2009, 14:13   #6
The_Prist
Участник клуба
 
Аватар для The_Prist
 
Регистрация: 17.07.2009
Сообщений: 1,088
По умолчанию

Цитата:
Сообщение от kuperfbi Посмотреть сообщение
Добрый день. Нужно посчитать колличество совпадений значений в двух массивах. Пробую через счетесли, но что-то не так. То не считает, то возвращает "истину"/"ложь"
А Вы как формулу-то записываете? Может Вы аргументы местами перепутали? Справку по функции читали?
И не мешало бы развернуть вопрос: Вы хотите посчитать кол-во повторений каждого элемента массива в другом массиве? Или еще что-то?
WebMoney - R298726502453; Яндекс.Деньги - 41001332272872
www.excel-vba.ru
The_Prist вне форума Ответить с цитированием
Старый 18.12.2009, 14:39   #7
kuperfbi
Пользователь
 
Регистрация: 18.12.2009
Сообщений: 17
По умолчанию

Да я и предполагаю, что ошибка в синтаксисе. В сравнении числа с массивом - все работает, а массив с массивом - не фурычит.
Все, справился: =СУММ(СЧЁТЕСЛИ((E2:J2);($AA$2:$AA$1 2)))
Спасибо.

Последний раз редактировалось kuperfbi; 18.12.2009 в 14:58.
kuperfbi вне форума Ответить с цитированием
Старый 18.12.2009, 15:07   #8
alyon_ka
Пользователь
 
Регистрация: 16.12.2009
Сообщений: 40
По умолчанию

если в диапазоне A2:A6 находится - первый массив, B2:B7 - второй массив то вписав в диапазон С2:С6 формулу =СЧЁТЕСЛИ($B$2:B$7;A$2:A$6) получим результат
А В С
1 4 0
2 5 0
3 6 0
4 7 1
5 8 1
9
т.е. напротив 4 и 5 - будут проставлены единички - вот и есть 2 повторяющихся числа, вот только сразу значение "2" в одну ячейку - эта функция вам не вернет
вообще более правильно будет ее записать так =СЧЁТЕСЛИ($B$2:$B$7;A2) для ячейки С2
для решения этой задачи можно написать пользовательскую функцию на VBA

Последний раз редактировалось alyon_ka; 18.12.2009 в 15:17.
alyon_ka вне форума Ответить с цитированием
Старый 18.12.2009, 15:53   #9
DV68
Форумчанин
 
Регистрация: 05.08.2009
Сообщений: 465
По умолчанию

{=СЧЁТ(ЕСЛИ(--((A1:A6=ТРАНСП(B1:B6)))>0;1))}
или
{=СУММ(СЧЁТЕСЛИ(($AA$2:$AA$12);ТРАНС П(B1:B6)))}
"Все следует делать настолько простым, насколько это возможно, но не проще." Альберт Эйнштейн

Последний раз редактировалось DV68; 18.12.2009 в 16:04.
DV68 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Даны одномерные массивы А и В. Сформировать массивы, состоящие из элемент LyaLya Помощь студентам 15 20.12.2009 14:12
Одномерные массивы QEEN Паскаль, Turbo Pascal, PascalABC.NET 5 03.04.2009 12:25
Одномерные Массивы ТРОЯН=) Помощь студентам 4 03.02.2009 00:11
Одномерные массивы Кирилл17 Помощь студентам 2 09.12.2008 23:34
Одномерные массивы Дашуня Помощь студентам 1 06.12.2008 11:20