Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > Для гуру VisualBasic


Автор: ShulgaDenis 16.5.2005, 16:28
Помогите разрешить задачу!!! Никогда не работал с массивами!!! Злой препод задал мне задание:

Розробити схему алгоритму та написати програмний код на мові Visual Basic.

Одновимірні масиви:
- Переписати елементи заданого масиву А31(10) у зворотному порядку. Вивести вихідний та перетворений масиви.
- Обчислити та вивести середнє арифметичне індексів непарних елементів масиву L(11).
- Всі від’ємні елементи заданого масиву L(11) розділити на максимальний елемент цього масиву. Вивести максимальний
елемент та перетворений масив.
- Обчислити та вивести суму елементів заданого масиву А1(10).
- Обчислити та вивести середнє арифметичне індексів від’ємних елементів масиву Т(9).
- Використовуючи два заданих масива X(10) і Y(10) створити масив Z(10), елементи якого обчислюються таким чином;
Z(1)=X(1)+Y(10), Z(2)=X(2)+Y(9), ..., Z(10)=X(10)+Y(1). В масиві Z знайти максимальний елемент. Вивести створений масив
та його максимальний елемент.

Заранее ОГРОМНОЕ спасибо...

Автор: __Sergey__ 16.5.2005, 16:35
Форум вообщето русскоязычный, хотябы потрудись перевести smile

Автор: Akina 16.5.2005, 16:40
из того что можно понять, ясно одно - задание простое донельзя, так что место ему в "Центре помощи".

Автор: ShulgaDenis 16.5.2005, 16:56
Написать код на Visual Basic:

Одномерные массивы:
- Переписать элементы заданного массива А31(10) в обратном порядке. Вывести исходный и обработанный массивы.
- Вычислить и вывести среднее арифметическое индексов непарных элементов массива L(11).
- Все отрицательные элементы данного массива разделить на максимальный элемент этого массива.
- Вывести обработанный массив и максимальный элемент.
- Вычислить и вывести сумму элементов данного массива А1(10).
- Вычислить и вывести среднее арифметическое индексов отрицательных элементов массива Т(9).
- Используя два заданных массива Х(10) и Y(10) создать массив Z(10), элементы которого вычисляються следующим способом:
Z(1)=X(1)+Y(10), Z(2)=X(2)+Y(9), ..., Z(10)=X(10)+Y(1). В массиве Z найти максимальный элемент. Вывести созданный массив и его максимальный элемент.

А где это - центр помощи?
Я пишу на ПХП. Для ПХП это 10 строчек кода. Но к сожалению когда в детстве баловался с ВБ, с массивами как то не сложилось... Вот теперь приходиться помощи просить...

Автор: ShulgaDenis 17.5.2005, 13:32
Ау-у-у, ребята!!! Помогите!!! Я понимаю, что задача простая, но я с ней не справлюсь...

Автор: Yanis 17.5.2005, 16:32
Ещё не поздно делать? Я могу сделать тебе.

Автор: ShulgaDenis 18.5.2005, 12:25
Не поздно... Конечно сделай!!! Заранее ОГРОМНОЕ спасибо!!!

Автор: Yanis 18.5.2005, 17:27
Сделал всё, кроме
Цитата
- Вычислить и вывести среднее арифметическое индексов непарных элементов массива L(11).

Никак не пойму, что это значит. Растолкуйте мне, а я тогда доделаю. Сделал на VB6. Архивчик прицепил. Всем смотреть, потому что я мог ошибиться =)

Автор: ChofCh 20.5.2005, 02:20
2Yanis: нечетных.
2ShulgaDenis: Блин, у самого времени не хватило ответить... smile А задания действительно впредь лучше переводить - это только нам кажеться, что украинский и русский похожи. Я, когда в Россию переехал, был неприятно удивлен этим фактом.

Автор: Yanis 22.5.2005, 21:10
To ChofCh.
Да ShulgaDenis даже и не сказал помог ли я ему или нет. Так что пусть теперь пишет что ему нужно (а может уже ничего и не нужно). Может он сам во всё разобрался smile

Автор: ShulgaDenis 23.5.2005, 11:09
Цитата
Вычислить и вывести среднее арифметическое индексов непарных элементов массива L(11).


На сколько я понимаю:
Если не делиться на 2 нацело (непарный):
(
сложить их и разделить на количество сложенных элементов
)

Спасибо что отозвались.

P.S. Не могу качнуть как гость. Если можно - кинь на почту: 4forum@ukr.net
Заранее спасибо!

Автор: ShulgaDenis 23.5.2005, 15:58
Yanis, спаситель, ты где!!!! Ау-у-у-у!!!

smile
smile

Автор: Yanis 23.5.2005, 16:57
Цитата(ShulgaDenis @ 23.5.2005, 11:09)
P.S. Не могу качнуть как гость. Если можно - кинь на почту: 4forum@ukr.net

А зарегистрироваться нельзя что ли?

Автор: Yanis 23.5.2005, 17:31
Цитата(ShulgaDenis @ 23.5.2005, 15:58)
Yanis, спаситель, ты где!!!! Ау-у-у-у!!!

Вот. Доделал до конца. Только не говори, что не скачивается =) К стати, посмотрите кому делать нечего. Поищите ошибки (если они есть). Одну нашел: я массив прочесывал начиная с 1 smile

Автор: ShulgaDenis 23.5.2005, 19:14
Огромное спасибо... Хотел твою репутацию повысить, но требуется не менее 100 сообщений... Одним словом - не получилось... Но спасибо ОГРОМНОЕ!

Автор: Yanis 23.5.2005, 19:29
Цитата(ShulgaDenis @ 23.5.2005, 19:14)
Огромное спасибо... Хотел твою репутацию повысить, но требуется не менее 100 сообщений... Одним словом - не получилось... Но спасибо ОГРОМНОЕ!

Тото и оно =) Как раз по этому поводу: http://forum.vingrad.ru/index.php?showtopic=52272

Автор: cardinal 23.5.2005, 19:45
Initialization of an array

Цитата
Вычислить и вывести среднее арифметическое индексов нечетных элементов массива L(11).

Я это понимаю как:
dim x as integer
Если элемент массива нечетный, то x = x + индекс этого элемента массива
В конце сумму этих индесов делим на их кол-во

ShulgaDenis, + я от тебя добавил smile

Автор: Yanis 23.5.2005, 19:59
Цитата(cardinal @ 23.5.2005, 19:45)
Initialization of an array
Спасибо за поправку.

Цитата(cardinal @ 23.5.2005, 19:45)
Вычислить и вывести среднее арифметическое индексов нечетных элементов массива L(11).
Это мне было понятно и я вроде это сделал, а вот это:
Цитата
Вычислить и вывести среднее арифметическое индексов непарных элементов массива L(11).
мне было не понятно =)

Автор: cardinal 23.5.2005, 21:19
Цитата(Yanis @ 23.5.2005, 17:59)
Это мне было понятно и я вроде это сделал

Ты сделал среднее арифметическое элементов с нечетными индексами, а не
среднее арифметическое индексов нечетных элементов. smile

Автор: Yanis 23.5.2005, 21:32
Я уже запутался =) Если я не ошибаюсь, то остаток от деления в VB это Mod, тогда я сделал 2 ошибки. Устал наверное. Надо исправить AAofOddElement() так:
Код

Private Function AAofOddElement() As Single
  Dim Count As Integer
  Dim i As Integer
  
  Count = 1
  AAofOddElement = 0
  For i = 0 To ARRAY_LEN + 1
    If (L(i) Mod 2 = 0) Then
      AAofOddElement = AAofOddElement + L(i)
      Count = Count + 1
    End If
  Next i
  AAofOddElement = AAofOddElement / Count
End Function

cardinal, посмотри пожалуйста, а то у меня немного голова другим забита и я могу опять что-нибудь пропустить.

Автор: cardinal 23.5.2005, 23:36
Ну не знаю. Как я уже сказал я понял задачу так:
Код

Private Function AAofOddElement() As Single
  Dim Count As Integer
  Dim i As Integer
  
  Count = 1
  AAofOddElement = 0
  For i = 0 To ARRAY_LEN + 1
    If (L(i) Mod 2 = 0) Then
      AAofOddElement = AAofOddElement + i
      Count = Count + 1
    End If
  Next i
  AAofOddElement = AAofOddElement / Count
End Function

Автор: Yanis 23.5.2005, 23:55
Цитата(cardinal @ 23.5.2005, 23:36)
Ну не знаю. Как я уже сказал я понял задачу так:

Да, точно. Вроде понял =) Надо строчку в коде из 23.5.2005, 21:32
Код

AAofOddElement = AAofOddElement + L(i)

заменить, на
Код

AAofOddElement = AAofOddElement + i

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)