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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 28.04.2014, 20:20   #1
zhoric
 
Регистрация: 30.03.2014
Сообщений: 7
По умолчанию записи

помогите, как сделать так, чтобы при выборе 4 пункта меню программа выполняла условие: Задача: напечатать сведения обо всех деталях, изготовленных указанным рабочим с под-счетом стоимости работ.
что-то у меня совсем не получается вылетает программа.
Код:
Program T7_10;
uses crt;
type 
    zakaz = record            {Запись для описания параметров заказа}
     namedetali: string[150]; {название детали}
     material: string[150];   {материал}
     razmer:integer;        {размеры}
     ves: integer;           {вес}
     stoimost: integer;   {стоимость}
     kolichestvo: integer; {количество}
     fiorabochego: string[150]; {фио рабочего}
     
  end;    
 
   var
     ll:array [1..150] of zakaz;  {Массив записей}
     i,n:integer;
     operation: integer;
      ispravitel,k:string;
      zap:integer;
     
      
      list: file of zakaz;           {Типизированный файл}
    
  label 11;
      begin
         begin
           clrscr;
             operation:= 0;
             while operation <> 5 do begin
           11: writeln('Введите номер операции для её выполнения!');          
              writeln('Меню: ');
              writeln('1.Ввод данных.                   4.Обработка данных.');
              writeln('2.Корректировка данных.     5.Завершение программы.');
              writeln('3.Печать данных.');
              write('Операция № '); readln(operation);
    
               case operation of
 
               1:
                  Begin 
                    clrscr;
                      Writeln('Введите кол-во записей, которые хотите создать:');
                      readln(n);
                      assign (list, 'praislist.doc');
                      rewrite (list);
                       for i:=1 to n do
                          begin
                            writeln('название детали:');
                             readln(ll[i].namedetali);
                              write (list,ll[i]);
                             writeln('материал:');
                              readln(ll[i].material);
                               write (list,ll[i]);
                             writeln('размеры:');
                             
                              readln(ll[i].razmer);
                                write (list,ll[i]);
                             writeln('вес:');
                               readln(ll[i].ves);
                                write (list,ll[i]);
                             writeln('стоимость:');
                              readln(ll[i].stoimost);
                               write (list,ll[i]);
                             writeln('количество:');
                              readln(ll[i].kolichestvo);
                               write (list,ll[i]);
                             writeln('ФИО рабочего, изготовляющего детали:');
                              readln(ll[i].fiorabochego);
                               write (list,ll[i]);
                          end;
               
    
     3:  begin
    assign(list,'D:\praislist.doc');
    reset(list);
 
    while not EOF (list) do begin
    for i:=1 to n do
    begin
        read (list,ll[i]);
        writeln (ll[i]);
    end;    
    end;
 
    close (list);
 
readln
end;
   4:  begin
      clrscr;
       writeln('введите фамилию рабочего');
   readln(n);
     for i:=1 to n do  
     begin
       if ll[i].fiorabochego=k
       then    {условие сведения обо всех деталях, изготовленных указанным рабочим с подсчетом стоимости работ.}
                                                          
                                                                    
           writeln ('название детали*- : ', ll[i].namedetali); {вывод на экран всех деталях, выполненых данным мастером}
           writeln ('материал***:', ll[i].material);
           writeln ('вес - :', ll[i].ves);
           writeln ('стоимость - :', ll[i].stoimost);
           writeln ('колличество***:', ll[i].kolichestvo);
           
       end;
          clrscr; 
       end;
   

End.

Последний раз редактировалось zhoric; 28.04.2014 в 20:22.
zhoric вне форума Ответить с цитированием
Старый 28.04.2014, 20:45   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

1) какой у Вас Паскаль?
2) запакуйте файл praislist.doc с внесёнными данными и выложите архив на форум (ибо лень вбивать)...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 28.04.2014, 20:45   #3
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,601
По умолчанию

она не то что вылетает, она и не компилируется. правильно распределите begin end
writeln (ll[i]); // так нельзя выводить, нужно выводить, указывая поле записи, например
writeln (ll[i].ves)

Последний раз редактировалось ZX Spectrum-128; 28.04.2014 в 20:50.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 28.04.2014, 20:57   #4
zhoric
 
Регистрация: 30.03.2014
Сообщений: 7
По умолчанию

PascalABC;
здесь полностью программа
Вложения
Тип файла: zip 6.zip (1.8 Кб, 9 просмотров)
zhoric вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Машина Тьюринга: Постройте функциональную схему машины, реализующей переход от десятичной записи числа n к десятичной записи (n-1) Елешечка Помощь студентам 0 02.04.2014 21:43
Добавление записи из одного DBGrid в другой DBGrid c помощью кнопки, а также удаление записи Evgen7 БД в Delphi 20 16.02.2014 17:05
Как обновить последние записи за определенный срок не обновляя не законченные записи? SotGEGDS SQL, базы данных 3 11.06.2013 14:39
Удалить записи из таблицы, если дата в записи старше 30 дней Aleksandr БД в Delphi 10 28.03.2013 21:33
Оцените математической формулой, насколько больше цифр в двоичной записи большого числа, чем в его десятичной записи. Анюта.Хом Помощь студентам 1 02.12.2011 23:13