10.12.2018, 10:42 [+3 UTC]
в нашей команде: 3 202 чел. | участники онлайн: 9 (рекорд: 19)

:: РЕГИСТРАЦИЯ

:: задать вопрос

:: все разделы

:: правила

:: новости

:: участники

:: доска почёта

:: форум

:: блоги

:: поиск

:: статистика

:: наш журнал

:: наши встречи

:: наша галерея

:: отзывы о нас

:: поддержка

:: руководство

Версия системы:
7.56 (09.12.2018)

Общие новости:
01.12.2018, 22:30

Форум:
08.12.2018, 14:26

Последний вопрос:
09.12.2018, 18:57

Последний ответ:
10.12.2018, 10:19

Последняя рассылка:
10.12.2018, 03:45

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
29.11.2009, 13:15 »
D1ver
Премного благодарен за исправления и за ответы на вопросы! [вопрос № 174604, ответ № 257054]
09.10.2010, 17:19 »
scoop
Большое спасибо Вам за подробные объяснения и практические рекомендации, обязательно им последую. Уже сам не раз задумывался о ревизии и профилактике "железа". Очень Вам благодарен за ссылки на программу и учебный материал. [вопрос № 180188, ответ № 263401]
14.12.2010, 04:24 »
Савенков М.В.
Написано хорошо + есть графики + присутствуют рисунки. В общем, так держать smile [вопрос № 181223, ответ № 264752]

РАЗДЕЛ • Pascal / Delphi / Lazarus

Создание программ на языках Pascal, Delphi и Lazarus.

[администратор рассылки: Зенченко Константин Николаевич (Старший модератор)]

Лучшие эксперты в этом разделе

Зенченко Константин Николаевич
Статус: Модератор
Рейтинг: 849
Степанов Иван /REDDS
Статус: 4-й класс
Рейтинг: 27
Асмик Гаряка
Статус: Советник
Рейтинг: 3

Перейти к консультации №:
 

Консультация онлайн # 191710
Раздел: • Pascal / Delphi / Lazarus
Автор вопроса: Natasha_inf (1-й класс)
Отправлена: 09.11.2017, 16:04
Поступило ответов: 1

Здравствуйте, уважаемые эксперты! Прошу вас ответить на следующий вопрос:
Распечатать фамилии тех учеников класса, которые являются хорошистами и отличниками по итогам года. Также указать, насколько их средний балл отличается от среднего балла класса. в Delphi вот на подобии этой задачи:

Код (Pascal) :: выделить код
type school=record

    fio:string[100];

    predmet: string[30];
       stazh: 1..50;
       nagruzka: string [10];

end;

var f:file of school;
    a:school;
    n:byte;
procedure formir;
var i:integer;
  begin
    assignfile(f,'1.dat');
    rewrite(f);
   for I := 1 to n do
     begin
       writeln('введите фамилию');
       readln(a.fio);
        writeln('введите предмет');
         readln (a.predmet);
          writeln('введите стаж работы');
          readln(a.stazh);
           writeln('введите нагрузку учителя');
            readln(a.nagruzka);
          write(f,a);
     end;
         closefile(f);
  end;

procedure vivod;
begin
    assignfile(f,'1.dat');
    reset(f);
    while not eof (f) do
    begin
      read(f,a);
      writeln(a.fio);
       writeln(a.predmet);
        writeln( a.stazh);
          writeln(a.nagruzka);
          
    end;
    closefile(f);
end;

  procedure poisk;
    begin
    assignfile(f,'1.dat');
    reset(f);
       while not eof (f) do
    begin
      read(f,a);
       if (a.predmet='informatika') or (a.predmet='matematika')  then
       writeln(a.fio ,  a.stazh , a.nagruzka )

    end;
    end;

//щсновная программа
begin
writeln('введите кол-во преподавателей');
readln(n);
formir;
vivod;
writeln('стаж и нагрузка Учителя');
poisk;
readln;
end.

Добавлен тег CODE
--------

• Отредактировал: Зенченко Константин Николаевич (Старший модератор)
• Дата редактирования: 13.11.2017, 09:45

Состояние: Консультация закрыта

Здравствуйте, Natasha_inf!

Delphi 6:

Код (Pascal) :: выделить код
program Project;
{$APPTYPE CONSOLE}
uses
  SysUtils;
const
  m=9;
type
  tStudy=record
    name:string[20];
    rating:array[1..m] of integer;
    end;
procedure formir;
  var
    a:file of tStudy;
    b:tStudy;
    i,j,n:integer;
  begin
    write('Enter number:');
    readln(n);
    AssignFile(a,'1.dat');
    Rewrite(a);
    for i:=1 to n do
      begin
        write('Enter name:');
        readln(b.name);
        for j:=1 to m do
          begin
            write('enter rating ',j,':');
            readln(b.rating[j]);
          end;
        write(a,b);
      end;
    CloseFile(a);
  end;
procedure vivod;
  var
    a:file of tStudy;
    b:tStudy;
    j:integer;
  begin
    writeln('Output Data');
    AssignFile(a,'1.dat');
    Reset(a);
    While Not Eof(a)do
      begin
        read(a,b);
        Write(b.name:20,' :');
        for j:=1 to m do
          write(' ',b.rating[j]);
        writeln;
      end;
    CloseFile(a);
  end;
procedure poisk;
  var
    a:file of tStudy;
    b:tStudy;
    c:real;
    i,j,n:integer;
  begin
    writeln('Output Data');
    AssignFile(a,'1.dat');
    Reset(a);
    c:=0;
    n:=0;
    While Not Eof(a)do
      begin
        read(a,b);
        inc(n);
        for j:=1 to m do c:=c+b.rating[j];
      end;
    if n<>0 then c:=c/(m*n);
    writeln('rating class:',c:4:2);
    Reset(a);
    While Not Eof(a)do
      begin
        read(a,b);
        j:=m;
        i:=0;
        while(j>0)and(b.rating[j]>3)do
          begin
            i:=i+b.rating[j];
            dec(j);
          end;
        if(j=0)and((i/m)>=4)then writeln(b.name:20,' :',i/m:4:2,abs(i/m - c):6:2);
      end;
    CloseFile(a);
  end;
begin
  { TODO -oUser -cConsole Main : Insert code here }
  formir;
  vivod;
  poisk;
  readln;
end.


Удачи!


Консультировал: Зенченко Константин Николаевич (Старший модератор)
Дата отправки: 14.11.2017, 13:34

Рейтинг ответа:

+1

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 191710

Зенченко Константин Николаевич
Старший модератор

ID: 31795

# 1

= общий = | 13.11.2017, 17:36 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер
Natasha_inf:

В файле можно хранить по разному:
- имя и все оценки;
- имя и среднюю оценку;
- и ещё куча вариантов.

Уточните, что именно Вам нужно.

=====
Мне безразлично, что Вы думаете о обо мне, но я рад за Вас - Вы начали думать.
smile

 

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.59374 сек.

© 2001-2018, Портал RFPRO.RU, Россия
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.56 от 09.12.2018