mojaSymfonia FORUM https://forum.mix-soft.pl/ |
|
Move - ciekawostka https://forum.mix-soft.pl/viewtopic.php?f=15&t=1639 |
Strona 1 z 1 |
Autor: | MMM [ 2010-01-21, 13:32 ] |
Tytuł: | Move - ciekawostka |
Poniżej dwie funkcje, które (teoretycznie) robią to samo. Kod2 powstał właśnie w wyniku tego, że Move To źle działa. (Sprawdzane w Handel Premium i Handel Forte). Kod: string sub Kod(string s) buf = s if len(s) < 6 then Move To 3 Insert "-" endif Kod = buf endsub string sub Kod2(string s) buf = s int i = Move 0 if len(s) < 6 then Move (3-i) Insert "-" endif Kod2 = buf endsub print Kod(""), Kod("1"), Kod("12"), Kod("123"), Kod("1234"), Kod("12345"), Kod("123456"), lf print Kod2(""), Kod2("1"), Kod2("12"), Kod2("123"), Kod2("1234"), Kod2("12345"), Kod2("123456"), lf Oczywiście można też to zrobic np. tak: Kod: string sub Kod3(string s) Kod3 = s if len(s) < 6 then Kod3 = mid(s, 1, 2 ) + "-" + mid(s, 3, 3) endif endsub |
Autor: | rafal [ 2010-01-21, 14:38 ] |
Tytuł: | |
napisz krótko jaki efekt chciałeś osiągnąć. co to ma robić? |
Autor: | MMM [ 2010-01-21, 15:00 ] |
Tytuł: | |
To miało na TRZECIEJ pozycji ciagu znaków wstawiać myslnik (jak w kodzie pocztowym). A powyższy kod miał pokazać złe działanie polecenia Move To (zwłaszcza dla ciągów o długości dokładnie 3 znaków). |
Autor: | rafal [ 2010-01-21, 18:15 ] |
Tytuł: | |
chyba masz rację. dziwnie się zachowuje przy move to x gdzie x jest równy długości ciągu. |
Autor: | Jarek75 [ 2010-02-02, 17:50 ] |
Tytuł: | |
rafal pisze: dziwnie się zachowuje Rafał, ująłeś to baaaardzo dyplomatycznie . Ja pozwolę sobie powiedzieć wprost: jest błąd ambasicu dyskwalifikujący polecenie move to i, gdy i!=0. Dzięki za info MMM. |
Autor: | rafal [ 2010-02-02, 17:53 ] |
Tytuł: | |
No ja uzywałem do tej pory tylko Kod: move to 1 |
Autor: | darek.007 [ 2010-03-07, 21:06 ] |
Tytuł: | |
zaraz dyskwalifikacja, błęty... nudzi się kolegom raz używacie move 4 a raz move to 4 a to tak mieć 1000 złotych i oddać komuś 1000 złotych po obu operacjach nie zawsze będziemy mieć tyle samo pieniedzy... int i = Move 0 przesunać się o zero będąc na pierwszej pozycji - ciekawe gdzie koledzy by chcieli być? |
Autor: | Jarek75 [ 2012-08-23, 11:14 ] |
Tytuł: | Re: Move - ciekawostka |
Workaround. Zamiast Kod: move to x Kod: move to 1 move x-1 EDIT: przed chwilą musiałem poprawić, bo machnąłem się o 1. Ale teraz chyba już dobrze. O dziwo move to 1 działa prawidłowo nawet dla ciągu 1 znakowego, czyli ustawia się przed pierwszym znakiem. |
Strona 1 z 1 | Strefa czasowa UTC+1godz. [letni] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |