Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Die binäre Suche (https://www.delphipraxis.net/112786-die-binaere-suche.html)

DelfinMann 27. Apr 2008 09:51


Die binäre Suche
 
Moin moin!

Möchte jemand sich diesen Delphi-Code anschauen und etwas dazu sagen, also z.B. auf Schwächen oder Lücken hinweisen.

Danke!

Delphi-Quellcode:
program BinaerSuche;

{$APPTYPE CONSOLE}

uses
  SysUtils;

const
  ele : array[1..20] of integer = (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20);

var
  u, o, ergebnis, offen, gesucht, mitte : integer;

begin
  u := 0; o := 20; offen := 0; mitte := 0;
  ergebnis := offen;

  write('Geben Sie die gesuchte Zahl ein: ');
  readln(gesucht);

  while ergebnis = offen do begin

    if u > o then
      begin ergebnis := -1; write('Die gesuchte Zahl ist nicht vorhaden!') end
        else mitte := ( u + o ) div 2;

      if ele[mitte] = gesucht then
        begin ergebnis := gesucht; write('Die gesuchte Zahl (', ergebnis ,') ist vorhaden.') end
          else if ele[mitte] > gesucht then
            o := mitte - 1 else
              u := mitte + 1;
  end;


readln;
end.

Matze 27. Apr 2008 09:53

Re: Die Binär Suche
 
Hallo,

was mir auf den ersten Blick auffällt:

Wieso nutzt du dieses Array:

Delphi-Quellcode:
const
  ele : array[1..20] of integer = (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20);
Anstelle von

Delphi-Quellcode:
ele[mitte]
kannst du doch einfach

Delphi-Quellcode:
mitte
schreiben.

Grüße

DelfinMann 27. Apr 2008 10:00

Re: Die Binär Suche
 
Zitat:

Zitat von Matze
Hallo,

was mir auf den ersten Blick auffällt:

Wieso nutzt du dieses Array:

Delphi-Quellcode:
const
  ele : array[1..20] of integer = (1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20);
Anstelle von

Delphi-Quellcode:
ele[mitte]
kannst du doch einfach

Delphi-Quellcode:
mitte
schreiben.

Ich möchte unbedingt ein Array verweden; aber Du hast recht, in diesem Falle wäre es nicht von nöten.

SirThornberry 27. Apr 2008 10:24

Re: Die binäre Suche
 
das einzige was ich derzeit zu bemängeln hätte wäre die Einrückung. Laut Styleguide gehört nur eine Anweisung auf eine Zeile. Wenn die Einrückung stimmt ist es auch leichter den Quelltext zu überblicken und andere dinge zu finden.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:14 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz