Форум программистов, компьютерный форум, киберфорум
C# для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
0 / 0 / 1
Регистрация: 05.07.2011
Сообщений: 47
1

Несколько головоломок

05.07.2011, 15:33. Показов 1236. Ответов 2
Метки нет (Все метки)

Всем доброго времени суток. Имеется несколько задачек. Так как C# начал изучать совсем недавно, то данные задания вызвали у меня некоторые трудности. Надеюсь,что вы поможете мне с ними разобраться. Начнём по порядку.

1)Дан набор из n целочисленных элементов. Найти максимальное кол-во подряд идущих максимальных элементов.

Здесь я не совсем понял постановку задачи. Что значит "максимальное кол-во подряд идущих максимальных элементов"?
__________________
Помощь в написании контрольных, курсовых и дипломных работ здесь
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.07.2011, 15:33
Ответы с готовыми решениями:

Любителям головоломок!
Можно ли в запросе 'сгруппировать' числовое поле в текстовое, в котором через запятую будут...

Генератор головоломок
Доброго времени суток, форумчане) Помогите, пожалуйcта, написать программу(сойдет и исходник) под...

Генерация геометрических головоломок
Здравствуйте!Мне необходимо написать программу генерации геометрической головоломки.Пример:дано три...

Решение головоломок на Lisp
Помогите с решением следующей задачи. Используя рекурсии, на языке Lisp решить головоломку. Есть...

2
6242 / 3543 / 898
Регистрация: 28.10.2010
Сообщений: 5,926
05.07.2011, 15:37 2
Думаю предполагается, что в массиве может быть несколько максимальных элементов, т.е. они могут повтяряться и нужно найти самую длинную цепочку из максимальных элементов.
0
0 / 0 / 1
Регистрация: 05.07.2011
Сообщений: 47
05.07.2011, 19:51  [ТС] 3
Лучший ответ Сообщение было отмечено Inframercury как решение

Решение

Вот. Написал код.
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()
        {
           
            Console.Write("Введите размерность массива: ");
            int n = int.Parse(Console.ReadLine()); 
            int[] mas = new int[n];
            for(int i=0;i<mas.Length;i++)
            {Console.Write("Введите {0}-й элемент массива: ",i);
            mas[i] = int.Parse(Console.ReadLine());
            }
            
            int max = mas[0];
            int index=1;
            for (int j = 0; j < mas.Length; j++)
            {
                
                
                for (int k = j + 1; k < mas.Length;k++ )
                {
 
                    if (max <= mas[j])
                    {
                        max = mas[j];
                        
 
 
                        if (mas[k] == max)
                        {
                            index++;
                        }
                        else break;
                    }
                    
               
               }    
 
            }
            Console.Write("Исходный массив: ");
            for (int p = 0; p < mas.Length; p++)
            {
                Console.Write(mas[p]);
            }
            Console.WriteLine();
 
            Console.WriteLine("Максимальное кол-во подряд идущих максимальных элементов в исходном массиве равно: {0}", index);
            Console.Read();
Проблема в том,что счётчик встречающихся подряд макс. элементов работает правильно не для всех слчаев. Ну, например, если в массиве размерностью 4 задать подряд три одинаковых максимальных значения, то на выходе переменная index равнется 4, что,само собой,неверно. Что нужно поменять в коде, чтобы программа работала корректно для всех возможных случаев. Как быть с переменной index?Подскажите,будьте добры.

Добавлено через 29 секунд
Петррр, спасибо за подсказку

Добавлено через 29 минут
Всё,разобрался.

Добавлено через 34 минуты
2)Отредактировать предложение,удаляя из него те слова,которые встречаются заданное число раз
 Комментарий модератора 
Запрещено создавать темы с множеством вопросов во всех разделах, кроме разделов платных услуг. Один вопрос - одна тема.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
05.07.2011, 19:51

Lenovo g555 круговорот головоломок
И так начнём: Головоломка 1) Сидел за ноутом - нежданом выключился...Включаю - запускается куллер...

Описать класс Спичка для головоломок
Здраствуйте у меня есть 30 головоломок со спичками, на каждую форму по одной головоломке. Помогите...

Одна из самых сложных головоломок в интернете
Друзья, хочу вам представить, одну из самых сложных головоломок за всю историю интернета....

Жак Арсак Программирование игр и Головоломок
Собственно нет ли у кого решения игр по этой книге? В частности интересует 25 игра...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.