Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 20
1

Работа с одномерными массивами

23.10.2013, 22:10. Показов 988. Ответов 5
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Имеется одномерный массив. Класс Array использовать НЕЛЬЗЯ!
1) добавить N элементов начиная с номера K
2) поменять местами элементы с четными и нечетными номерами.
Я ЧАЙНИК. Кто то может помочь?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
23.10.2013, 22:10
Ответы с готовыми решениями:

Работа с одномерными массивами
Сформировать массив из n элементов с помощью датчика случайных чисел (n задается пользователем с...

Работа с одномерными массивами
Ребят,помогите пожалуйста сделать лабораторку!Очень нужно!Только как можно более простым способом!...

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

Создать класс для работы с одномерными массивами
Условие: Класс описывает одномерный массив состоящий из n целых элементов со значениями в...

5
369 / 341 / 108
Регистрация: 12.02.2013
Сообщений: 653
23.10.2013, 22:35 2
Цитата Сообщение от HSEGUEST Посмотреть сообщение
1) добавить N элементов начиная с номера K
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
    class Program
    {
        static void Main(string[] args)
        {
            int[] mas = { 1, 2, 3, 4, 5, 6, 7 };
 
            Console.Write("Введите кол-во элементов (N): ");
            int n = int.Parse(Console.ReadLine());
 
            int[] nmas = new int[n];
 
            for (int i = 0; i < n; i++)
            {
                Console.Write("Введите {0}-й элемент: ", i + 1);
                nmas[i] = int.Parse(Console.ReadLine());
            }
 
            Console.Write("Укажите позицию: ");
            int k = int.Parse(Console.ReadLine());
 
            int[] massiv = new int[mas.Length + nmas.Length];
 
            for (int i = 0, j = 0, t = 0; i < massiv.Length; i++)
            {
                if (i < k)
                {
                    massiv[i] = mas[j];
                    j++;
                }
                else
                {
                    if (i < (k + n))
                    {
                        massiv[i] = nmas[t];
                        t++;
                    }
                    else
                    {
                        massiv[i] = mas[j];
                        j++;
                    }
                }
            }
 
            Console.WriteLine(string.Join("  ", massiv));
            
            Console.ReadKey();
        }
    }
0
348 / 269 / 128
Регистрация: 14.11.2010
Сообщений: 482
24.10.2013, 00:26 3
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
static void Main(string[] args)
        {
            int n = 0, k = 0, N = 0;
            Console.Write("Введите размер массива: ");
            n = int.Parse(Console.ReadLine());
            int[] array = new int[n];
            Random rnd = new Random();
            for (int i = 0; i < n; i++)
            {
                array[i] = rnd.Next(-50, 50);
                Console.Write(array[i] + " ");
            }
            Console.WriteLine("\nЗадание 1.");
            Console.Write("\nВведите номер индеска для вставки элемента(ов): ");
            k = int.Parse(Console.ReadLine());
            Console.Write("Введите кол-во добавляемых эл-ов: ");
            N = int.Parse(Console.ReadLine());
            int[] tempArray = array;
            int[] newArray = new int[n + N];
            for (int i = 0,tempPos=0; i < n + N; i++,tempPos++)
            {
                if (i == k)
                {
                    int stop = 0;
                    while (stop < N)
                    {
                        newArray[i] = rnd.Next(-50, 50);
                        i++;
                        stop++;
                    }
                }
                newArray[i] = tempArray[tempPos];
            }
            for (int i = 0; i < n + N; i++)
                Console.Write(newArray[i]+" ");
            Console.WriteLine("\nЗадание 2.");
            for (int i = 0; i < n + N-1; i+=2)
            {
                int tempItem=newArray[i];
                newArray[i] = newArray[i + 1];
                newArray[i + 1] = tempItem;
            }
            for (int i = 0; i < n + N; i++)
                Console.Write(newArray[i] + " ");
            Console.ReadLine();
        }
0
0 / 0 / 0
Регистрация: 22.10.2013
Сообщений: 20
24.10.2013, 12:56  [ТС] 4
Объяснить можешь что к чему? я не вывожу
0
369 / 341 / 108
Регистрация: 12.02.2013
Сообщений: 653
24.10.2013, 13:30 5
Цитата Сообщение от HSEGUEST Посмотреть сообщение
Объяснить можешь что к чему? я не вывожу
тут все очень просто! где именно непонятно скажи - объясню
0
39 / 35 / 15
Регистрация: 18.09.2013
Сообщений: 118
24.10.2013, 15:22 6
Ой тем то наплодил автор...
В другой уже ответил, но выложу своё решение и здесь:
Кликните здесь для просмотра всего текста
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
class WorkWithRandomArray
{       
        static public int[] MakeArray (int [] array, int n, int k, Random rand)//Метод в котором собственно и осуществляем добавление новых позиций в массив
        {
            int[] array2 = new int[array.Length+n];
            for (int i = 0; i<k;i++)
                array2[i]=array[i];
            for (int i =k; i<k+n;i++)
                array2[i]=rand.Next(-10,10);
            for (int i = k+n; i<array2.Length;i++)
                array2[i]=array[i-n];
            return array2;
                
        }
    static void Main(string[] args)
    {       
        
        Random rand = new Random();
        Console.Write("Введите первоначальный размер массива: ");
        int[] array = new int[int.Parse(Console.ReadLine())];
        Console.WriteLine("Вот такой у нас массивчик: ");
        for (int i = 0; i<array.Length;i++)
        {
            array[i]=rand.Next(-10,10);
            Console.Write("   "+array[i]);
        }
        Console.Write("\nВведите количество добавляемых позиций: ");
        int n = int.Parse(Console.ReadLine());
        Console.Write("\nВведите номер позиции с какой добавлять: ");
        int k = int.Parse(Console.ReadLine());
        
        int [] array2 = MakeArray(array, n,k,rand);
        
        Console.WriteLine("\nВот такой у нас массивчик получился: ");
        for (int i = 0; i<array2.Length;i++)
        {
            Console.Write("   "+array2[i]);
        }
        
        Console.ReadLine();
 
    }}
0
24.10.2013, 15:22
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.10.2013, 15:22
Помогаю со студенческими работами здесь

Решение 5 задач с одномерными массивами в одной программе
Последние 5 задач из этой темы https://www.cyberforum.ru/csharp-beginners/thread1786779.html ...

Составление программ с одномерными массивами на языке программирования C#
Прошу помощи в написании первых двух программ Заранее спасибо.

Описать класс для работы с одномерными массивами чисел
Описать класс для работы с одномерными массивами чисел. Класс должен реализовывать возможность:...

Создайте класс «matrix» для работы с одномерными целочисленными массивами
Создайте класс «matrix» для работы с одномерными целочисленными массивами. Организовать ввод данных...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru