AGB  ·  Datenschutz  ·  Impressum  







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

Gleiche Buchstaben?

Ein Thema von deusmac · begonnen am 4. Dez 2003 · letzter Beitrag vom 11. Dez 2003
Antwort Antwort
Benutzerbild von deusmac
deusmac

Registriert seit: 29. Aug 2003
Ort: Berlin
50 Beiträge
 
Delphi 7 Personal
 
#1

Gleiche Buchstaben?

  Alt 4. Dez 2003, 17:20
Ich würde gerne Überprüfen ob inzwei Zeichenketten jeweils die gleichen buchstaben sind. Mein Ansatz war die eine Zeichenkette Zeichen für Zeichen in ein Array zu packen und bei der anderen einfach bei jedem einzelnen Zeichen zu schauen obs im array vorkommt. Bei dieser Methode kann allerdings in der einen Zeichenkette ein Zeichen doppelt vorkommen und der Algorithmus bemerkt das nicht. Kann man das irgendwie einfacher und ohne Probleme lösen?
Thx für antworten

Frührer dachte man: Ich denke also bin Ich. Heute weiß man, es geht auch so.
Dieter Nuhr
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Gleiche Buchstaben?

  Alt 4. Dez 2003, 17:29
Kuck dir mal die Funktion pos an. Macht das eventuell etwas leichter.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Benutzerbild von deusmac
deusmac

Registriert seit: 29. Aug 2003
Ort: Berlin
50 Beiträge
 
Delphi 7 Personal
 
#3

Re: Gleiche Buchstaben?

  Alt 4. Dez 2003, 17:35
Was macht pos wenn das Zeichen mehrmals vorkommt? Einfach nur den ersten Fundort angeben?
Thx für antworten

Frührer dachte man: Ich denke also bin Ich. Heute weiß man, es geht auch so.
Dieter Nuhr
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Gleiche Buchstaben?

  Alt 4. Dez 2003, 17:39
Zitat von deusmac:
Was macht pos wenn das Zeichen mehrmals vorkommt? Einfach nur den ersten Fundort angeben?
Was steht in der Hilfe?

Desweiteren ist ab manchen Delphi Versionen noch posex verfügbar.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Alter Mann

Registriert seit: 15. Nov 2003
Ort: Berlin
934 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#5

Re: Gleiche Buchstaben?

  Alt 4. Dez 2003, 17:43
Besser wäre es in diesem Fall nicht mit Strings zu arbeiten, sonder mit pChar. Die Routinen für die
Nullterminierten Zeicheketten geben dort mehr her. z.B: StrLScan, StrRScan usw.
  Mit Zitat antworten Zitat
Kamil

Registriert seit: 16. Aug 2002
178 Beiträge
 
#6

Re: Gleiche Buchstaben?

  Alt 4. Dez 2003, 19:41
Ich würd's so machen:
Delphi-Quellcode:
function GleicheBuchstaben(s, t: string): boolean;
var
  a, b: array of integer;
  i: integer;
begin
  result:=false;
  if length(s)<>length(t) then
    exit;
  SetLength(a, 256);
  SetLength(b, 256);
  fillchar(a[0], 256*sizeof(integer), 0);
  fillchar(b[0], 256*sizeof(integer), 0);
  for i:=1 to length(s) do
  begin
    inc(a[ord(s[i])]);
    inc(b[ord(t[i])]);
  end;
  result:=CompareMem(@a[0], @b[0], 256*sizeof(integer));
  SetLength(a, 0);
  SetLength(b, 0);
end;
edit: kleinen Fehler korrigiert
  Mit Zitat antworten Zitat
Brüggendiek

Registriert seit: 13. Dez 2002
Ort: Dortmund
275 Beiträge
 
Delphi 5 Standard
 
#7

Re: Gleiche Buchstaben?

  Alt 5. Dez 2003, 00:17
Hallo!

Leider verstehe ich die Aufgabenstellung nicht ganz!

Soll z.B. bei
Code:
abcdef
bfffdddaec
herauskommen, daß die Bedingung erfüllt ist (beide Strings enthalten alle Buchstaben von "a" bis "f" mindestens einmal)?

Dann kann man das mit Set of Char erledigen - jeden String in ein Set wandeln und dann vergleichen!

Gruß

Dietmar Brüggendiek
Dietmar Brüggendiek
  Mit Zitat antworten Zitat
Benutzerbild von deusmac
deusmac

Registriert seit: 29. Aug 2003
Ort: Berlin
50 Beiträge
 
Delphi 7 Personal
 
#8

Re: Gleiche Buchstaben?

  Alt 11. Dez 2003, 17:11
Die Bedingung soll nur erfüllt sein wenn aaabbbccc und aaabbbccc da stehn. bei abc aaabbbccc soll sie nicht erfült sein.
Thx für antworten

Frührer dachte man: Ich denke also bin Ich. Heute weiß man, es geht auch so.
Dieter Nuhr
  Mit Zitat antworten Zitat
Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#9

Re: Gleiche Buchstaben?

  Alt 11. Dez 2003, 17:19
ja wie? die Buchstaben sollen die gleichen sein, und die Reihenfolgen auch und die Anzahl auch? Dann schau dir mal "=" an.

An sonsten sag mal genauer, was su willst! Das wird dann auf irgendwas mit "pos" rauslaufen, nehme ich an!
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  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 23:44 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