Determine if a string has all unique characters: Difference between revisions
Content added Content deleted
(Grouping BASIC dialects) |
(Added various BASIC dialects (BASIC256, Chipmunk Basi and PureBasic)) |
||
Line 776: | Line 776: | ||
=={{header|BASIC}}== |
=={{header|BASIC}}== |
||
==={{header|BASIC256}}=== |
|||
{{trans|FreeBASIC}} |
|||
<syntaxhighlight lang="vb">subroutine CaracteresUnicos (cad$) |
|||
lngt = length(cad$) |
|||
print 'Cadena = "'; cad$; '", longitud = '; lngt |
|||
for i = 1 to lngt |
|||
for j = i + 1 to lngt |
|||
if mid(cad$,i,1) = mid(cad$,j,1) then |
|||
⚫ | |||
return |
|||
end if |
|||
next j |
|||
next i |
|||
⚫ | |||
end subroutine |
|||
call CaracteresUnicos("") |
|||
call CaracteresUnicos(".") |
|||
call CaracteresUnicos("abcABC") |
|||
call CaracteresUnicos("XYZ ZYX") |
|||
⚫ | |||
{{out}} |
|||
<pre>Similar as FreeBASIC entry.</pre> |
|||
==={{header|Chipmunk Basic}}=== |
|||
{{works with|Chipmunk Basic|3.6.4}} |
|||
{{trans|FreeBASIC}} |
|||
<syntaxhighlight lang="qbasic">100 cls |
|||
110 sub caracteresunicos(cad$) |
|||
120 lngt = len(cad$) |
|||
130 print 'Cadena = "';cad$;'" longitud = ';lngt |
|||
140 for i = 1 to lngt |
|||
150 for j = i+1 to lngt |
|||
160 if mid$(cad$,i,1) = mid$(cad$,j,1) then |
|||
⚫ | |||
180 print |
|||
190 exit sub |
|||
200 endif |
|||
210 next j |
|||
220 next i |
|||
⚫ | |||
240 end sub |
|||
250 caracteresunicos("") |
|||
260 caracteresunicos(".") |
|||
270 caracteresunicos("abcABC") |
|||
280 caracteresunicos("XYZ ZYX") |
|||
290 caracteresunicos("1234567890ABCDEFGHIJKLMN0PQRSTUVWXYZ") |
|||
300 end</syntaxhighlight> |
|||
{{out}} |
|||
<pre>Same as FreeBASIC entry.</pre> |
|||
==={{header|FreeBASIC}}=== |
==={{header|FreeBASIC}}=== |
||
<syntaxhighlight lang="freebasic">Sub CaracteresUnicos (cad As String) |
<syntaxhighlight lang="freebasic">Sub CaracteresUnicos (cad As String) |
||
Line 864: | Line 915: | ||
The hex value of "0" is: 0X30 |
The hex value of "0" is: 0X30 |
||
</pre> |
</pre> |
||
==={{header|PureBasic}}=== |
|||
{{trans|FreeBASIC}} |
|||
<syntaxhighlight lang="purebasic">Procedure CaracteresUnicos(cad.s) |
|||
lngt.i = Len(cad) |
|||
PrintN("Cadena = '" + cad + "' longitud = " + Str(lngt)) |
|||
For i.i = 1 To lngt |
|||
For j.i = i + 1 To lngt |
|||
If Mid(cad, i, 1) = Mid(cad, j, 1) |
|||
PrintN(" Primer duplicado en las posiciones " + Str(i) + " y " + Str(j) + ", caracter = '" + Mid(cad, i, 1) + "', valor hex = " + Hex(Asc(Mid(cad, i, 1)))) |
|||
ProcedureReturn |
|||
EndIf |
|||
Next |
|||
Next |
|||
⚫ | |||
EndProcedure |
|||
OpenConsole() |
|||
CaracteresUnicos("") |
|||
CaracteresUnicos(".") |
|||
CaracteresUnicos("abcABC") |
|||
CaracteresUnicos("XYZ ZYX") |
|||
CaracteresUnicos("1234567890ABCDEFGHIJKLMN0PQRSTUVWXYZ") |
|||
PrintN(#CRLF$ + "--- Press ENTER to exit ---"): Input() |
|||
CloseConsole()</syntaxhighlight> |
|||
{{out}} |
|||
<pre>Similar as FreeBASIC entry.</pre> |
|||
==={{header|Visual Basic .NET}}=== |
==={{header|Visual Basic .NET}}=== |
||
Line 886: | Line 964: | ||
==={{header|Yabasic}}=== |
==={{header|Yabasic}}=== |
||
{{trans|FreeBASIC}} |
{{trans|FreeBASIC}} |
||
<syntaxhighlight lang=" |
<syntaxhighlight lang="vb">sub caracteresunicos (cad$) |
||
local lngt |
local lngt, i, j |
||
lngt = len(cad$) |
lngt = len(cad$) |
||
print "cadena = \"", cad$, "\", longitud = ", lngt |
print "cadena = \"", cad$, "\", longitud = ", lngt |
||
Line 908: | Line 987: | ||
caracteresunicos ("1234567890ABCDEFGHIJKLMN0PQRSTUVWXYZ")</syntaxhighlight> |
caracteresunicos ("1234567890ABCDEFGHIJKLMN0PQRSTUVWXYZ")</syntaxhighlight> |
||
{{out}} |
{{out}} |
||
<pre>Same as FreeBASIC entry.</pre> |
|||
<pre> |
|||
cadena = "", longitud = 0 |
|||
⚫ | |||
cadena = ".", longitud = 1 |
|||
⚫ | |||
cadena = "abcABC", longitud = 6 |
|||
⚫ | |||
cadena = "XYZ ZYX", longitud = 7 |
|||
⚫ | |||
⚫ | |||
⚫ | |||
</pre> |
|||
=={{header|BQN}}== |
=={{header|BQN}}== |