AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Die binäre Suche

Ein Thema von DelfinMann · begonnen am 27. Apr 2008 · letzter Beitrag vom 27. Apr 2008
Antwort Antwort
DelfinMann

Registriert seit: 26. Apr 2008
Ort: Hamburg
4 Beiträge
 
Delphi 7 Personal
 
#1

Die binäre Suche

  Alt 27. Apr 2008, 10:51
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.
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Die Binär Suche

  Alt 27. Apr 2008, 10:53
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

ele[mitte] kannst du doch einfach

mitte schreiben.

Grüße
  Mit Zitat antworten Zitat
DelfinMann

Registriert seit: 26. Apr 2008
Ort: Hamburg
4 Beiträge
 
Delphi 7 Personal
 
#3

Re: Die Binär Suche

  Alt 27. Apr 2008, 11:00
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

ele[mitte] kannst du doch einfach

mitte schreiben.
Ich möchte unbedingt ein Array verweden; aber Du hast recht, in diesem Falle wäre es nicht von nöten.
  Mit Zitat antworten Zitat
Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Die binäre Suche

  Alt 27. Apr 2008, 11:24
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.
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:20 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