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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 15.04.2009, 21:32   #1
Dem6
Пользователь
 
Регистрация: 07.04.2009
Сообщений: 24
Стрелка Про фирму

Вот такое мне задали:
Разработка программного модуля для вычисления суммы прибылей и убытков фирмы в течение десяти лет, выведения баланса.
А вот как я это реализовал:
Код:
program kyrsova;
uses crt;
type Firma_rec=record
     name:string[20];
     form:string[10];
     god:integer;
     poc:array[1..10] of integer;
     end;
var
   firma_f  :file of Firma_rec;
   Firma    :firma_rec;
   ch       :CHAR;
   z        :integer;
  summ,t      :integer;
{--------------------------Продедуры-}
procedure creat_file_firma;
begin
 {$I-}
  assign(firma_f,'firma.txt');
  reset(firma_f);
  if Ioresult<>0 then
                     begin
                      rewrite(firma_f);
                      if Ioresult<>0 then
                       write('Ошибка!!!');
                     end;
 {$I+}
end;
{------------------------------------}
procedure vvod;
begin
rewrite(firma_f);
 writeln('Введите информацию о форме');
 with firma do
  begin
   write('Название фирмы:'); readln(name);
   writeln('Форма собствености: ');
   writeln('1 - Частная');
   writeln('2 - Государственная');
   writeln('3 - Коллективная');
   ch:=readkey;
   case ch of
        '1':form:='Частаная';
        '2':form:='Государственая';
        '3':form:='Колективная'
   end;
   end;
   write(firma_f,firma);
   z:=0;
   repeat
   with firma do begin
   inc(z);
   writeln('| Год |','| Показатель ');
   write(  '|',z,'|');readln(poc[z]);
   poc[z]:=t;
   summ:=t+summ;
   write(firma_f,firma);
   end;
   until (z=10);
   writeln(summ);
 close(firma_f);
end;
{------------------------------------}
procedure vuvod;
begin
 reset(firma_f);
 summ:=0;
 while not eof(firma_f) do begin
 read(firma_f,firma);
 writeln(firma.name,' | ',firma.form,'|',firma.poc[z]);
  end;
  close(firma_f);
 end;
{------------------------------------}
begin
clrscr;
creat_file_firma;
vvod;
vuvod;
readkey;
end.
Для начала мне нужно что бы все записывало в файл.
Но вот тут загвоздка, у меня почему-то не записывает переменную firma.poc[z] (это количество денег которые заработала фирма за одни год ), в дальнейшем не эта переменная понадобится что бы находить, минимум и максимум, а также общее количество.
Буду очень благодарен если поможете решить эту , не легкую проблему для меня.
Dem6 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Про кодировку... Lich Работа с сетью в Delphi 5 29.12.2008 10:32
Вопрос наверное про функции, а так точно даже не знаю про что. (Вопрос начинющего #6) Albert2008 Общие вопросы Delphi 4 21.08.2008 15:33
Про Mp3!!!?? Fellics{новичок} Помощь студентам 3 21.04.2008 12:46
У меня вопрос про базы данных,а точнее про таблицы!!! Alexij Общие вопросы Delphi 1 13.04.2008 23:24