-8 / 0 / 0
Регистрация: 19.06.2019
Сообщений: 22
1

Вставить в массив заданное число после любого из максимальных элементов

21.06.2019, 12:24. Показов 2683. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дан целочисленный линейный массив. Вставить в него заданное число после любого из максимальных элементов.

Добавлено через 5 часов 34 минуты
C#
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
26
27
28
29
30
31
32
public class Test
{
    public static void Main()
    {
        int a = 33;
        int b = 0;
        int max = 0;
        int[] mass = { 1, 2, 300, 4, 5, 6, 7, 800, 9, 10, 11, 12 };
        int[] massx = new int[mass.Length * 2];
        for (int n = 0; n < mass.Length; n++)
        {
            massx[n] = mass[n];
            if (massx[n] > max) 
            {
                max = massx[n];
            }
        }
 
        for (int i = 0; i < mass.Length; i++)
        {
            if (mass[i] == max) { massx[i + b] = mass[i]; massx[i + b + 1] = a; b++; }
            else { massx[i + b] = mass[i]; }
        }
 
        for (int w = 0; w < mass.Length+b; w++)
        {
            Console.WriteLine(massx[w]);
        }
 
        
    }
}
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.06.2019, 12:24
Ответы с готовыми решениями:

Вставить в массив два заданных числа: первое после любого из максимальных элементов, второе — перед
Вставить в массив два заданных числа: первое после любого из максимальных элементов, второе — перед этим максимальным. Сделать в...

Вставить в массив два заданных числа: первое после любого из максимальных элементов, второе — перед этим максимальны
Вставить в массив два заданных числа: первое после любого из максимальных элементов, второе — перед этим максимальным.

Вставить в массив заданное число x после всех отрицательных элементов
Заданный массив с n чисел. Вставить в массив заданное число x после всех отрицательных элементов. Вставить число n в массив после k-го...

7
119 / 84 / 42
Регистрация: 14.12.2015
Сообщений: 945
21.06.2019, 15:50 2
И в чем собственно проблема?

Добавлено через 1 минуту

Не по теме:

Вот у кого то же буквально на днях слово в слова такая же задача была. Просто не охота искать.

0
-8 / 0 / 0
Регистрация: 19.06.2019
Сообщений: 22
21.06.2019, 15:51  [ТС] 3
Проблемы уже нет))) собственно поэтому и добавлен ответ. Спасибо!
Возможно это я и была, никак не получалось.
0
119 / 84 / 42
Регистрация: 14.12.2015
Сообщений: 945
21.06.2019, 15:59 4
Elen95, Тогда надо найти свою тему и там оставить ответ. Справа вверху есть кнопка "Мои темы".
И почитайте правила форума. Зачем вы создаете однотипные темы? Там написано как поднять вашу тему вверх.

Добавлено через 6 минут
Цитата Сообщение от Elen95 Посмотреть сообщение
Вставить в него заданное число после любого из максимальных элементов.
А если два, три и более максимальных элементов? То как выбирать после какого вставить?
0
 Аватар для Loya
70 / 57 / 24
Регистрация: 06.12.2015
Сообщений: 306
21.06.2019, 16:26 5
Цитата Сообщение от Talamaur Посмотреть сообщение
А если два, три и более максимальных элементов? То как выбирать после какого вставить?
Два, три и более раза вставит. А вот так только один, и не нужен лишний массив:
C#
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
26
27
28
29
30
31
32
33
34
35
36
namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 33; //заданное число
            int max = 0;
            int[] mass = { 1, 2, 300, 4, 5, 6, 7, 800, 9, 800, 11, 12 };
            for (int n = 0; n < mass.Length; n++)
            {
                if (mass[n] > max)
                {
                    max = mass[n];
                }
            }
            Array.Resize(ref mass, mass.Length + 1);
            for (int i = 0; i < mass.Length; i++)
            {
                if (mass[i] == max)
                {
                    for (int j = mass.Length - 1; j > i; j--)
                    {
                        mass[j] = mass[j - 1];
                    }
                    mass[i + 1] = a;
                    break;
                }
            }
            for (int i = 0; i < mass.Length; i++)
            {
                Console.WriteLine(mass[i]);
            }
        }
    }
}
0
119 / 84 / 42
Регистрация: 14.12.2015
Сообщений: 945
21.06.2019, 16:34 6
Loya, я так понял любой максимальный элемент надо выбрать. Т.е. сначала определить позиции с максимальными элементами, потом спросить у пользователя после какого именно элемента вставить и соотвественно в ту позицию и вставлять. Это как я понял условие
0
315 / 244 / 149
Регистрация: 03.10.2017
Сообщений: 886
Записей в блоге: 1
21.06.2019, 17:07 7
Вставляет после первого самого большого элемента.

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
int[] Mas = new int[] {1,2,3,45,5,6,8 };
 
            int element = -100;
            int maxIndex = 0;
            for (int i = 1; i < Mas.Length; i++)
            {
                if (Mas[maxIndex] < Mas[i])
                {
                    maxIndex = i;
                }
            }
 
            Array.Resize(ref Mas, Mas.Length + 1);
 
            for (int i = Mas.Length - 2; i > maxIndex; i--)
            {
                Mas[i + 1] = Mas[i];
            }
 
            Mas[maxIndex+1] = element;
Добавлено через 10 минут
Ну или если вам очень захочется выбирать номер индекса

C#
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
 
namespace Integral
{
    class Program
    {
 
        static void Main(string[] args)
        {
            int[] Mas = new int[] {1,45,3,45,5,45,8 };
 
            int element = -100;
            int maxIndex = 0;
 
            List<int> ListMaxIndex = new List<int>() { maxIndex};
 
            for (int i = 1; i < Mas.Length; i++)
            {
                if (Mas[maxIndex] <= Mas[i])
                {
                    if (Mas[ListMaxIndex[0]] != Mas[i])
                    {
                        ListMaxIndex.Clear();
                    }
 
                    maxIndex = i;
                    ListMaxIndex.Add(maxIndex);
                }
            }
 
            Array.Resize(ref Mas, Mas.Length + 1);            
 
            do
            {
                Console.Clear();
                Console.WriteLine("Список индексов: ");
                for (int i = 0; i < ListMaxIndex.Count; i++)
                {
                    Console.WriteLine($"{i}) {ListMaxIndex[i]}");
                }
 
                Console.Write("Выберите номер индекса: ");
                maxIndex = int.Parse(Console.ReadLine());
 
            } while (maxIndex < 0 || maxIndex >= ListMaxIndex.Count);
 
            for (int i = Mas.Length - 2; i > maxIndex; i--)
            {
                Mas[i + 1] = Mas[i];
            }
 
            Mas[maxIndex + 1] = element;
 
            Console.WriteLine(String.Join(" ", Mas));
 
            Console.ReadKey();
        }
 
    }
}
0
 Аватар для Loya
70 / 57 / 24
Регистрация: 06.12.2015
Сообщений: 306
21.06.2019, 17:49 8
Тогда так:
C#
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
namespace Test
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 33; //заданное число
            int pos = -1;
            int max = 0;
            int[] mass = { 1, 2, 300, 800, 5, 6, 7, 800, 9, 800, 11, 12 };
            for (int n = 0; n < mass.Length; n++)
            {
                if (mass[n] > max)
                {
                    max = mass[n];
                }
            }
            for (int i = 0; i < mass.Length; i++)
            {
                if (mass[i] == max)
                {
                    Console.WriteLine(i);
                }
            }
            Console.WriteLine("Выберите номер элемента, после которого нужно вставить значение.");
            try
            {
                pos = Convert.ToInt32(Console.ReadLine());
                if (mass[pos] != max)
                {
                    Console.WriteLine("Указано неверное значение, программа будет завершена!");
                    return;
                }
 
            }catch(Exception e)
            {
                Console.WriteLine("Произошла ошибка: " + e.Message + " программа будет завершена!");
                return;
            }
            Array.Resize(ref mass, mass.Length + 1);
            pos++;
            for (int i = mass.Length-1; i > pos; i--)
            {
                mass[i] = mass[i - 1];
            }
            mass[pos] = a;
 
            for (int i = 0; i < mass.Length; i++)
            {
                Console.WriteLine(mass[i]);
            }
        }
    }
}
Добавлено через 1 минуту
Блин, опередили!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
21.06.2019, 17:49
Помогаю со студенческими работами здесь

Вставить в массив заданное число x после всех отрицательных элементов
Заданный массив с n чисел. Вставить в массив заданное число x после всех отрицательных элементов. Вставить число n в массив после k-го...

Вставить в массив заданное число x после всех отрицательных элементов
2.Заданный массив с n чисел. Вставить в массив заданное число x после всех отрицательных элементов. Вставить число n в массив после k-го...

Вставить заданное число элементов после элемента, имеющего заданное значение
Ребят,помогите плз,если можете. Вставить заданное число элементов после элемента, имеющего заданное значение Работа должна быть...

Вставить произвольное число К после всех максимальных элементов в массиве
вставить произвольное число К после всех максимальных элементов в массиве.

Вставить в массив заданное число после второго положительного элемента
Дан целочисленный линейный массив. Вставить в него заданное число после второго положительного элемента. В чём ошибка? using System; ...


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

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

Новые блоги и статьи
Циклы for в Python
py-thonny 17.03.2025
Существует множество ситуаций, когда нам нужно выполнить одно и то же действие несколько раз. Цикл for в Python — настоящий рабочий конь для большинства программистов. Если вам нужно пройтись по всем. . .
Предсказание ветвлений - путь к высокопроизводи­тельному C++
NullReferenced 17.03.2025
В высокопроизводительном программировании на C++ каждый такт процессора на счету. Когда речь заходит о разработке систем с низкой задержкой — будь то высокочастотная торговля, обработка потоковых. . .
Паттерн CQRS в C#
UnmanagedCoder 17.03.2025
Создание сложных корпоративных приложений часто требует нестандартных подходов к архитектуре. Один из таких подходов — паттерн CQRS (Command Query Responsibility Segregation), предлагающий простую,. . .
Паттерн Цепочка ответственности в C#
UnmanagedCoder 17.03.2025
Цепочка ответственности — это поведенческий паттерн проектирования, который позволяет передавать запросы последовательно по цепочке потенциальных обработчиков, пока один из них не обработает запрос. . . .
Создаем микросервисы с NestJS, TCP и Typescript
run.dev 17.03.2025
NestJS — фреймворк, который значительно упрощает создание серверных приложений на Node. js. Его прелесть в том, что он комбинирует концепции ООП, функционального программирования и предлагает. . .
Гексагональная архитектура со Spring Boot
Javaican 17.03.2025
Если вы когда-нибудь сталкивались с ситуацией, когда внесение простых изменений в базу данных или пользовательский интерфейс заставляло вас переписывать весь код, то вы точно оцените элегантность. . .
Позиционировани­е Kafka Consumer и Seek-операции
Javaican 17.03.2025
Что же такое Consumer Seek в Kafka? По сути, это API-метод, который позволяет программно указать, с какой позиции (offset) Consumer должен начать или продолжить чтение данных из партиции. Без этого. . .
Python NumPy: Лучшие практики и примеры
py-thonny 17.03.2025
NumPy (Numerical Python) — одна из ключевых библиотек для научных вычислений в Python. Она превращает Python из просто удобного языка общего назначения в среду для проведения сложных математических. . .
Java Micronaut в Docker: контейнеризация с Maven и Jib
Javaican 16.03.2025
Когда речь заходит о микросервисной архитектуре на Java, фреймворк Micronaut выделяется среди конкурентов. Он создан с учётом особенностей облачных сред и контейнеров, что делает его идеальным. . .
Управление зависимостями в Java: Сравнение Spring, Guice и Dagger 2
Javaican 16.03.2025
Инъекция зависимостей (Dependency Injection, DI) — один из фундаментальных паттернов проектирования, который радикально меняет подход к созданию гибких и тестируемых Java-приложений. Суть этого. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru