Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
 
 
Рейтинг 4.91/22: Рейтинг темы: голосов - 22, средняя оценка - 4.91
0 / 0 / 0
Регистрация: 24.02.2012
Сообщений: 16
1

Вывести на экран произведение тех элементов массива, номера которых кратны трем

24.02.2012, 23:55. Показов 4557. Ответов 24
Метки нет (Все метки)

дан одномерный массив А, состоящий из целых чисел. вывести на экран произведение тех элементов массива, номера которых кратны трем.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.02.2012, 23:55
Ответы с готовыми решениями:

Найти произведение элементов массива, номера которых кратны трем
Задать случайным образом одномерный массив из 13 целочисленных элементов, принадлежащих отрезку ....

Найти произведение элементов массива, номера которых кратны трем
Задать случайным образом одномерный массив из 13 целочисленных элементов, принадлежащих отрезку ....

Найти произведение положительных элементов массива, стоящих на местах, номера которых кратны трем
Дан одномерный массив N(14), найдите произведение положительных элементов массива,стоящих на...

Вывести на экран номера тех элементов массива, значение которых кратно 7
1. (Составить программу)Записать в массив 30 случайных чисел от 2 до 40 . Вывести на экран номера...

__________________
24
1365 / 207 / 37
Регистрация: 09.02.2012
Сообщений: 745
24.02.2012, 23:59 2
Цитата Сообщение от Igor1793 Посмотреть сообщение
дан одномерный массив А, состоящий из целых чисел. вывести на экран произведение тех элементов массива, номера которых кратны трем.
Ну, как кратность трём определить, знаешь ?? (MOD)
0
11200 / 3571 / 636
Регистрация: 13.02.2009
Сообщений: 10,673
25.02.2012, 00:00 3
Номер MOD 3 = 0 признак делимости на 3 нацело.
Перебирай все элементы в цикле и проверяй.
0
0 / 0 / 0
Регистрация: 24.02.2012
Сообщений: 16
25.02.2012, 00:02  [ТС] 4
я не знаю как вообще это делается даже не представляю)
0
11200 / 3571 / 636
Регистрация: 13.02.2009
Сообщений: 10,673
25.02.2012, 00:05 5
+

Не по теме:

Скажи это в деканате. Вообще студенты оборзели - даже не стесняются кричать об этом на весь мир!!

1
1365 / 207 / 37
Регистрация: 09.02.2012
Сообщений: 745
25.02.2012, 00:22 6
Цитата Сообщение от Igor1793 Посмотреть сообщение
я не знаю как вообще это делается даже не представляю)
А учебник читать не пробовал ?? Или добрый дядя с форума будет за тебя зачёты сдавать, да ??
--------------------------------------------------
Если есть желание и хоть зачатки интеллекта, то могу научить (как ЭТО сделать).

Добавлено через 2 минуты
Цитата Сообщение от Alex77755 Посмотреть сообщение
+

Не по теме:

Скажи это в деканате. Вообще студенты оборзели - даже не стесняются кричать об этом на весь мир!!

1
Эксперт Hardware
2679 / 1857 / 317
Регистрация: 25.10.2011
Сообщений: 5,428
25.02.2012, 22:10 7
Цитата Сообщение от morgann55 Посмотреть сообщение
Ну, как кратность трём определить, знаешь ?? (MOD)
А зачем mod???
если правильно понял задание
Visual Basic
1
2
3
4
mult=1
for i=3 to ubound(A) step 3
    mult = mult * A(i)
next
0
1365 / 207 / 37
Регистрация: 09.02.2012
Сообщений: 745
25.02.2012, 23:24 8
Цитата Сообщение от vstz Посмотреть сообщение
А зачем mod???
если правильно понял задание
Visual Basic
1
2
3
4
mult=1
for i=3 to ubound(A) step 3
    mult = mult * A(i)
next
Ну многие вещи можно по разному выполнить... Я хотел выяснить сначала уровень знаний ТС (знает он хоть что-нибудь и стоит ли ему помогать).
--------------------------------------------------
PS В условии дано: "тех элементов массива, номера которых кратны трем", а "0 mod 3=0" тоже True...
0
es geht mir gut
11226 / 4703 / 1178
Регистрация: 27.07.2011
Сообщений: 11,426
26.02.2012, 10:39 9
vstz, по-твоему не получится, всё равно нужно массив заполнить полностью и потом в том же цикле перемножить элементы с номерами кратными 3.
Парню это программирование может и не пригодится никогда
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Option Explicit
DefInt A-K
Dim proizv As Double
Dim A(), n, i
Private Sub Command1_Click()
Randomize 'Иницилизация генератора случайных чисел
Cls       'Очищаем форму
n = InputBox("Введите размер массива n", , 15)
ReDim A(n) ' Размеры массива А -  n-строк
proizv = 1
For i = 1 To n
    A(i) = Int(Rnd * 10+1) 'Заполняем массив случайными числами
    Print A(i);  'выводим массив на печать
    If i Mod 3 = 0 Then
       proizv = proizv * A(i) 'вычисляем произведение эл.массива, номера которых кратны трем
    End If
Next i
Print
Print "Произведение элементов массива, номера которых кратны трем равно"; proizv
End Sub
1
1365 / 207 / 37
Регистрация: 09.02.2012
Сообщений: 745
26.02.2012, 15:39 10
Зачем нарушать условия ?? Ведь массив УЖЕ дан и надо ТОЛЬКО перемножить кратные и вывести на экран произведение... Конечно, без заполнения массива работать не будет, но нужна лишь схема выполнения условия (ведь препод будет ТОЛЬКО читать...)
1
es geht mir gut
11226 / 4703 / 1178
Регистрация: 27.07.2011
Сообщений: 11,426
26.02.2012, 19:35 11
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
Option Explicit
Option Base 1
Dim proizv As Double
Dim A(), i
Private Sub Command1_Click()
A = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 1, 2, 3, 4, 5, 6, 7, 8, 9) 'Для примера
proizv = 1
For i = 3 To UBound(A) Step 3
     proizv = proizv * A(i) 'вычисляем произведение эл.массива, номера которых кратны трем
Next i
Print "Произведение элементов массива, номера которых кратны трем равно"; proizv
End Sub
0
1365 / 207 / 37
Регистрация: 09.02.2012
Сообщений: 745
26.02.2012, 20:06 12
А почему ОПЯТЬ "For i = 3 To UBound(A) Step 3" ?? Надо For i = 0 To UBound(A) Step 3
0
1464 / 371 / 33
Регистрация: 10.04.2009
Сообщений: 6,701
26.02.2012, 20:13 13
Цитата Сообщение от morgann55 Посмотреть сообщение
А почему ОПЯТЬ "For i = 3 To UBound(A) Step 3" ?? Надо For i = 0 To UBound(A) Step 3
соль здесь
Цитата Сообщение от SoftIce Посмотреть сообщение
Option Base 1
1
1365 / 207 / 37
Регистрация: 09.02.2012
Сообщений: 745
26.02.2012, 20:26 14
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
соль здесь
А разжевать можно, плз ?? Я ТАКОГО ещё не знаю
0
1464 / 371 / 33
Регистрация: 10.04.2009
Сообщений: 6,701
26.02.2012, 20:32 15
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
Option Base 1
говорит, что отсчёт вести не от нуля как в многих случаях, а с единицы
не пробовал может можно с 2-ки )

Добавлено через 1 минуту
Option Base 1 'нижняя граница массивов = 1, если не задавать, тогда она равна нулю, пишется вверху окна с программой, действует на весь модуль, и считает затем все массивы с 1, а не с 0
1
1365 / 207 / 37
Регистрация: 09.02.2012
Сообщений: 745
26.02.2012, 21:13 16
А где сказано (в условии), что массив A начинается не с A(0) ??
Меня-то учить надо, конечно, но студента путать никчему... (ИММО)
0
es geht mir gut
11226 / 4703 / 1178
Регистрация: 27.07.2011
Сообщений: 11,426
26.02.2012, 21:21 17
Цитата Сообщение от morgann55 Посмотреть сообщение
А где сказано (в условии), что массив A начинается не с A(0)
А там и про 0 не сказано
0
Заблокирован
26.02.2012, 21:33 18
Цитата Сообщение от Ципихович Эндрю Посмотреть сообщение
Option Base 1 'нижняя граница массивов = 1, если не задавать, тогда она равна нулю, пишется вверху окна с программой, действует на весь модуль, и считает затем все массивы с 1, а не с 0
А вот не все, оказывается
Visual Basic
1
A = Split("1 2 3 4 5 6")
При любом Option Base нижний индекс=0
0
es geht mir gut
11226 / 4703 / 1178
Регистрация: 27.07.2011
Сообщений: 11,426
26.02.2012, 21:45 19
Цитата Сообщение от Апострофф Посмотреть сообщение
При любом Option Base нижний индекс=0
Потому что сплит работает со строкой
Еще одно замечание. В VB 5/6 имеется возможность автоматического создания и заполнения байтового массива при перезаписи в него строковой переменной:

Dim arrByte () As Byte
Source$ = "Строковая переменная"
arrByte = Source$

В этом случае всегда создается массив размерностью от 0 до (LenB(Source$)-1) независимо от наличия/отсутствия оператора Option Base
0
1365 / 207 / 37
Регистрация: 09.02.2012
Сообщений: 745
26.02.2012, 22:19 20
Цитата Сообщение от SoftIce Посмотреть сообщение
А там и про 0 не сказано
Но ведь по умолчанию массив начинается с А(0).... (если не путаю)
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.02.2012, 22:19

Заказываю контрольные, курсовые, дипломные работы и диссертации здесь.

Составить алгоритм, находящий сумму элементов массива, значение которых больше 5, а номера кратны трем
Составить алгоритм, находящий сумму элементов массива, значение которых больше 5, а номера кратны...

Вывести на экран только те элементы массива, индексы которых кратны трем
Дан массив случайных чисел из а элементов. Вывести на экран только те элементы этого массива,...

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

Получить новую последовательность удалением из исходной тех членов, порядковые номера которых кратны трем
Даны действительные числа a1,.. a30. Получить новую последовательность удалением из исходной тех...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.