Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 10.03.2013, 23:15   #1
Dronnn
 
Регистрация: 03.03.2013
Сообщений: 5
Сообщение Массивы (начало)

Доброго времени суток уважаемые программисты. Недавно начал разбираться с массивами и хотел бы попросить помочь мне создать код для такого вот задания:
Массив из 10 чисел заполнить случайными целыми значениями в диапазоне от ( 0 до 100). Организовать новый массив, элементы которого расположены в обратном порядке.
Заранее спасибо
Dronnn вне форума Ответить с цитированием
Старый 11.03.2013, 00:49   #2
acteralex
Форумчанин
 
Регистрация: 19.05.2011
Сообщений: 189
По умолчанию

... В интернете мало вариантов ответа?
Вот алгоритм:

1) Создаешь массив из 100 элементов
2) Перебираешь в цикле элементы и присваиваешь им число функцией рандом
3) Расположение в обратном порядке. Создаешь новый массив из 100 элементов и присваиваешь ему ранее созданный массив. Используя цикл for переставляшь i-тый и (i+1)-тый элементы местами. вот и все.
acteralex вне форума Ответить с цитированием
Старый 11.03.2013, 08:41   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

1)
Цитата:
Сообщение от acteralex
1) Создаешь массив из 100 элементов
нет. из 10.

2) согласен.

Цитата:
Сообщение от acteralex
3) Расположение в обратном порядке. Создаешь новый массив из 100 элементов и присваиваешь ему ранее созданный массив. Используя цикл for переставляшь i-тый и (i+1)-тый элементы местами.
Это Вы ошибаетесь. Зачем переставлять соседние элементы массива?!
Нужно записывать элементы a[i] -> b[9-i] (ну, или a[9-i] -> b[i], что одно и то же...)
Код:
            Random ran = new Random(DateTime.Now.Millisecond);
            int[] mas1 = new int[10];
            for (int i = 0; i < 10; i++)
            {
                mas1[i] = ran.Next(100);
                Console.Write(" {0} ",mas1[i]);
            }
            Console.WriteLine();

            int[] mas2 = new int[10];
            for (int i = 0; i < 10; i++)
            {
                mas2[9 - i] = mas1[i];
            }

            Console.WriteLine("Перевёрнутый массив"); 
            for (int i = 0; i < 10; i++)
            {
                Console.Write(" {0} ", mas2[i]);
            }
            Console.WriteLine();

            Console.WriteLine("Нажмите любую клавишу для выхода из программы...");
            Console.ReadKey();

Ну и не забываем, что используя метод массива Reverse задача может быть решена в одно действие.
Код:
            Random ran = new Random(DateTime.Now.Millisecond);
            int[] mas1 = new int[10];
            for (int i = 0; i < 10; i++)
            {
                mas1[i] = ran.Next(100);
                Console.Write(" {0} ",mas1[i]);
            }
            Console.WriteLine();

            int[] mas2 = new int[10];
            Array.Copy(mas1, mas2, mas1.Length);
            Array.Reverse(mas2);
            Console.WriteLine("Перевёрнутый массив");
            for (int i = 0; i < 10; i++)
            {
                Console.Write(" {0} ", mas2[i]);
            }
            Console.WriteLine();

            Console.WriteLine("Нажмите любую клавишу для выхода из программы...");
            Console.ReadKey();

Последний раз редактировалось Serge_Bliznykov; 11.03.2013 в 08:53.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 11.03.2013, 09:22   #4
acteralex
Форумчанин
 
Регистрация: 19.05.2011
Сообщений: 189
По умолчанию

Поспешил с ответом я...

Последний раз редактировалось acteralex; 11.03.2013 в 09:26.
acteralex вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
начало с++ candalik Софт 13 22.10.2022 11:04
задача на массивы (есть начало) а дальше не знаю как делать(( zaaag Помощь студентам 2 28.11.2011 13:58
Начало Romser Помощь студентам 8 18.09.2010 22:45
Начало Neymexa Microsoft Office Excel 2 23.04.2010 20:42
Начало.... С++ illiaerne Свободное общение 8 08.11.2008 21:09