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

Узнай цену своей работы

Формулировка задачи:

Дан код задания с созданным классом: ПРОЦЕССОР: производитель (строка), модель (строка), тактовая частота в MHz (целое) выполнен поиск по процессору с максимальной частотой. В поиске нужно что бы выводились несколько одинаковых процессоров с максимальной частотой (сейчас же он выводит лишь один одинаковый процессор с максимальной частотой) Код программы.
Листинг программы
  1. namespace ConsoleApplication24
  2. {
  3. class Program
  4. {
  5. static void Main()
  6. {
  7. Processor[] processors = new Processor[3];
  8. for (int i = 0; i < processors.Length; i++)
  9. {
  10. processors[i] = new Processor();
  11. Console.Write("Enter Manufacturer: ");
  12. processors[i].Manufacturer = Console.ReadLine();
  13. Console.Write("Enter Model: ");
  14. processors[i].Model = Console.ReadLine();
  15. Console.Write("Enter chastota: ");
  16. processors[i].Frequency = Int32.Parse(Console.ReadLine());
  17. }
  18. Console.WriteLine();
  19. foreach (Processor p in processors)
  20. Console.WriteLine(p.ProcessorInfo());
  21. Processor fastest = processors[0];
  22. foreach (Processor p in processors)
  23. if (p.Frequency > fastest.Frequency)
  24. fastest = p;
  25. Console.WriteLine("processor max chastots:");
  26. Console.WriteLine();
  27. Console.WriteLine("chastota:\r\n {0}", fastest.ProcessorInfo());
  28.  
  29. Console.ReadKey();
  30. }
  31. }
  32. public class Processor
  33. {
  34. private string manufacturer;
  35. private string model;
  36. private int frequency;
  37. public string Manufacturer
  38. {
  39. get { return manufacturer; }
  40. set { if (manufacturer != value) manufacturer = value; }
  41. }
  42. public string Model
  43. {
  44. get { return model; }
  45. set { if (model != value) model = value; }
  46. }
  47. public int Frequency
  48. {
  49. get { return frequency; }
  50. set { if (frequency != value) frequency = value; }
  51. }
  52. public string ProcessorInfo()
  53. {
  54. return string.Format("Manufacturer: {0}\r\nModel: {1}\r\nchastota: {2}\r\n", Manufacturer, Model, Frequency);
  55. }
  56. }
  57. }

Решение задачи: «Поиск нескольких экземпляров с максимальным значением поля»

textual
Листинг программы
  1. List<Processor> result = new List<Processor>();
  2.   for (int i = 1; i < processors.Length; i++)
  3.   {
  4.                 if (processors[i].Frequency > max.Frequency)
  5.                 {
  6.                     max = processors[i];
  7.                 }
  8.   }
  9.  
  10.     for (int i = 0; i < processors.Length; i++)
  11.    {
  12.                 if (processors[i].Frequency == max.Frequency)
  13.                 {
  14.                     result.Add(processors[i]);
  15.                 }
  16.     }
  17.  
  18.             Console.WriteLine("processor max chastots:");
  19.             Console.WriteLine();
  20.             for (int i = 0; i < result.Count; i++)
  21.             {
  22.                 Console.WriteLine("chastota:\r\n {0}", result[i].ProcessorInfo());
  23.             }
  24.  
  25.             Console.ReadKey();

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

10   голосов , оценка 4.1 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы