Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 05.12.2011, 22:33   #1 (permalink)
Max 20
Новичок
 
Регистрация: 06.11.2011
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
Unhappy Паскаль, файлы

Помогите пожалуйста с последней лабораторной. Следующее условие:вывести на экран студентов получающих стипендию со средним баллом выше 4 в виде таблицы:порядковый номер, ФИО, дата рождения, курс, год поступления, и оценки на последней сессии (4 предмета). A дальше эту информацию необходимо записать во внешний файл, вывод исходных данных из файла, добавление данных в файл. Может кто-то сумеет написать код, буду очень благодарен.
Max 20 вне форума   Ответить с цитированием

Старый 05.12.2011, 22:33
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Участники форума ранее решали похожую проблему

Паскаль, типизированные файлы, помогите доделать
Турбо Паскаль или Фри Паскаль. Задание по теме Типизированный файл
Файлы в паскаль
Паскаль, текстовые файлы

Старый 06.12.2011, 00:59   #2 (permalink)
Max 20
Новичок
 
Регистрация: 06.11.2011
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Почему-то все молчааааат.....
Max 20 вне форума   Ответить с цитированием
Старый 06.12.2011, 09:52   #3 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от Max 20 Посмотреть сообщение
Почему-то все молчааааат.....
Знаете... у нас тут такие оригиналы, включая меня... Вот ведь незадача - ночью накануне рабочего дня предпочитают, как писал Дж.К.Джером, "тратить время на скотский сон" вместо того, чтобы провести ночное время с пользой для нерадивых студентов. Что тут скажешь - паразиты да и только.
Теперь по сути.
Мы уже разбирали Вашу задачу здесь:
Паскаль. Записи
Тогда осталось выяснить, что не нравится Вашему идиотскому Паскалю АВС и довести программу до полного ума (естественно, на Турбо она была надлежащим образом оттестирована и работает безупречно). Однако Вы перестали отвечать в той теме и задачу забросили. Теперь выложили как бы заново. Предпочитаете воспользоваться услугами другого программиста-консультанта? Я не устраиваю? Пожалуйста, с моей стороны - никаких возражений. Дерзайте, ждите.
И всё-таки я предлагаю такой путь: довести программу из старой темы до ума, чтобы она шла под вашим... этим... ну, в общем, АВС, а дальше вставить файловый ввод-вывод - пара пустых.
Так что решать Вам.
Vladimir_S вне форума   Ответить с цитированием
Старый 06.12.2011, 21:35   #4 (permalink)
Max 20
Новичок
 
Регистрация: 06.11.2011
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Уважаемый Vladimir_S, я не в коем случае не хотел как-то Вас задеть, да, код который Вы мне написали не шел в той версии Паскаль АВС, но прекрасно работает в обычной версии Паскаля и в другой версии АВС. Спасибо, что Вы тогда потратили время и прислали мне его (на значек "добавить отзыв для Vladimir_S я не забыл нажать"). Просто не отписался. А написал по новой, потому что как оказалось та задача связана с последней, где нужно было все соединить с файлами, чего я и не умею. Вот и вся причина, а не потому что ваши БЕСПЛАТНЫЕ услуги меня не устраивают. Прошу еще раз меня извинить.
Max 20 вне форума   Ответить с цитированием
Старый 07.12.2011, 11:50   #5 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Ладно-ладно, не суть важно.
Например, так (имя и расположение файла, конечно, можете подставить свои):
Код:
uses crt;
var
 f:Text;
 Action,Inp_Type,Out_Type:Byte;
 N:Byte;
 FIO:string[25];
 Birth_Date:string[10];
 Course:Byte;
 Year:word;
 Marks:Array[1..3] of Byte;
 Mmark:Real;

Procedure Inp_Date;
var i:Byte;
begin
 writeln('Vvodite dannie o studentax:');
 Repeat
  Inc(N);
  write(f,N:2,' ');
  write('FIO: ');
  readln(FIO);
  write(f,FIO);
  for i:=Length(FIO)+1 to 25 do write(f,' ');
  write('Birth Date (dd.mm.yyyy): ');
  readln(Birth_Date);
  write(f,Birth_Date);
  write('Course: ');
  readln(Course);
  write(f,Course:3);
  write('Year of entry: ');
  readln(Year);
  write(f,Year:5);
  Mmark:=0;
  for i:=1 to 3 do
   begin
    write('Mark ',i,' = ');
    readln(Marks[i]);
    write(f,Marks[i]:4);
    Mmark:=Mmark+Marks[i]/3;
   end;
  writeln(f,Mmark:7:2);
  clrscr;
  writeln ('ENTER-continue, ESC-quit');
 Until readkey=#27;
end;

Procedure Out_Date(OT:Byte);
var i:byte; mmrk:real; C:Char;
begin
 if OT=1 then mmrk:=0 else mmrk:=4;
 Repeat
  Read(f,N,C,FIO,Birth_Date,Course,Year);
  for i:=1 to 3 do read(f,Marks[i]);
  Readln(f,Mmark);
  If Mmark>mmrk then
   begin
    write(N:2,' '+FIO);
    for i:=Length(FIO)+1 to 25 do write(' ');
    write(Birth_Date);
    write(Course:3);
    write(Year:5);
    for i:=1 to 3 do
     write(Marks[i]:4);
    writeln(Mmark:7:2);
   end;
 Until EoF(f);
end;

BEGIN
 clrscr;
 Assign(f,'D:\data');
 REPEAT
  Writeln('Vyberite dejstvie:');
  Writeln('                 1 - Vvod dannyh');
  Writeln('                 2 - Vyvod rezultata');
  Writeln('                 3 - Vykhod iz programmy');
  Readln(Action);
  If Action=1 then
   begin
    Writeln('Variant vvoda:');
    Writeln('             1 - Novyi spisok');
    Writeln('             2 - Prodoljit spisok');
    Readln(Inp_Type);
    if Inp_Type=1 then
     begin
      Rewrite(f);
      N:=0;
     end
    else
     begin
      Reset(f);
      repeat
       Readln(f,N);
      until EoF(f);
      Close(f);
      Append(f);
     end;
    Inp_Date;
    Close(f);
   end else
  If Action=2 then
   begin
    Reset(f);
    Writeln('Variant vyvoda:');
    Writeln('              1 - Vse studenty');
    Writeln('              2 - Polychayushchie stipendiyu');
    Readln(Out_Type);
    Out_Date(Out_Type);
    Close(f);
   end;
 UNTIL Action=3;

END.
Vladimir_S вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Старый 07.12.2011, 19:55   #6 (permalink)
Max 20
Новичок
 
Регистрация: 06.11.2011
Сообщений: 8
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Спасибо за понимание и ОГРОМНОЕ спасибо за код!
Max 20 вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 06:59.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.