webForumDet fria alternativet

Bokstavskombinationer

5 svar · 246 visningar · startad av Patrick Bateman

Patrick BatemanMedlem sedan dec. 200019 inlägg
#1

Halloj!

Är det någon som kan göra ett script motsvarande som visar alla bokstavskombinationer man kan få av bokstäverna i ett ord!? T.ex om man vill se vilka ord man kan få ur exempelvis "teebra" (>arbete mm), endast bokstavskombinationer som innehåller alla bokstäver behöver visas. Om man kunde ha ett formulär där man skriver i ordet och klickar på "lös" och bokstavskombinationerna som fås sedan visas på nåt bra sätt!?

Tack på förhand!!

emissionMedlem sedan dec. 19996 721 inlägg
#2

Välkommen!

Det är inte så svårt att räkna ut dessa (permutationer) med en rekursiv funktion, men tänk på att det blir en sjuhelsikes massa kombinationer. Ordet "teebra" ger ju 6*5*4*3*2*1=720 kombinationer.

sub charperm(remainder,accum)
	'gunnar liljas, 2000
	if len(remainder)=0 then
		response.write accum & "<BR>"
	else
		for i=1 to len(remainder)
			charperm left(remainder,i-1) & mid(remainder,i+1),accum & mid(remainder,i,1)
		next
	end if
end sub

charperm "teebra",""
Patrick BatemanMedlem sedan dec. 200019 inlägg
#3

Tackar tackar :e

Men...

Jag vill inte att den skall visa kombinationer liknande aa, ee, kk, ii osv. Alltså sådana som inte finns i ord.

Är det för svårt för dig emission ;)

Patrick BatemanMedlem sedan dec. 200019 inlägg
#4

Jag har testat lite själv...

<%

If Request.QueryString ("visa") = "resultat" Then %>

<a href="default.asp">Sök på nytt ord</a><br><br>

<%

Dim Uteslut(1), MittOrd

Uteslut(0) = "aa"
Uteslut(1) = "bb"

MittOrd = accum

sub charperm(remainder,accum)

if len(remainder)=0 then

	For Each Item In Uteslut

		If Instr(MittOrd, Item) Then

			Response.Write ""
	
		Else

			Response.Write accum & "<br>"

		End If

	Next

else

	for i=1 to len(remainder)

		charperm left(remainder,i-1) & mid(remainder,i+1),accum & mid(remainder,i,1)

	next

end if

end sub 

charperm "" & Request.Form("ordet") & "","" %>

<% Else %>

<form method="post" action="default.asp?visa=resultat" name="jlh">
<input type="text" size="20" name="ordet"> &nbsp; <input type="submit" value="OK!">
</form>

<% End If %>

Jag vill att man i "formet" skall skriva in "abba" och sedan skall ditt script skippa alla kombinationer som innehåller aa, bb (enl. min array).

Men den vill inte riktigt funka för mig :(

Några bra förslag?

emissionMedlem sedan dec. 19996 721 inlägg
#5
<%
If Request.QueryString ("visa") = "resultat" Then %>

   <a href="default.asp">Sök på nytt ord</a><br><br>

<%

  

  charperm Request.Form("ordet"),"" 

Else %>

<form method="post" action="default.asp?visa=resultat" name="jlh">
<input type="text" size="20" name="ordet">   <input type="submit" value="OK!">
</form>

<% End If

sub charperm(remainder,accum)
   Dim Uteslut(1),blnFound
   Uteslut(0) = "aa"
   Uteslut(1) = "bb" 
   blnFound=false

   if len(remainder)=0 then

      For Each Item In Uteslut

         If Instr(MittOrd, Item) Then
            blnFound=True
            Exit For
         End If
      Next

      If Not blnFound Then Response.Write accum & "<br>"

   else

      for i=1 to len(remainder)

         charperm left(remainder,i-1) & mid(remainder,i+1),accum & mid(remainder,i,1)

      next

   end if

end sub 
%>
costodiaMedlem sedan aug. 2000864 inlägg
#6

Tack emission,
du är bäst http://www.costodia.com/bokstav.asp

och åter god jul och hoppas du får en riktig trevlig jul.

------------------
Mvh Martin Persson
www.Costodia.com

127 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
123 ms — hämta tråd, inlägg och bilagor (db)