]]>
]]>
IT Coders
Логин:
Пароль:
  ]]>Войти]]> ]]>Регистрация]]> ]]>Забыли?
 
 
СКОРОСТЬ ->
 
КАЧЕСТВО ->
 
УСПЕХ...
Персональный web-сайт Богословской Оксаны Акксессуары для iPhone, iPad, iPod touch и Samsung Galaxy :: iHave Radhika - интернет-магазин специй, вегетарианских и диетических продуктов Интернет-магазин InFabrica - техника для Вас Официальный сайт компании "Белсис" Техно Офис - Компьютерный интернет-магазин Официальный сайт Льва Лещенко СДЕЛАНО БОГОМ - Интернет-журнал Свадебный журнал WedInMoscow Кинохабар - Интернет-гипермаркет фигурок персонажей из фильмов, кино сувениров и прочего околокиношного хабара Персональный web-сайт Королёвой Надежды Михайловны Портал школы "Золотое Сечение"
 

Альтернативное содержимое

]]> ]]>
 
ВКонтакт Facebook Одноклассники Twitter Яндекс Livejournal Liveinternet Mail.Ru
Страницы: 1
Структуры в С#, как сделать сортировку? Архив со старого форума компании IT Coders
Здравствуйте! дана задача: описать структуру с именем Student, содержащую след поля:
ФИО
номер группы
успеваемость(массив из 5 элементов)
Написать программу выполняющую следующте действия :
ввод с клавиатуры данных в массив, состоящий из десяти структур типа Student(данные должны быть упорядоченны по возрастанию номера группы)
вывод на экран фамилий и номеров групп для всех студентов включенных в массив,если средний балл студентов больше4,0(если нет таких вывести сообщение)
Помогите пожалуйста с сортировкой не понимаю как ее сделать
Код
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace SortedStructs
{
    public struct Student
    {
        public string Name;
        public int Group;
        public int[] Grades;

        public Student(string n)
        {
            Name = n;
            Group = 0;
            Grades = new int[5];
        }
        public override string ToString()
        {
            StringBuilder sb = new StringBuilder();
            sb.Append("Student:\n\tName - ");
            sb.Append(this.Name);
            sb.Append("\n\tGroup - ");
            sb.Append(this.Group);
            if (this.Grades.Average() > 4.0)
            {
                sb.Append("\n\tAverage grade - ");
                sb.Append(this.Grades.Average());
            }
            else
            {
                sb.Append("\n\tCannot show so low grades!");
            }
            return sb.ToString();
        }
    }
    class Program
    {
        const int COUNT_OF_STUDENTS = 10;
        static void Main(string[] args)
        {
            Student[] students = new Student[COUNT_OF_STUDENTS];
            for (int i = 0; i < COUNT_OF_STUDENTS; i++)
            {
                Console.WriteLine("Please, enter student's name:");
                students[i] = new Student(Console.ReadLine());
                Console.WriteLine("Please, enter student's group:");
                students[i].Group = int.Parse(Console.ReadLine());
                for (int j = 0; j < 5; j++)
                {
                    Console.WriteLine("Please, enter the grade #" + (j + 1).ToString() + ":");
                    students[i].Grades[j] = int.Parse(Console.ReadLine());
                }
            }
            IEnumerable<Student> query = students.OrderBy(st => st.Group);
            foreach (Student st in query)
            {
                Console.WriteLine(st.ToString());
            }
        }
    }
}
Код
STUDENT[] a = new STUDENT[10];

...

STUDENT temp;
int length = a.Length;
for (int i = 0; i < length - 1; ++i)
{
    int current = i;
    for (int j = i + 1; j < length; ++j)
    {
        if (a[current].nomer > a[j].nomer) { current = j; }
    }
    if (current != i)
    {
        temp = a[i];
        a[i] = a[current];
        a[current] = temp;
ІМХО будет хорошо, если ты в своем структе имплементируешь интерфейс IComparable - массив тогда легко будет сортировать.
Код
struct STUDENT:IComparable
{
public string FIO;// фамилия имя отчество
public int nomer;//номер группы
public int[] usp;// успеваемость

#region IComparable Members
public int CompareTo(object obj)
{
STUDENT s = (STUDENT)obj;
return this.nomer.CompareTo(s.nomer);
}
#endregion
}

Тогда сортировку массива можно сделать очень просто:
Код
STUDENT[] a = new STUDENT[10];

.....

Array.Sort(a);
Страницы: 1
Читают тему (гостей: 1, пользователей: 0, из них скрытых: 0)
Ваша корзина пуста
]]> ]]>
Ваша корзина пуста
]]> ]]>
]]> ]]>
]]>
 

]]>
© IT Coders, 2008 - 2024
Под управлением CMS 1c-bitrix
xvideo indian wife zeloporn.com call girls in munirka
sexy bf loading pornview.org www.desipapa..com
farm sex popsexy.net sex with stepmother
farmer sex indianpornvideos.me desi unseen.com
village auntys xnxx tubexo.info anti sex.com
tamilkamavideos youjizz.sex pornroids
perfect girl porn ruperttube.net bangla video panu
first time sex video xxxhindiporn.net kashmiri sexy girl video
xnnvideos indiansexmms.me xhamxter
love parameter 90 hentaimol.com straight shotacon hentai manga
desi sex wap xxxleap.com hot mom sex with son
reshma sex clips povporntrends.com xxnx.vidoes
indian horse sex gekso.info paksexvideo
honey moon xnxx pornindianhub.info saxy video free
xvideobhabhi freexxxporn.me www odia sexy in