IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Записи с файлами
Окран
сообщение 13.05.2004 13:21
Сообщение #1


Гость






Умоляю помочь сделать данную задачу до завтрашнего дня!!!!!Очень прошу!!Сам вышел из больницы 2 дня назад и в первый же день учебы лабараторная по паскалю на котором я был всего на 1-2 лекциях а потом загремел по состоянию здоровья в больницу!!!Пожалуйста!!!!

Код
Полугодовая информация о изданиях по каждому подчиненному имеет следующую структуру:
ФИО - 20 знаков
участок доставки - 2 знака
адрес
кол-во выписанных изданий - 2 знака
список изданий
адрес в свою очередь состоит из следующих компонентов:
                                улица - 20 знаков
                                номер дома - 3 знака
                                номер квартиры - 3 знака
Список изданий состоит из следующих компонентов:
                                название - 20 знаков
                                вид - 1 знак(газета, журнал)
                                месяцы на которые оформлена подписка.
Список изданий представляет собой массив структур, содержащий N элементов из которых заполнены K - количествовыписанных изданий.Если подписчик оформил подписку на более чем N изданий то для него имеется 2 или более записи идущие подряд.Информация о месяцах подписки может быть представлена в виде массива из 12 логических элементов.
А теперь само задание :) : создайте файл о подписных изданиях.                
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
BlackShadow
сообщение 20.05.2004 14:15
Сообщение #2


Гость






Код

Const
 N = 20;

Type
TMonths=Array[0..11] Of Boolean;
TIzdanie=Record
Title:String[20];
Tip:Char;
Months:TMonths
End;
TAddr=Record
Street:String[20];
Home:String[3];
Flat:String[3]
End;
TChel=Record
Name:String[20];
Uchastok:String[2];
Addr:TAddr;
Count:String[2];
Izdaniya:Array[0..N-1] Of TIzdanie
End;

Const
 MonthName:Array[0..11] Of String=('jan','feb','mar','apr','may','jun','jul','aug','sep','oct','nov','dec');


Var
f:File Of TChel;
Name:String;
c:TChel;
 i,j:Integer;
Begin
Write('Enter Name: ');
ReadLn(Name);
Assign(f,'Chels.Txt');
Reset(f);
While Not Eof(f) Do
Begin
  Read(f,c);
  If c.Name=Name Then
  Begin
    Val(c.Count,x,e);
    i:=0;
    While i<x Do
    Begin
      If (i>0) And (i Mod N = 0) Then
        Read(f,c);
      With c.Izdaniya[i Mod N] Do
      Begin
        Write(Title,': ');
        For j:=0 To 11 Do
          If (Monts[j]) Then
            Write(MonthName[j]);
        WriteLn
      End;
      Inc(i)
  End
End;
Close(f)
End.

Вроде так...
Если "вывод на печать" подразумевает принтёр, то добавь в начало Uses Printer; и допиши пару строк:
Код

      With c.Izdaniya[i Mod N] Do
      Begin
        Write(Title,': ');
        Write(Lst,Title,': ');
        For j:=0 To 11 Do
          If (Monts[j]) Then
          Begin
            Write(MonthName[j]);
            Write(Lst,MonthName[j])
          End
        WriteLn;
        WriteLn(Lst)
      End;

Должно работать...
 К началу страницы 
+ Ответить 

Сообщений в этой теме
Окран   Записи с файлами   13.05.2004 13:21
BlackShadow   Const  N = 20; Type  TMonths=Array...   13.05.2004 14:14
Окран   Простите пожалуйста, но у вас целая куча ошибок...   13.05.2004 17:16
BlackShadow   Я с работы писал - там у меня компилятора нет. Ща ...   13.05.2004 17:34
BlackShadow   Const N = 20; Type TMonths=Array[0..1] ...   13.05.2004 18:08
Окран   Храни тебя бог!!!!!!!...   13.05.2004 18:15
Окран   BlackShadow друг выручи меня еще раз пожалуйста...   17.05.2004 13:20
BlackShadow   Аллах акбар! Я понял так: надо перелопатить фа...   17.05.2004 14:34
Окран   BlackShadow ругается на переменную N-ты ее вроде н...   17.05.2004 17:04
BlackShadow   Забыл. Ну допиши в начале Const  N = 20; Т...   17.05.2004 19:40
Окран   BlackShadow я так и сделал!!Спасиба!...   19.05.2004 15:29
BlackShadow   Ндя... Начнём 1). Усвой сразу и навсегда, если ещё...   19.05.2004 16:11
APAL   А что, препод не знает что это за цикл такой? :...   19.05.2004 16:12
Окран   BlackShadow спасибо друг!!! :) :) :...   20.05.2004 13:35
BlackShadow   Const  N = 20; Type TMonths=Array[0..1...   20.05.2004 14:15
Окран   BlackShadow тебе можно памятник ставить - спасибо...   4.06.2004 13:49
fms   а в чем проблемы с блок схемами то?! ___ и лю...   4.06.2004 22:35
Catty   Как записи там обозначать?А с файлами какие блоки...   4.06.2004 22:58
Окран   Вы очень помогли! :(   6.06.2004 16:01
kile   окран, ты еще недоволен ??   6.06.2004 19:36
Catty   поройся в инете там полно блок-схем!! Или ...   7.06.2004 21:35


 Ответить  Открыть новую тему 
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 17.07.2025 18:57
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"