Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
0 / 0 / 0
Регистрация: 24.11.2014
Сообщений: 50

Удалить из массива все элементы, в которых последняя цифра четная, а само число делится на нее

17.01.2015, 11:23. Показов 1018. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дан массив целых чисел из n элементов, заполненный случайным образом числами из промежутка [-10,60]. Удалить из него все элементы, в которых последняя цифра четная, а само число делится на нее.

Вот программа которую написал.
Элементы удаляет, но заполняет остатки последними элементами. Вроде там надо что-то с UBound мутить.
Сможет кто-нибудь помочь?
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
Private Sub Command2_Click()
Picture1.Cls
n = Val(Text1)
ReDim A(1 To n)
For i = 1 To n
A(i) = Int(71 * Rnd - 10)
Picture1.Print A(i);
Next i
 
Picture3.Cls
  For i = 1 To n
  If A(i) <> -10 And A(i) <> 0 And A(i) <> 10 And A(i) <> 20 And A(i) <> 30 And A(i) <> 40 And A(i) <> 50 And A(i) <> 60 Then
  If ((A(i) Mod 2 = 0) And ((A(i) Mod (A(i) Mod 10)) = 0)) Then
    For j = i To n - 1
    A(j) = A(j + 1)
    Next j
      End If
      End If
      Next
For j = 1 To n
Picture3.Print A(j);
Next
End Sub
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
17.01.2015, 11:23
Ответы с готовыми решениями:

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

Удалить из массива все элементы, первая и последняя цифра которых четная
нуждаюсь в помощи 1. Заполнить массив из n элементов случайными целыми числами из про- межутка . 2. Удалить из него все элементы,...

Удалить из массива все элементы, первая цифра которых четная
1. Дан массив целых чисел из n элементов, заполненный случайным образом числами из промежутка . Удалить из него все элементы, первая...

3
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
17.01.2015, 13:16
Visual Basic
1
If A(i) <> -10 And A(i) <> 0 And A(i) <> 10 And A(i) <> 20 And A(i) <> 30 And A(i) <> 40 And A(i) <> 50 And A(i) <> 60
А можно уточнить какое условие задание здесь реализовано?

Добавлено через 1 минуту
И здесь!
Visual Basic
1
And ((A(i) Mod (A(i) Mod 10)) = 0))
Добавлено через 7 минут
Visual Basic
1
 A(j) = A(j + 1)
После этой строки можно добывить присвоение какойто величины не из диапазона. Например
Visual Basic
1
A(n)=100
А при выводе результата на печать проверять. И если дошли до 100, то выход из процедуры
Или писать удовлетворяющие значения в новый массив. Или просто в строку через разделитель и потом Split.
Или просто сразу удовлетворяющие печатать никуда не занося
0
0 / 0 / 0
Регистрация: 24.11.2014
Сообщений: 50
17.01.2015, 20:17  [ТС]
Alex77755,

PureBasic
1
If A(i) <> -10 And A(i) <> 0 And A(i) <> 10 And A(i) <> 20 And A(i) <> 30 And A(i) <> 40 And A(i) <> 50 And A(i) <> 60
Это я сделал для того, что бы не придирался к нулю. Типа 10 не делится на ноль.

PureBasic
1
And ((A(i) Mod (A(i) Mod 10)) = 0))
Последня цифра числа делится на само число

PureBasic
1
A(j) = A(j + 1)
Уплотняю массив

Добавлено через 29 минут
Alex77755,
Спасибо, доперло. A(n)=99
0
 Аватар для Alex77755
11525 / 3812 / 683
Регистрация: 13.02.2009
Сообщений: 11,229
17.01.2015, 23:15
Дела были днём...
Без сахранения в массив результата вроде так:
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
Private Sub Комманда1_Click()
Dim T
Picture1.Cls
n = 20 'Val(Text1)
ReDim a(1 To n)
Randomize
For i = 1 To n
a(i) = Int(71 * Rnd - 10)
Picture1.Print a(i);
Next i
 
Picture3.Cls
  For i = 1 To n
  T = Val(Right(a(i), 1))
    If T <> 0 Then ' если последняя цифра не 0
        If Not T Mod 2 Then    ' если последняя цифра не чётная
            If Abs(a(i)) Mod Abs(T) <> 0 Then     '  если число не делится на последнюю цифру
                Picture3.Print a(i); ' печатаем
            End If
      End If
  Else
 Picture3.Print a(i);
  End If
Next
End Sub
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.01.2015, 23:15
Помогаю со студенческими работами здесь

Удалить из массива все четные элементы, у которых последняя цифра 2
Дан массив целых чисел из n элементов, заполненный случайным образом числами из промежутка . Удалить из него все четные элементы, у которых...

Удалить из массива все элементы, последняя цифра которых четная и само число делится на нее.
Удалить из массива все элементы, последняя цифра которых четная и само число делится на нее.

Удалить из массива все элементы, в которых последняя цифра четная, a само число делится на нее
Дан массив целых чисел (n = 12), заполненный случайным образом числами из промежутка . Удалить из него все элементы, в которых последняя...

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

Удалить из массива все элементы, в которых последняя цифра четная, a само число делится на нее
Дан массив целых чисел (n = 12), заполненный случайным образом числами из промежутка . Удалить из него все элементы, в которых последняя...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Установка Qt Creator для C и C++: ставим среду, CMake и MinGW без фреймворка Qt
8Observer8 05.04.2026
Среду разработки Qt Creator можно установить без фреймворка Qt. Есть отдельный репозиторий для этой среды: https:/ / github. com/ qt-creator/ qt-creator, где можно скачать установщик, на вкладке Releases:. . .
AkelPad-скрипты, структуры, и немного лирики..
testuser2 05.04.2026
Такая программа, как AkelPad существует уже давно, и также давно существуют скрипты под нее. Тем не менее, прога живет, периодически что-то не спеша дополняется, улучшается. Что меня в первую очередь. . .
Отображение реквизитов в документе по условию и контроль их заполнения
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеСпецтехники", разработанного в конфигурации КА2. Данный документ берёт данные из другого нетипового документа. . .
Фото всей Земли с борта корабля Orion миссии Artemis II
kumehtar 04.04.2026
Это первое подобное фото сделанное человеком за 50 лет. Снимок называют новым вариантом легендарной фотографии «The Blue Marble» 1972 года, сделанной с борта корабля «Аполлон-17». Новое фото. . .
Вывод диалогового окна перед закрытием, если документ не проведён
Maks 04.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: реализовать программный контроль на предмет проведения документа. . .
Программный контроль заполнения реквизитов табличной части документа
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: 1. Реализовать контроль заполнения реквизита. . .
wmic не является внутренней или внешней командой
Maks 02.04.2026
Решение: DISM / Online / Add-Capability / CapabilityName:WMIC~~~~ Отсюда: https:/ / winitpro. ru/ index. php/ 2025/ 02/ 14/ komanda-wmic-ne-naydena/
Программная установка даты и запрет ее изменения
Maks 02.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "СписаниеМатериалов", разработанного в конфигурации КА2. Задача: при создании документов установить период списания автоматически. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru