13.12.2017, 19:46 [+3 UTC]
в нашей команде: 2 375 чел. | участники онлайн: 13 (рекорд: 21)

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

:: консультации

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

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

:: правила

:: новости

:: участники

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

:: форум

:: блоги

:: поиск

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

:: наш журнал

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

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

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

:: поддержка

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

Версия системы:
7.41 (25.02.2017)

Общие новости:
23.02.2017, 09:51

Форум:
13.12.2017, 19:03

Последний вопрос:
13.12.2017, 17:01

Последний ответ:
13.12.2017, 18:39

Последняя рассылка:
13.12.2017, 18:45

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

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

Наша кнопка:

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

Отзывы о нас:
11.04.2016, 11:36 »
shenae2009
Спасибо большое, очень выручили! [вопрос № 189134, ответ № 273635]
07.10.2009, 11:02 »
Dima1967
Спасибо за ответ, но в ответе № 254990 лучше реализована возможность добавлять новые слова. Эта оценка - поставлена сравнительно с предыдущим ответом. [вопрос № 172887, ответ № 255015]

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

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

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

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

Зенченко Константин Николаевич
Статус: Модератор
Рейтинг: 432
Вадим Исаев ака sir Henry
Статус: Старший модератор
Рейтинг: 41
mklokov
Статус: 6-й класс
Рейтинг: 23

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

Консультация онлайн # 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:

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

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

 

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

Яндекс Rambler's Top100

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

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

© 2001-2017, Портал RFPRO.RU, Россия
Авторское право: ООО "Мастер-Эксперт Про"
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.41 от 25.02.2017
Бесплатные консультации онлайн