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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.05.2012, 00:41   #1
natik3
 
Регистрация: 05.04.2012
Сообщений: 6
По умолчанию Упорядочить массив по среднему баллу.

Создать массив из 20 элементов,хранящих информацию о студенках факультета.Каждый элемент содержит фамилию,курс,форму обучения,(специалист,бакалавр,магис тр)и оценки по 5 предметам за последнюю сессию.
Упорядочить массив по среднему баллу.Осуществить перевод студентов на следующий курс.Переводятся студенты ,не имеющие задолжностей за последнюю сессию,студенты 5-ого курса(специалисты) и 6-ого курса(магистры)должны быть удалены ,как окончившие курс обучения.

Решить задачу в Delphi.C помощью процедур и функций.Помогите разобраться...нужно сначало создать файл,потом сортировать,потом процедура перевода на другой курс,там в цикле до 6 или 5 курса проверка,подфункция на проверку двоечников,если они есть удаляем их,если 5 или 6 курс тоже удаляем.я начала.подскажите правильно ли.и как дальше?


Код:
program str155n10;

{$APPTYPE CONSOLE}

uses
  SysUtils,windows;
type
  Tsession = array[1..10,1..5] of record            //Сведения об экзаменах
                                  name: string[10]; //название экзамена
                                  mark: 1..5;       //оценка
                                  end;
  student = record                // Сведения о студенте
            FIO: string[40];      // фамилия, имя, отчество
            curs: 1..5;           // курс
            group: 1..9;          // группа
            results: Tsession;    // сведения об экзаменах
            end;
 TFile= file of student ; // файловая переменная, содержащая сведения о студентах
var k:integer;
    fname: string;
    f:TFile;
    sr: real;
//--
procedure New_file(var f:tfile; var name:string);    // Создание пустого файла
var yn:char;
begin
 writeln('_____________________');
 write('Имя нового файла: ');
 readln(name);                                       // Ввод имени
 if name='' then writeln('Имя файла пусто!') else    // Проверка на непустоту введенного имени
   if fileexists(name) then                          // Проверка на существование файла
    begin
     write('Файл с таким именем существует, заменить? (y/n): ');
     readln(yn);
     if yn in ['y','Y','Н','н'] then
      begin                                          // Если файл существует, можно его заменить
       assign(f,name);
       rewrite(f);                                   // путём открытия файла для записи
       writeln('Файл "',name,'" создан!');
       closefile(f);
      end;
    end
   else
    begin
     assign(f,name);
     rewrite(f);
     writeln('Файл "',name,'" создан!');
     closefile(f);
    end;

end;
//--

Последний раз редактировалось Stilet; 15.05.2012 в 07:29.
natik3 вне форума Ответить с цитированием
Старый 15.05.2012, 09:04   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Код:
type
  Tsession = array[1..10,1..5] of record            //Сведения об экзаменах
                                  name: string[10]; //название экзамена
                                  mark: 1..5;       //оценка
                                  end;
Вау! Круто! type array of record - я так не умел раньше!

вопрос к Вам.

1-е. Для чего Вы по каждому студенту заносите 50 оценок (10 раз по 5 штук) ?
Это все сессии за все периоды обучения?
так Вы сильно расширили задание:
Цитата:
и оценки по 5 предметам за последнюю сессию.
2-е.
Цитата:
Создать массив из 20 элементов
а где, собственно, требуемый массив??!

3-е. ну а в целом всё правильно, начало нормальное. Продолжайте в том же духе.

Hint. для сортировки массива можно воспользоваться ЛЮБЫМ спобом сортировки - например, пузырьком/простыми обменами...
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Задали задачу.а тему не объяснили.даже представления не имею как это делать.Создать и упорядочить массив по среднему баллу. natik3 Помощь студентам 5 18.04.2012 23:54
упорядочить массив С++ Arrioh Помощь студентам 5 04.04.2012 19:53
Сформировать массив: элемент B[K] равен среднему арифметическому элементов массива A с номерами от 1 до K Pomogite_pls Общие вопросы C/C++ 5 28.02.2012 04:11
Упорядочить массив по невозрастанию! Cyber Помощь студентам 2 23.09.2010 09:31
Упорядочить массив в порядке возрастания и напечатать входной и исходный массив. TheVenny Помощь студентам 3 26.11.2008 15:06