Anonymní profil Liborg – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil Liborg – Programujte.comAnonymní profil Liborg – Programujte.com

 

Příspěvky odeslané z IP adresy 89.103.85.–

Liborg
Delphi › Pracovníci podle věku
22. 5. 2013   #176496

Tak jsem se zasekl u seřazení. Nevíte jak na něj?

Prozatím mám:

type
  TZaznam = record
    JMENO: String[20];
    VEK: Integer;
    OSOBNICISLO: Integer;
    PLAT: real;
  end;
  TSoubor = file of TZaznam;
const
  JmenoSoub = 'Prac.dat';
var
  zaznam: TZaznam;
  soubor: TSoubor;
  procteni: Boolean;


  procedure Zobraz;
begin
  form1.edit2.Text:= zaznam.jmeno;
  form1.edit3.Text:= IntToStr(zaznam.vek);
  form1.edit4.Text:= FloatToStr(zaznam.plat);
  form1.edit1.text:=IntToStr(zaznam.osobnicislo);
end;

procedure ZapsatDoSouboru
(var t: TextFile;OsobniCislo:string;JmenoAprijmeni:string;Vek:integer;Plat:real);
begin
writeln(t, '  Osobní číslo........:' ,zaznam.OsobniCislo);
writeln(t, '  Jméno a příjmení....:' ,zaznam.Jmeno);
writeln(t, '  Věk.................:' ,IntToStr(zaznam.Vek));
writeln(t, '  Plat................:' ,FloatToStr(zaznam.Plat));
writeln(t, '  Další záznam');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
begin
  if procteni then closefile(soubor);
{$i-}
  reset(soubor);
{$i+}
  if IOResult <> 0 then
    Showmessage('Soubor neexistuje')
  else begin
    read(soubor, zaznam);
    Zobraz;
    procteni:= True;
    self.button2.Enabled:= True;
  end;
end;
end;

procedure TForm1.Button2Click(Sender: TObject);

begin
  if not procteni then reset(soubor);
  if not eof(soubor) then begin
    read(soubor, zaznam);
    Zobraz;
    procteni:= True;
  end
  else
    ShowMessage('Konec souboru');

end;

procedure TForm1.Button4Click(Sender: TObject);
begin
  self.edit2.Text:='';
  self.edit3.Text:='';
  self.edit1.Text:='';
  self.edit2.SetFocus;
  self.edit4.Text:='';
end;

procedure TForm1.Button5Click(Sender: TObject);
begin
  if procteni then closefile(soubor);
  procteni:= False;
{$i-}
  reset(soubor);
{$i+}
  if IOResult = 0 then
    seek(soubor,filesize(soubor))
  else
    rewrite(soubor);
  zaznam.jmeno:= self.edit2.Text;
  zaznam.vek:= StrToInt(self.edit3.Text);
  zaznam.osobnicislo:= Strtoint(self.edit1.text);
  zaznam.plat:= StrToFloat(self.edit4.Text);
  write(soubor, zaznam);
  CloseFile(soubor);
  self.edit2.Text:= '';
  self.edit3.Text:= '';
  self.edit1.text:= '';
  self.edit2.SetFocus;
  self.edit4.Text:= '';
end;

procedure TForm1.Button8Click(Sender: TObject);
var
t:textfile;
begin

if Savedialog1.Execute then begin
AssignFile(t,Savedialog1.FileName);
Rewrite(t);
ZapsatDOsouboru (t,zaznam.OsobniCislo,zaznam.Jmeno,zaznam.Vek,zaznam.plat);
CloseFile(t);
end else
showmessage('Chyba otevírání souboru pro zápis');
end;
procedure TForm1.Button9Click(Sender: TObject);
begin
close
end;

procedure TForm1.Edit3Exit(Sender: TObject);
begin
  if (StrToInt(self.edit3.Text)<21) or (StrToInt(self.edit3.Text)>60) then begin
    ShowMessage('Chyba ve věku.');
    self.edit3.SetFocus;
  end;

end;


procedure TForm1.FormActivate(Sender: TObject);
begin
  AssignFile(soubor,JmenoSoub);
  procteni:= False;
  self.button2.Enabled:= False;
end;

end.

Liborg
Delphi › Pracovníci podle věku
13. 5. 2013   #176160

Ať přemýšlím sebevíc, nevím, jak začít. Nedoporučil bys mi nějakou literaturu, či internetový zdroj. Který by mi s tím pomohl?

Liborg
Delphi › Pracovníci podle věku
6. 5. 2013   #175868

Ahoj,

ve škole jsem dostal zadání na semestrální práci a potřeboval bych poradit, jak na něj. Vůbec si s ním nevím rady.

"Naplňte vektor pracovníků hodnotami. Každý pracovník má osobní číslo (pole znaků), jméno (pole znaků), věk (celé číslo), mzdu (reálné číslo). Seřaďte záznamy podle věku sestupně a výsledný vektor vytiskněte do souboru.
Vstup: n – počet pracovníků, jejich data
Výstup: Seřazený vektor pracovníků včetně nadpisů sloupců"

Děkuju za jakoukoliv pomoc

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý