Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 17.04.2011, 16:59
phasha phasha вне форума
Прохожий
 
Регистрация: 16.04.2011
Сообщения: 13
Репутация: 10
По умолчанию ошибка при записи в файл (delphi) (console application)

Код:
program sozdat_file_agenstvo;

{$APPTYPE CONSOLE}

uses
  SysUtils;
type  ms=array[1..20] of integer;
type  ms2=array[1..31] of integer;
type  ms3=array[1..12] of integer;
type  ms4=array[1990..2011] of integer;
type agent=record
     kk:byte;
     et:ms;
     pl:real;
     dt:record
     den:ms2;
     mes:ms3;
     god:ms4;
     end;end;
type kvart=file of agent;
var i,n:integer; f:kvart; k:agent;
begin
  WriteLn('kol-vo kvartir: ');
  Readln(n);
  Assign(f, 'agenstvo.ddt');
  Rewrite(f);
  for i:=1 to N do begin
    Writeln('opishi kvartiru ¹ ',i);
    write('komnati: ');
    Readln(k.kk);
    Write(f,k.kk);
    write('etag: ');
    Readln(k.et);
    Write(f,k.et);
    write('ploschad: ');
    Readln(k.pl);
    Write(f,k.pl);
    write('den registr: ');
    Readln(k.dt.den);
    Write(f,k.dt.den);
    write('den registr: ');
    Readln(k.dt.den);
    Write(f,k.dt.den);
    write('mesac registr: ');
    Readln(k.dt.mes);
    Write(f,k.dt.mes);
    write('god registr: ');
    Readln(k.dt.god);
    Write(f,k.dt.god);
  end;
  Close(f);
end.
что не так?((
Ответить с цитированием
  #2  
Старый 17.04.2011, 17:48
Аватар для AND_REY
AND_REY AND_REY вне форума
Активный
 
Регистрация: 31.03.2009
Адрес: Украина, г.Днепропетровск
Сообщения: 324
Версия Delphi: Delphi7
Репутация: 3877
По умолчанию

Подправил :
Код:
program sozdat_file_agenstvo;

{$APPTYPE CONSOLE}

Type
 Agent = Record
  kk:  Byte;
  et:  Integer;
  pl:  Real;
  den: Integer;
  mes: Integer;
  god: Integer;
 end;

Var
 F: File of Agent;
 K: Agent;
 i, N: Integer;

begin
 Write('kol-vo kvartir: ');
 Readln(N);
 Assign(F, 'C:\agenstvo.ddt');
 Rewrite(F);
 For i:= 1 To N Do
  begin
   Writeln('opishi kvartiru ? ', i);
   Write('komnati: ');
   Readln(K.kk);
   Write('etag: ');
   Readln(K.et);
   Write('ploschad: ');
   Readln(K.pl);
   Write('den registr: ');
   Readln(K.den);
   Write('mesac registr: ');
   Readln(K.mes);
   Write('god registr: ');
   Readln(K.god);
   Write(F, K);
  end;
 CloseFile(F);
end.

Чтение:
Код:
program sozdat_file_agenstvo2;

{$APPTYPE CONSOLE}

Uses
 SysUtils;

Type
 Agent = Record
  kk:  Byte;
  et:  Integer;
  pl:  Real;
  den: Integer;
  mes: Integer;
  god: Integer;
 end;

Var
 F: File of Agent;
 K: Agent;
 i: Integer = 0;

begin
 Assign(F, 'C:\agenstvo.ddt');
 Reset(F);
 While Not Eof(F) Do
  begin
   Inc(i);
   Read(F, K);
   Writeln('                     kvartira: ' + IntToStr(i));
   Writeln('komnati: ' + IntToStr(K.kk));
   Writeln('etag: ' + IntToStr(K.et));
   Writeln('ploschad: '+ FloatToStr(K.pl));
   Writeln('den registr: ' + IntToStr(K.den));
   Writeln('mesac registr: ' + IntToStr(K.mes));
   Writeln('god registr: ' + IntToStr(K.god));
  end;
 Readln;
 CloseFile(F);
end.
__________________
If end Then begin;

Последний раз редактировалось AND_REY, 17.04.2011 в 18:00.
Ответить с цитированием
  #3  
Старый 17.04.2011, 17:49
phasha phasha вне форума
Прохожий
 
Регистрация: 16.04.2011
Сообщения: 13
Репутация: 10
По умолчанию

ну я попробую пока сам написать))спасибо!))
Ответить с цитированием
  #4  
Старый 17.04.2011, 18:01
Аватар для AND_REY
AND_REY AND_REY вне форума
Активный
 
Регистрация: 31.03.2009
Адрес: Украина, г.Днепропетровск
Сообщения: 324
Версия Delphi: Delphi7
Репутация: 3877
По умолчанию

Написал выше код.
__________________
If end Then begin;
Ответить с цитированием
  #5  
Старый 17.04.2011, 18:06
phasha phasha вне форума
Прохожий
 
Регистрация: 16.04.2011
Сообщения: 13
Репутация: 10
По умолчанию

ну у меня похожее что то...думаю у вас правильней=)
Ответить с цитированием
  #6  
Старый 17.04.2011, 22:18
phasha phasha вне форума
Прохожий
 
Регистрация: 16.04.2011
Сообщения: 13
Репутация: 10
По умолчанию

Код:
program uznat_3samih_nedorogih;

{$APPTYPE CONSOLE}

uses
  SysUtils;

type agent=record
     kk:byte;
     et:integer;
     pl:real;
     cena:real;
     dt:record
     den:integer;
     mes:integer;
     god:integer;
     end;end;
type kvart=file of agent;
var i,n:integer; f:kvart; k:agent; min1:real;
begin   i:=0;
 assign(f,'agenstvo.ddt');
 reset(f);   min1:=1000000000;
 While Not Eof(F) Do
  begin
   Inc(i);
   Read(F, K);
    if k.cena<=min1 then begin min1:=k.cena;
   Writeln('kvartira: ', i);
   Writeln('komnati: ', K.kk);
   Writeln('etag: ', K.et);
   Writeln('ploschad: ',K.pl:3:0,' kv. metrov');
   Writeln('data reg.: ', K.dt.den,'.',K.dt.mes,'.',K.dt.god,'g.');
   writeln('cena: ',min1:8:2,' rubley');
   writeln('----------------------------');  end;

  end;
 readln;
  Close(f);

end.
вот вывод самой дешевой квартиры или нескольких если их минимальные цены одинаковы...а как вывести квартиры по 3м самым дешевым ценам?((

Последний раз редактировалось phasha, 17.04.2011 в 23:41.
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

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

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 02:48.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025