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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 19.03.2012, 15:40   #1
Olgaandsasha
Пользователь
 
Регистрация: 24.10.2011
Сообщений: 54
По умолчанию Создать файл, содержащий сведения о сотрудниках института.

1. Создать файл, содержащий сведения о сотрудниках института. Структура за-писи: фамилия работающего, название кафедры, год рождения, стаж работы, должность, оклад. Количество записей произвольное.
2. Написать программу, позволяющую получить следующую информацию:
- список сотрудников пенсионного возраста на сегодняшний день с указанием стажа работы;
- средний стаж работы на кафедре X.
помогите пожалуйста. на мысль хоть наталкните, с чего начинать хоть?
Olgaandsasha вне форума Ответить с цитированием
Старый 19.03.2012, 16:05   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

начать нужно с того, что определиться, какой язык программирования Вам нужен.
потом, гуглите на тему структуры, записи и типизированные файлы (ибо это классическая задача на типизированный файл!). И, кстати, поиском по форуму найдёте тьму примеров!

ну а дальше - описывать структуру записи (она в символьном виде уже дана в задании). Дальше проектировать интерфейс программы, рисовать блок-схему (ну, или не рисовать, но хотя бы в уме представлять себе), потом писать код...

вот, для начала, допустим, что у Вас ЯП - Паскаль.
тогда
Код:
type SotrudRecord = record
    fio: string[30];
    kafedra: string[15];
    god_rogd: 1900..2000;
    stag : byte;
    dolgnost : string[15];
    oklad : double;
  end;
....
var 
  sotr : SotrudRecord;
  f: file of SotrudRecord;
...
begin
   Assign(f, 'Sotrud.dat');
   Rewrite(f);
   // ввод данных и запись в файл
    ....
Serge_Bliznykov вне форума Ответить с цитированием
Старый 29.03.2012, 17:51   #3
Olgaandsasha
Пользователь
 
Регистрация: 24.10.2011
Сообщений: 54
По умолчанию

Код:
Program lr7;
type
sotrud=record
god_roz, staz, oklad: integer;
kaf, dolz, famil: string;
end;
var
f: file of sotrud;
x: sotrud;
n, a,kol: integer;
begin
assign(f, 'g:\base.zap');
writeln('nov_sotrud=1, dopisat=2');
readln(a);
if a=1 then rewrite(f)
else
begin
reset(f);
seek(f,filesize(f));
end;
writeln('vvedite kol sotrud');
readln(kol);
for n:=1 to kol do
begin
with x do begin
writeln('vvedite famil:');
readln(famil);
writeln('vvedite kaf:');
readln(kaf);
writeln('vvedite god_roz:');
readln(god_roz);
writeln('vvedite dolz:');
readln(dolz);
writeln('vvedite oklad:');
readln(oklad);
end;
write(f,x);
end;
close(f);
writeln('vvedite famil:');
readln;
reset(f);
while not Eof(F)  do
begin
read(f,x);
end;
close(f);
readln;
end.
а как написать прогу, чтоб инфу о сотрудниках получить?
Olgaandsasha вне форума Ответить с цитированием
Старый 09.04.2012, 16:59   #4
Olgaandsasha
Пользователь
 
Регистрация: 24.10.2011
Сообщений: 54
По умолчанию

пожалуйста помогите
Olgaandsasha вне форума Ответить с цитированием
Старый 10.04.2012, 03:11   #5
BDA
МегаМодератор
СуперМодератор
 
Аватар для BDA
 
Регистрация: 09.11.2010
Сообщений: 7,429
По умолчанию

Код:
Uses CRT, WinDos;

type
  sotrud = record
    god_roz, staz, oklad: integer;
    kaf, dolz, famil: string[250];
  end;

const
  pensvoz=56;

var
  f: file of sotrud;
  x: sotrud;
  n, a, kol,count,s: integer;
  AYear,AMonth,ADay,Dow:word;
  nameofkaf:string;

begin
  assign(f, 'base.zap');
  writeln('nov_sotrud=1, dopisat=2');
  readln(a);
  if a = 1 then rewrite(f)
  else
  begin
    reset(f);
    seek(f, filesize(f));
  end;
  writeln('vvedite kol sotrud');
  readln(kol);
  for n := 1 to kol do
  begin
    writeln(n, ' SOTRUD');
    with x do 
    begin
      writeln('vvedite famil:');
      readln(famil);
      writeln('vvedite kaf:');
      readln(kaf);
      writeln('vvedite god_roz:');
      readln(god_roz);
      writeln('vvedite staz:');
      readln(staz);
      writeln('vvedite dolz:');
      readln(dolz);
      writeln('vvedite oklad:');
      readln(oklad);
    end;
    write(f, x);
  end;
  close(f);
  GetDate(AYear,AMonth,ADay, Dow);
  Writeln('Sotrudniki pensionnogo vozrasta (staz):');
  reset(f);
  while not Eof(F)  do
  begin
    read(f, x);
    if AYear-x.god_roz>=pensvoz then
      writeln(x.famil,' (',x.staz,' let)');
  end;
  close(f);
  writeln('Vvedite nazvanie kafedri:');
  readln(nameofkaf);
  s:=0;
  count:=0;
  reset(f);
  while not Eof(F)  do
  begin
    read(f, x);
    if x.kaf=nameofkaf then
    begin
      s:=s+x.staz;
      inc(count);
    end;
  end;
  close(f);
  if count=0 then
    writeln('Net takoi kafedri')
  else
    writeln('Srednii staz na kagerde ',nameofkaf,': ',s/count:0:3,' let');
  readln;
end.
Пишите язык программирования - это форум программистов, а не экстрасенсов. (<= это подпись )
BDA вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создать типизированный файл catalog.dat, содержащий сведения о книгах Хочу все знать! Помощь студентам 3 17.05.2011 01:01
Создать файл содержащий сведения о телефонах абонентов region23 Помощь студентам 2 30.11.2010 15:18
Создать файл содержащий сведения о том kot i @ Паскаль, Turbo Pascal, PascalABC.NET 0 25.05.2010 17:27
файл, содержащий сведения о сдачи студентами сессии. Каждая запись содержит поля: номер группы, фамилия Babur4iK Помощь студентам 3 18.05.2010 23:11