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

Поиск нескольких экземпляров с максимальным значением поля

01.04.2016, 00:11. Показов 830. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Дан код задания с созданным классом:
ПРОЦЕССОР: производитель (строка), модель (строка), тактовая частота в MHz (целое)
выполнен поиск по процессору с максимальной частотой. В поиске нужно что бы выводились несколько одинаковых процессоров с максимальной частотой (сейчас же он выводит лишь один одинаковый процессор с максимальной частотой)



Код программы.

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
65
66
67
namespace ConsoleApplication24
{
    class Program
    {
        static void Main()
        {
            Processor[] processors = new Processor[3];
 
            for (int i = 0; i < processors.Length; i++)
            {
                processors[i] = new Processor();
                Console.Write("Enter Manufacturer: ");
                processors[i].Manufacturer = Console.ReadLine();
                Console.Write("Enter Model: ");
                processors[i].Model = Console.ReadLine();
                Console.Write("Enter chastota: ");
                processors[i].Frequency = Int32.Parse(Console.ReadLine());
            }
            Console.WriteLine();
 
            foreach (Processor p in processors)
                Console.WriteLine(p.ProcessorInfo());
 
            Processor fastest = processors[0];
 
            foreach (Processor p in processors)
                if (p.Frequency > fastest.Frequency)
                    fastest = p;
            Console.WriteLine("processor max chastots:");
            Console.WriteLine();
            Console.WriteLine("chastota:\r\n {0}", fastest.ProcessorInfo());
 
 
            Console.ReadKey();
        }
    }
 
    public class Processor
    {
        private string manufacturer;
        private string model;
        private int frequency;
 
        public string Manufacturer
        {
            get { return manufacturer; }
            set { if (manufacturer != value) manufacturer = value; }
        }
 
        public string Model
        {
            get { return model; }
            set { if (model != value) model = value; }
        }
 
        public int Frequency
        {
            get { return frequency; }
            set { if (frequency != value) frequency = value; }
        }
 
        public string ProcessorInfo()
        {
            return string.Format("Manufacturer: {0}\r\nModel: {1}\r\nchastota: {2}\r\n", Manufacturer, Model, Frequency);
        }
    }
}
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
01.04.2016, 00:11
Ответы с готовыми решениями:

Выборка с максимальным значением поля по группировке
Есть таблица: id Group Value Date 1 1 1 7 2 1 2 6 3 2 4 4 4 2 3 5 ...

Найти среднее арифметическое между максимальным значением матрицы и максимальным значением массива
Заданы матрица и массив. Определить среднее арифметическое между максимальным значением элементов матрицы и максимальным значением...

Выбрать уникальные значения с максимальным значением поля
Ситуация следующая, sql запрос используется для формирования отчета, в который необходимо выбрать объекты, у которых в базе последняя...

2
8 / 8 / 11
Регистрация: 30.07.2015
Сообщений: 65
01.04.2016, 09:34
Цитата Сообщение от warlokys Посмотреть сообщение
foreach (Processor p in processors)
Console.WriteLine(p.ProcessorInfo());
Processor fastest = processors[0];
foreach (Processor p in processors)
if (p.Frequency > fastest.Frequency)
fastest = p;
Вы находите только один процессор,можно вот так:
C#
1
2
3
4
5
6
7
8
9
10
11
12
  int m=processors[0].Frequency;
            foreach (Processor p in processors)
                if (p.Frequency > m)
                    
                    m= p.Frequency;//находим максимальную частоту
                
            Console.WriteLine("processor max chastots:");
            Console.WriteLine();
            foreach (Processor p in processors)
                if (p.Frequency == m)
                
            Console.WriteLine("chastota:\r\n {0}", p.ProcessorInfo());
0
 Аватар для UseMuse
154 / 154 / 60
Регистрация: 11.01.2016
Сообщений: 1,325
01.04.2016, 12:30
warlokys,

За место
C#
1
2
3
4
5
6
7
Processor fastest = processors[0];
foreach (Processor p in processors)
 if (p.Frequency > fastest.Frequency)
 fastest = p;
 Console.WriteLine("processor max chastots:");
 Console.WriteLine();
 Console.WriteLine("chastota:\r\n {0}", fastest.ProcessorInfo());
Напиши вот это
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
List<Processor> result = new List<Processor>();
  for (int i = 1; i < processors.Length; i++)
  {
                if (processors[i].Frequency > max.Frequency)
                {
                    max = processors[i];
                }
  }
 
    for (int i = 0; i < processors.Length; i++)
   {
                if (processors[i].Frequency == max.Frequency)
                {
                    result.Add(processors[i]);
                }
    }
 
            Console.WriteLine("processor max chastots:");
            Console.WriteLine();
            for (int i = 0; i < result.Count; i++)
            {
                Console.WriteLine("chastota:\r\n {0}", result[i].ProcessorInfo());
            }
 
            Console.ReadKey();
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.04.2016, 12:30
Помогаю со студенческими работами здесь

Дан массив.найти номера всех элементов:с минимальным значением,с максимальным значением.
Привет всем!!!помогите решить задачи на С#. 1.Дан массив.найти номера всех элементов:с минимальным значением,с максимальным значением. ...

Вставить в массив элемент перед первым элементом с максимальным значением и после первого элемента минимальным значением
Кто разбирается в С#? Можете написать код Вставить в массив элемент с заданным значением перед первым элементом с максимальным значением...

Поиск значения поля, состоящего из нескольких слов
коллеги, помогите осуществить выборку есть таблица &quot;улица&quot;, и &quot;точка учета&quot; как через диалоговую форму &quot;ввод адреса&quot;...

Считать из поля Edit вписанное значение и через запрос (query) вывести строку с этим значением значением в dbgrid.
считать из поля Edit вписанное значение и через запрос (query) вывести строку с этим значением значением в dbgrid. Добавил query,...

Синхронизация нескольких экземпляров программы
Ребят, подскажите пожалуйста. В общем есть программа, производящая некие операции в браузере (Awesomium) с раными интервалами времени. Я...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
Контроль уникальности заводского номера - вариант №2
Maks 24.03.2026
В отличие от предыдущего варианта добавлено прерывание циклов, также добавлены новые переменные для сохранения контекста ошибки перед прерыванием цикла: Процедура ПередЗаписью(Отказ, РежимЗаписи,. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
Жизнь в неопределённости
kumehtar 23.03.2026
Жизнь — это постоянное существование в неопределённости. Например, даже если у тебя есть список дел, невозможно дойти до точки, где всё окончательно завершено и больше ничего не осталось. В принципе,. . .
Модель здравоСохранения: работники работают быстрее после её введения.
anaschu 23.03.2026
geJalZw1fLo Корпорация до введения программа здравоохранения имела много невыполненных работниками заданий, после введения программы количество заданий выросло. Но на выплатах по больничным это. . .
Контроль уникальности заводского номера - вариант №1
Maks 23.03.2026
Алгоритм контроля уникальности заводского (или серийного) номера на примере документа выдачи шин для спецтехники с табличной частью. Данные берутся из регистра сведений, по которому настроено. . .
Хочу заставить корпорации вкладываться в здоровье сотрудников: делаю мат модель здравосохранения
anaschu 22.03.2026
e7EYtONaj8Y Z4Tv2zpXVVo https:/ / github. com/ shumilovas/ med2. git
Программный отбор элементов справочника по группе
Maks 22.03.2026
Установка программного отбора элементов справочника "Номенклатура" из модуля формы документа. В качестве фильтра для отбора справочника служит группа номенклатуры. Отбор по наименованию группы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru