0 / 0 / 1
Регистрация: 18.10.2013
Сообщений: 31
1

Сформировать массив B, записав в него все элементы массива А, стоящие после минимального

10.04.2014, 20:32. Показов 2660. Ответов 4
Метки нет (Все метки)

Помогите пожалуйста решить задачу:
Ввести одномерный целочисленный массив A. Сформировать массив B, записав в него все элементы массива А, стоящие после минимального. Массив B отсортировать по убыванию.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
10.04.2014, 20:32
Ответы с готовыми решениями:

Ввести одномерный целочисленный массив A. Сформировать массив B, записав в него все нечетные элементы массива А, стоящих
Ввести одномерный целочисленный массив A. Сформировать массив B, записав в него все нечетные...

Переписать в массив все элементы заданного массива, стоящие после его минимального элемента
Переписать в одномерный массив K все элементы заданного целочисленного массива L , стоящие после...

Сформировать массив B, записав в него элементы массива A с нечётными индексами
Начали проходить массивы. Не получается решить данную задачу. Помогите, кто сечет фишку. ...

Сформировать массив В, записав в него элементы массива А в обратном порядке
Дан массив А состоящий с действителтных чисел. Сформировать В, записав в него элементы массива А в...

4
Эксперт .NET
5474 / 4244 / 1211
Регистрация: 12.10.2013
Сообщений: 12,248
Записей в блоге: 2
10.04.2014, 21:11 2
Ввод организуете сами...
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr_A = { 3, 5, 7, 2, 8, 2, 7, 1, 0, 6, 3, 5, 6, 54, 23, 1, 8, 3 };
            int min = arr_A.Min();
            int index = Array.FindLastIndex(arr_A, delegate(int i) 
            { 
                return i == min; 
            });
            int[] arr_B = new int[arr_A.Length - (index+1)];
            int j = 0;
            for (int i = index+1; i < arr_A.Length; i++)
            {
                arr_B[j] = arr_A[i];
                j++;
            }
            Array.Sort(arr_B);
            foreach (int i in arr_B)
                Console.WriteLine("Item: {0}", i);
            Console.ReadLine();
        }
    }
}
Да, и если в массиве несколько минимальных элементов, то рассчитывается по последнему из них. Но это можете изменить...
0
0 / 0 / 1
Регистрация: 18.10.2013
Сообщений: 31
10.04.2014, 22:47  [ТС] 3
Спасибо большое! Только нужно было по убыванию сортировать, я исправила это элементом reverse
0
Эксперт .NET
5474 / 4244 / 1211
Регистрация: 12.10.2013
Сообщений: 12,248
Записей в блоге: 2
10.04.2014, 22:49 4
Лучший ответ Сообщение было отмечено Памирыч как решение

Решение

Цитата Сообщение от azhigalieva Посмотреть сообщение
Только нужно было по убыванию сортировать
Не заметил этого момента... Можно свой класс сортировщика сделать...
Вот так...
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
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
 
namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            int[] arr_A = { 3, 5, 7, 2, 8, 2, 7, 1, 6, 3, 5, 6, 54, 23, 1, 8, 3 };
            int min = arr_A.Min();
            int index = Array.FindLastIndex(arr_A, delegate(int i) 
            { 
                return i == min; 
            });
            int[] arr_B = new int[arr_A.Length - (index+1)];
            int j = 0;
            for (int i = index+1; i < arr_A.Length; i++)
            {
                arr_B[j] = arr_A[i];
                j++;
            }
            Array.Sort(arr_B, new MySort());
            foreach (int i in arr_B)
                Console.WriteLine("Item: {0}", i);
            Console.ReadLine();
        }
    }
    class MySort : IComparer<int>
    {
        public int Compare(int x, int y)
        {
            if (x > y)
                return -1;
            if (x < y)
                return 1;
            else
                return 0;
        }
    }
}
1
0 / 0 / 1
Регистрация: 18.10.2013
Сообщений: 31
10.04.2014, 23:02  [ТС] 5
Можно и так)) Спасибо
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
10.04.2014, 23:02
Помогаю со студенческими работами здесь

Сформировать массив B, записав в него элементы массива A с нечётными индексами
Помогите пожалуйста!!! Паскаль начали недавно проходить, не могу решить задачу. Сформировать...

Заменить все элементы массива стоящие после минимального на значение минимального элемента
Заменить все элементы массива стоящие после минимального на значение минимального элемента. вот...

Сформировать одномерный массив В, записав в него сначала элементы массива А, имеющие четные индексы
Сформировать одномерный массив В,записав в него сначала элементы массива А,имеющие четные...

Сформировать массив D, куда записать все элементы массива Х(N) расположенные до минимального и после максимального элементов
Задан массив Х(N). Сформировать массив D, куда записать все элементы массива Х(N) расположенные до...

Найти минимальный элемент массива, и умножить на него все отрицательные элементы, стоящие левее этого минимального
Среди отрицательных элементов массива из 16 целых чисел найти минимальный и умножить на него все...

Дан массив A(m). Переписать в массив В все элементы, стоящие после максимального элемента и до минимального
Дан массив A(m). Переписать в массив В все элементы, стоящие после максимального элемента и до...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru