Вверх ↑
Этот топик читают: Гость
Ответов: 45
Рейтинг: 4
#1: 2015-03-02 12:53:52 ЛС | профиль | цитата
Можно как то сделать, чтобы поиск по списку выводил все варианты, а не первый попавшийся?
С полным перебором строк медленно работает.
code_35231.txt
карма: 1

0
файлы: 1code_35231.txt [486B] [234]
Гость
Ответов: 17029
Рейтинг: 0
#2: 2015-03-02 13:21:53 правка | ЛС | профиль | цитата


Редактировалось 1 раз(а), последний 2017-03-02 09:15:35
карма: 0

0
Ответов: 45
Рейтинг: 4
#3: 2015-03-02 13:38:15 ЛС | профиль | цитата
95.153.175.20 писал(а):
Можно так.

Можно, но что если список будет 70тыс. строк?
------------ Дoбавленo в 13.38:
Кажется вопрос снят. Делал перебор по Memo, перебор StrList в 3 раза быстрей происходит.

Add(MainForm,10835224,49,252)
{
}
Add(StrList,11935250,245,175)
{
Strings=#1:1|1:2|1:3|1:4|1:5|1:6|1:7|1:8|1:9|2:10|2:11|2:12|2:13|2:14|2:15|2:16|2:17|2:18|2:19|2:20|2:21|2:22|2:23|2:24|2:25|2:26|2:27|2:28|2:29|2:30|2:31|2:32|2:33|2:34|2:35|2:36|2:37|2:38|2:39|2:40|2:41|2:42|2:43|2:44|2:45|2:46|2:47|2:48|2:49|2:50|2:51|2:52|2:53|2:54|2:55|2:56|2:57|2:58|2:59|2:60|2:61|2:62|2:63|2:64|2:65|2:66|2:67|2:68|2:69|2:70|2:71|2:72|2:73|2:74|2:75|2:76|2:77|2:78|2:79|2:80|2:81|2:82|2:83|2:84|2:85|2:86|2:87|2:88|2:89|2:90|2:91|2:92|2:93|2:94|2:95|2:96|2:97|2:98|2:99|3:100|3:101|3:102|3:103|3:104|3:105|3:106|3:107|3:108|3:109|3:110|3:111|3:112|3:113|3:114|3:115|3:116|3:117|3:118|3:119|3:120|3:121|3:122|3:123|3:124|3:125|3:126|3:127|3:128|3:129|3:130|3:131|3:132|3:133|3:134|3:135|3:136|3:137|3:138|3:139|3:140|3:141|3:142|3:143|3:144|3:145|3:146|3:147|3:148|3:149|3:150|3:151|3:152|3:153|3:154|3:155|3:156|3:157|3:158|3:159|3:160|3:161|3:162|3:163|3:164|3:165|3:166|3:167|3:168|3:169|3:170|3:171|3:172|3:173|3:174|3:175|3:176|3:177|3:178|3:179|3:180|3:181|3:182|3:183|3:184|3:185|3:186|3:187|3:188|3:189|3:190|3:191|3:192|3:193|3:194|3:195|3:196|3:197|3:198|3:199|3:200|3:201|3:202|3:203|3:204|3:205|3:206|3:207|3:208|3:209|3:210|3:211|3:212|3:213|3:214|3:215|3:216|3:217|3:218|3:219|3:220|3:221|3:222|3:223|3:224|3:225|3:226|3:227|3:228|3:229|3:230|3:231|3:232|3:233|3:234|3:235|3:236|3:237|3:238|3:239|3:240|3:241|3:242|3:243|3:244|3:245|3:246|3:247|3:248|3:249|3:250|3:251|3:252|3:253|3:254|3:255|3:256|3:257|3:258|3:259|3:260|3:261|3:262|3:263|3:264|3:265|3:266|3:267|3:268|3:269|3:270|3:271|3:272|3:273|3:274|3:275|3:276|3:277|3:278|3:279|3:280|3:281|3:282|3:283|3:284|3:285|3:286|3:287|3:288|3:289|3:290|3:291|3:292|3:293|3:294|3:295|3:296|3:297|3:298|3:299|3:300|3:301|3:302|3:303|3:304|3:305|3:306|3:307|3:308|3:309|3:310|3:311|3:312|3:313|3:314|3:315|3:316|3:317|3:318|3:319|3:320|3:321|3:322|3:323|3:324|3:325|3:326|3:327|3:328|3:329|3:330|3:331|3:332|3:333|3:334|3:335|3:336|3:337|3:338|3:339|3:340|3:341|3:342|3:343|3:344|3:345|3:346|3:347|3:348|3:349|3:350|3:351|3:352|3:353|3:354|3:355|3:356|3:357|3:358|3:359|3:360|3:361|3:362|3:363|3:364|3:365|3:366|3:367|3:368|3:369|3:370|3:371|3:372|3:373|3:374|3:375|3:376|3:377|3:378|3:379|3:380|3:381|3:382|3:383|3:384|3:385|3:386|3:387|3:388|3:389|3:390|3:391|3:392|3:393|3:394|3:395|3:396|3:397|3:398|3:399|3:400|3:401|3:402|3:403|3:404|3:405|3:406|3:407|3:408|3:409|3:410|3:411|3:412|3:413|3:414|3:415|3:416|3:417|3:418|3:419|3:420|3:421|3:422|3:423|3:424|3:425|3:426|3:427|3:428|3:429|3:430|3:431|3:432|3:433|3:434|3:435|3:436|3:437|3:438|3:439|3:440|3:441|3:442|3:443|3:444|3:445|3:446|3:447|3:448|3:449|3:450|3:451|3:452|3:453|3:454|3:455|3:456|3:457|3:458|3:459|3:460|3:461|3:462|3:463|3:464|3:465|3:466|3:467|3:468|3:469|3:470|3:471|3:472|3:473|3:474|3:475|3:476|3:477|3:478|3:479|3:480|3:481|3:482|3:483|3:484|3:485|3:486|3:487|3:488|3:489|3:490|3:491|3:492|3:493|3:494|3:495|3:496|3:497|3:498|3:499|3:500|3:501|3:502|3:503|3:504|3:505|3:506|3:507|3:508|3:509|3:510|3:511|3:512|3:513|3:514|3:515|3:516|3:517|3:518|3:519|3:520|3:521|3:522|3:523|3:524|3:525|3:526|3:527|3:528|3:529|3:530|3:531|3:532|3:533|3:534|3:535|3:536|3:537|3:538|3:539|3:540|3:541|3:542|3:543|3:544|3:545|3:546|3:547|3:548|3:549|3:550|3:551|3:552|3:553|3:554|3:555|3:556|3:557|3:558|3:559|3:560|3:561|3:562|3:563|3:564|3:565|3:566|3:567|3:568|3:569|3:570|3:571|3:572|3:573|3:574|3:575|3:576|3:577|3:578|3:579|3:580|3:581|3:582|3:583|3:584|3:585|3:586|3:587|3:588|3:589|3:590|3:591|3:592|3:593|3:594|3:595|3:596|3:597|3:598|3:599|3:600|3:601|3:602|3:603|3:604|3:605|3:606|3:607|3:608|3:609|3:610|3:611|3:612|3:613|3:614|3:615|3:616|3:617|3:618|3:619|3:620|3:621|3:622|3:623|3:624|3:625|3:626|3:627|3:628|3:629|3:630|3:631|3:632|3:633|3:634|3:635|3:636|3:637|3:638|3:639|3:640|3:641|3:642|3:643|3:644|3:645|3:646|3:647|3:648|3:649|3:650|3:651|3:652|3:653|3:654|3:655|3:656|3:657|3:658|3:659|3:660|3:661|3:662|3:663|3:664|3:665|3:666|3:667|3:668|3:669|3:670|3:671|3:672|3:673|3:674|3:675|3:676|3:677|3:678|3:679|3:680|3:681|3:682|3:683|3:684|3:685|3:686|3:687|3:688|3:689|3:690|3:691|3:692|3:693|3:694|3:695|3:696|3:697|3:698|3:699|3:700|3:701|3:702|3:703|3:704|3:705|3:706|3:707|3:708|3:709|3:710|3:711|3:712|3:713|3:714|3:715|3:716|3:717|3:718|3:719|3:720|3:721|3:722|3:723|3:724|3:725|3:726|3:727|3:728|3:729|3:730|3:731|3:732|3:733|3:734|3:735|3:736|3:737|3:738|3:739|3:740|3:741|3:742|3:743|3:744|3:745|3:746|3:747|3:748|3:749|3:750|3:751|3:752|3:753|3:754|3:755|3:756|3:757|3:758|3:759|3:760|3:761|3:762|3:763|3:764|3:765|3:766|3:767|3:768|3:769|3:770|3:771|3:772|3:773|3:774|3:775|3:776|3:777|3:778|3:779|3:780|3:781|3:782|3:783|3:784|3:785|3:786|3:787|3:788|3:789|3:790|3:791|3:792|3:793|3:794|3:795|3:796|3:797|3:798|3:799|3:800|3:801|3:802|3:803|3:804|3:805|3:806|3:807|3:808|3:809|3:810|3:811|3:812|3:813|3:814|3:815|3:816|3:817|3:818|3:819|3:820|3:821|3:822|3:823|3:824|3:825|3:826|3:827|3:828|3:829|3:830|3:831|3:832|3:833|3:834|3:835|3:836|3:837|3:838|3:839|3:840|3:841|3:842|3:843|3:844|3:845|3:846|3:847|3:848|3:849|3:850|3:851|3:852|3:853|3:854|3:855|3:856|3:857|3:858|3:859|3:860|3:861|3:862|3:863|3:864|3:865|3:866|3:867|3:868|3:869|3:870|3:871|3:872|3:873|3:874|3:875|3:876|3:877|3:878|3:879|3:880|3:881|3:882|3:883|3:884|3:885|3:886|3:887|3:888|3:889|3:890|3:891|3:892|3:893|3:894|3:895|3:896|3:897|3:898|3:899|3:900|3:901|3:902|3:903|3:904|3:905|3:906|3:907|3:908|3:909|3:910|3:911|3:912|3:913|3:914|3:915|3:916|3:917|3:918|3:919|3:920|3:921|3:922|3:923|3:924|3:925|3:926|3:927|3:928|3:929|3:930|3:931|3:932|3:933|3:934|3:935|3:936|3:937|3:938|3:939|3:940|3:941|3:942|3:943|3:944|3:945|3:946|3:947|3:948|3:949|3:950|3:951|3:952|3:953|3:954|3:955|3:956|3:957|3:958|3:959|3:960|3:961|3:962|3:963|3:964|3:965|3:966|3:967|3:968|3:969|3:970|3:971|3:972|3:973|3:974|3:975|3:976|3:977|3:978|3:979|3:980|3:981|3:982|3:983|3:984|3:985|3:986|3:987|3:988|3:989|3:990|3:991|3:992|3:993|3:994|3:995|3:996|3:997|3:998|3:999|4:1000|
}
Add(Edit,5998970,315,203)
{
Left=10
Top=10
Width=150
Text="1000"
}
Add(Button,1898356,126,259)
{
Left=10
Top=35
Caption="Search"
Data=Integer(0)
link(onClick,8663686:doStart,[])
}
Add(ArrayEnum,3008004,259,259)
{
link(onItem,14401021:doCompare,[])
link(onEndEnum,8663686:doStop,[(303,272)(303,260)(184,260)(184,272)])
link(Array,11935250:Array,[])
}
Add(Memo,8927946,364,259)
{
Left=185
Top=10
Height=35
link(Str,3008004:Index,[(370,247)(349,247)(349,303)(272,303)])
}
Add(If_else,14401021,308,259)
{
link(onTrue,8927946:doAdd,[])
link(Op2,5998970:Text,[])
}
Add(Memo,5579990,252,406)
{
Left=12
Top=182
Height=55
Strings=#1:1|1:2|1:3|1:4|1:5|1:6|1:7|1:8|1:9|2:10|2:11|2:12|2:13|2:14|2:15|2:16|2:17|2:18|2:19|2:20|2:21|2:22|2:23|2:24|2:25|2:26|2:27|2:28|2:29|2:30|2:31|2:32|2:33|2:34|2:35|2:36|2:37|2:38|2:39|2:40|2:41|2:42|2:43|2:44|2:45|2:46|2:47|2:48|2:49|2:50|2:51|2:52|2:53|2:54|2:55|2:56|2:57|2:58|2:59|2:60|2:61|2:62|2:63|2:64|2:65|2:66|2:67|2:68|2:69|2:70|2:71|2:72|2:73|2:74|2:75|2:76|2:77|2:78|2:79|2:80|2:81|2:82|2:83|2:84|2:85|2:86|2:87|2:88|2:89|2:90|2:91|2:92|2:93|2:94|2:95|2:96|2:97|2:98|2:99|3:100|3:101|3:102|3:103|3:104|3:105|3:106|3:107|3:108|3:109|3:110|3:111|3:112|3:113|3:114|3:115|3:116|3:117|3:118|3:119|3:120|3:121|3:122|3:123|3:124|3:125|3:126|3:127|3:128|3:129|3:130|3:131|3:132|3:133|3:134|3:135|3:136|3:137|3:138|3:139|3:140|3:141|3:142|3:143|3:144|3:145|3:146|3:147|3:148|3:149|3:150|3:151|3:152|3:153|3:154|3:155|3:156|3:157|3:158|3:159|3:160|3:161|3:162|3:163|3:164|3:165|3:166|3:167|3:168|3:169|3:170|3:171|3:172|3:173|3:174|3:175|3:176|3:177|3:178|3:179|3:180|3:181|3:182|3:183|3:184|3:185|3:186|3:187|3:188|3:189|3:190|3:191|3:192|3:193|3:194|3:195|3:196|3:197|3:198|3:199|3:200|3:201|3:202|3:203|3:204|3:205|3:206|3:207|3:208|3:209|3:210|3:211|3:212|3:213|3:214|3:215|3:216|3:217|3:218|3:219|3:220|3:221|3:222|3:223|3:224|3:225|3:226|3:227|3:228|3:229|3:230|3:231|3:232|3:233|3:234|3:235|3:236|3:237|3:238|3:239|3:240|3:241|3:242|3:243|3:244|3:245|3:246|3:247|3:248|3:249|3:250|3:251|3:252|3:253|3:254|3:255|3:256|3:257|3:258|3:259|3:260|3:261|3:262|3:263|3:264|3:265|3:266|3:267|3:268|3:269|3:270|3:271|3:272|3:273|3:274|3:275|3:276|3:277|3:278|3:279|3:280|3:281|3:282|3:283|3:284|3:285|3:286|3:287|3:288|3:289|3:290|3:291|3:292|3:293|3:294|3:295|3:296|3:297|3:298|3:299|3:300|3:301|3:302|3:303|3:304|3:305|3:306|3:307|3:308|3:309|3:310|3:311|3:312|3:313|3:314|3:315|3:316|3:317|3:318|3:319|3:320|3:321|3:322|3:323|3:324|3:325|3:326|3:327|3:328|3:329|3:330|3:331|3:332|3:333|3:334|3:335|3:336|3:337|3:338|3:339|3:340|3:341|3:342|3:343|3:344|3:345|3:346|3:347|3:348|3:349|3:350|3:351|3:352|3:353|3:354|3:355|3:356|3:357|3:358|3:359|3:360|3:361|3:362|3:363|3:364|3:365|3:366|3:367|3:368|3:369|3:370|3:371|3:372|3:373|3:374|3:375|3:376|3:377|3:378|3:379|3:380|3:381|3:382|3:383|3:384|3:385|3:386|3:387|3:388|3:389|3:390|3:391|3:392|3:393|3:394|3:395|3:396|3:397|3:398|3:399|3:400|3:401|3:402|3:403|3:404|3:405|3:406|3:407|3:408|3:409|3:410|3:411|3:412|3:413|3:414|3:415|3:416|3:417|3:418|3:419|3:420|3:421|3:422|3:423|3:424|3:425|3:426|3:427|3:428|3:429|3:430|3:431|3:432|3:433|3:434|3:435|3:436|3:437|3:438|3:439|3:440|3:441|3:442|3:443|3:444|3:445|3:446|3:447|3:448|3:449|3:450|3:451|3:452|3:453|3:454|3:455|3:456|3:457|3:458|3:459|3:460|3:461|3:462|3:463|3:464|3:465|3:466|3:467|3:468|3:469|3:470|3:471|3:472|3:473|3:474|3:475|3:476|3:477|3:478|3:479|3:480|3:481|3:482|3:483|3:484|3:485|3:486|3:487|3:488|3:489|3:490|3:491|3:492|3:493|3:494|3:495|3:496|3:497|3:498|3:499|3:500|3:501|3:502|3:503|3:504|3:505|3:506|3:507|3:508|3:509|3:510|3:511|3:512|3:513|3:514|3:515|3:516|3:517|3:518|3:519|3:520|3:521|3:522|3:523|3:524|3:525|3:526|3:527|3:528|3:529|3:530|3:531|3:532|3:533|3:534|3:535|3:536|3:537|3:538|3:539|3:540|3:541|3:542|3:543|3:544|3:545|3:546|3:547|3:548|3:549|3:550|3:551|3:552|3:553|3:554|3:555|3:556|3:557|3:558|3:559|3:560|3:561|3:562|3:563|3:564|3:565|3:566|3:567|3:568|3:569|3:570|3:571|3:572|3:573|3:574|3:575|3:576|3:577|3:578|3:579|3:580|3:581|3:582|3:583|3:584|3:585|3:586|3:587|3:588|3:589|3:590|3:591|3:592|3:593|3:594|3:595|3:596|3:597|3:598|3:599|3:600|3:601|3:602|3:603|3:604|3:605|3:606|3:607|3:608|3:609|3:610|3:611|3:612|3:613|3:614|3:615|3:616|3:617|3:618|3:619|3:620|3:621|3:622|3:623|3:624|3:625|3:626|3:627|3:628|3:629|3:630|3:631|3:632|3:633|3:634|3:635|3:636|3:637|3:638|3:639|3:640|3:641|3:642|3:643|3:644|3:645|3:646|3:647|3:648|3:649|3:650|3:651|3:652|3:653|3:654|3:655|3:656|3:657|3:658|3:659|3:660|3:661|3:662|3:663|3:664|3:665|3:666|3:667|3:668|3:669|3:670|3:671|3:672|3:673|3:674|3:675|3:676|3:677|3:678|3:679|3:680|3:681|3:682|3:683|3:684|3:685|3:686|3:687|3:688|3:689|3:690|3:691|3:692|3:693|3:694|3:695|3:696|3:697|3:698|3:699|3:700|3:701|3:702|3:703|3:704|3:705|3:706|3:707|3:708|3:709|3:710|3:711|3:712|3:713|3:714|3:715|3:716|3:717|3:718|3:719|3:720|3:721|3:722|3:723|3:724|3:725|3:726|3:727|3:728|3:729|3:730|3:731|3:732|3:733|3:734|3:735|3:736|3:737|3:738|3:739|3:740|3:741|3:742|3:743|3:744|3:745|3:746|3:747|3:748|3:749|3:750|3:751|3:752|3:753|3:754|3:755|3:756|3:757|3:758|3:759|3:760|3:761|3:762|3:763|3:764|3:765|3:766|3:767|3:768|3:769|3:770|3:771|3:772|3:773|3:774|3:775|3:776|3:777|3:778|3:779|3:780|3:781|3:782|3:783|3:784|3:785|3:786|3:787|3:788|3:789|3:790|3:791|3:792|3:793|3:794|3:795|3:796|3:797|3:798|3:799|3:800|3:801|3:802|3:803|3:804|3:805|3:806|3:807|3:808|3:809|3:810|3:811|3:812|3:813|3:814|3:815|3:816|3:817|3:818|3:819|3:820|3:821|3:822|3:823|3:824|3:825|3:826|3:827|3:828|3:829|3:830|3:831|3:832|3:833|3:834|3:835|3:836|3:837|3:838|3:839|3:840|3:841|3:842|3:843|3:844|3:845|3:846|3:847|3:848|3:849|3:850|3:851|3:852|3:853|3:854|3:855|3:856|3:857|3:858|3:859|3:860|3:861|3:862|3:863|3:864|3:865|3:866|3:867|3:868|3:869|3:870|3:871|3:872|3:873|3:874|3:875|3:876|3:877|3:878|3:879|3:880|3:881|3:882|3:883|3:884|3:885|3:886|3:887|3:888|3:889|3:890|3:891|3:892|3:893|3:894|3:895|3:896|3:897|3:898|3:899|3:900|3:901|3:902|3:903|3:904|3:905|3:906|3:907|3:908|3:909|3:910|3:911|3:912|3:913|3:914|3:915|3:916|3:917|3:918|3:919|3:920|3:921|3:922|3:923|3:924|3:925|3:926|3:927|3:928|3:929|3:930|3:931|3:932|3:933|3:934|3:935|3:936|3:937|3:938|3:939|3:940|3:941|3:942|3:943|3:944|3:945|3:946|3:947|3:948|3:949|3:950|3:951|3:952|3:953|3:954|3:955|3:956|3:957|3:958|3:959|3:960|3:961|3:962|3:963|3:964|3:965|3:966|3:967|3:968|3:969|3:970|3:971|3:972|3:973|3:974|3:975|3:976|3:977|3:978|3:979|3:980|3:981|3:982|3:983|3:984|3:985|3:986|3:987|3:988|3:989|3:990|3:991|3:992|3:993|3:994|3:995|3:996|3:997|3:998|3:999|4:1000|
ScrollBars=2
}
Add(TimeCounter,8663686,196,259)
{
link(onStart,3008004:doEnum,[])
link(onStop,10799305:doText,[(236,272)(236,328)])
}
Add(Label,10799305,245,322)
{
Left=72
Top=37
}
Add(Edit,4192564,322,427)
{
Left=10
Top=135
Width=150
Text="1000"
}
Add(Button,15275403,133,483)
{
Left=10
Top=160
Caption="Search"
Data=Integer(0)
link(onClick,6839671:doStart,[])
}
Add(ArrayEnum,11774418,266,483)
{
link(onItem,13792243:doCompare,[])
link(onEndEnum,6839671:doStop,[(310,496)(310,484)(191,484)(191,496)])
link(Array,5579990:Array,[])
}
Add(Memo,1966106,371,483)
{
Left=185
Top=135
Height=35
link(Str,11774418:Index,[(377,471)(356,471)(356,527)(279,527)])
}
Add(If_else,13792243,315,483)
{
link(onTrue,1966106:doAdd,[])
link(Op2,4192564:Text,[])
}
Add(TimeCounter,6839671,203,483)
{
link(onStart,11774418:doEnum,[])
link(onStop,8338523:doText,[(243,496)(243,552)])
}
Add(Label,8338523,252,546)
{
Left=72
Top=162
}


карма: 1

0
Ответов: 1304
Рейтинг: 405
#4: 2015-03-02 14:31:44 ЛС | профиль | цитата
DRc, можно чуть ускорить.
code_35232.txt
карма: 3

1
файлы: 1code_35232.txt [1.1KB] [231]
Голосовали:DRc
Ответов: 45
Рейтинг: 4
#5: 2015-03-02 14:49:31 ЛС | профиль | цитата
MAV писал(а):
можно чуть ускорить.

О, вообще огонь, спасибо!
карма: 1

0
Ответов: 1536
Рейтинг: 176
#6: 2015-03-02 15:31:09 ЛС | профиль | цитата
Можно и так:
Add(StrList,11935250,441,154)
{
Point(StrToFind)
Point(doGetIndex)
Point(onGetIndex)
link(StrToFind,2534804:Var1,[(461,138)])
link(onGetIndex,4023609:doAdd,[])
}
Add(Edit,5998970,490,84)
{
Left=10
Top=10
Width=150
Text="200000"
}
Add(MainForm,12828560,357,140)
{
link(onCreate,2459288:doFor,[])
}
Add(Button,5773014,308,343)
{
Left=15
Top=145
Caption="№2"
Data=Integer(0)
link(onClick,1138846:doStart,[])
AddHint(-10,-19,32,13,Caption)
}
Add(Memo,10733726,511,343)
{
Left=190
Top=145
Height=35
link(onChange,1138846:doStop,[(563,349)(563,394)(345,394)(345,356)])
}
Add(TimeCounter,1138846,357,343)
{
link(onStart,12689617:doFind,[])
link(onStop,15474626:doText,[])
}
Add(Label,15474626,399,350)
{
Left=77
Top=147
}
Add(For,2459288,399,154)
{
End=200000
link(onEvent,11935250:doAdd,[])
}
Add(ArrayFind,12689617,455,343)
{
ArrayType=1
link(onFind,10733726:doAdd,[])
link(Array,11935250:Array,[])
link(Index,16108363:Value,[])
link(Value,2534804:Var2,[(475,326)(496,326)])
}
Add(Memory,16108363,462,287)
{
Default=Integer(0)
}
Add(Button,5434470,308,196)
{
Left=15
Top=60
Caption="№1"
Data=Integer(0)
link(onClick,6984000:doStart,[])
AddHint(-10,-21,32,13,Caption)
}
Add(Memo,4023609,511,161)
{
Left=190
Top=60
Height=35
link(onChange,6984000:doStop,[(563,167)(563,239)(345,239)(345,209)])
link(Str,2534804:Var3,[(517,138)])
}
Add(TimeCounter,6984000,357,196)
{
link(onStart,11935250:doGetIndex,[])
link(onStop,4772009:doText,[])
}
Add(Label,4772009,399,203)
{
Left=77
Top=62
}
Add(GetDataEx,2534804,490,133)
{
link(Data,5998970:Text,[])
}
карма: 1
Не так страшна ошибка, как опасность её не заметить.

0
Ответов: 1304
Рейтинг: 405
#7: 2015-03-02 16:47:57 ЛС | профиль | цитата
ser_davkin, да второй вариант быстрей процентов на 5(если работать со строками), первый вариант не проходит по условиям.
карма: 3

0
Ответов: 758
Рейтинг: 112
#8: 2015-03-02 18:00:02 ЛС | профиль | цитата
Мой вариант
code_35233.txt
карма: 1

0
файлы: 1code_35233.txt [1.3KB] [273]
Ответов: 45
Рейтинг: 4
#9: 2015-03-04 09:16:22 ЛС | профиль | цитата
ser_davkin писал(а):
Можно и так:
второй вариант не выдает все вхождения?
code_35247.txt
карма: 1

0
файлы: 1code_35247.txt [1.7KB] [210]
Ответов: 1536
Рейтинг: 176
#10: 2015-03-04 09:43:12 ЛС | профиль | цитата
DRc, старею вероятно.
Add(StrList,11935250,371,154)
{
Point(StrToFind)
Point(doGetIndex)
Point(onGetIndex)
link(StrToFind,2534804:Var1,[(391,145)])
link(onGetIndex,13458517:doCompare,[])
}
Add(Edit,5998970,476,91)
{
Left=10
Top=10
Width=150
Text="200000"
}
Add(MainForm,12828560,287,140)
{
link(onCreate,2459288:doFor,[])
}
Add(Button,5773014,245,364)
{
Left=15
Top=210
Caption="№2"
Data=Integer(0)
link(onClick,1138846:doStart,[])
AddHint(-10,-19,32,13,Caption)
}
Add(Memo,10733726,476,364)
{
Left=190
Top=210
Height=35
link(onChange,1138846:doStop,[(516,370)(516,416)(285,416)(285,377)])
link(Str,9822481:Var2,[])
}
Add(TimeCounter,1138846,294,364)
{
link(onStart,12689617:doFind,[])
link(onStop,15474626:doText,[])
}
Add(Label,15474626,336,371)
{
Left=77
Top=212
}
Add(For,2459288,329,154)
{
End=200000
link(onEvent,11935250:doAdd,[])
}
Add(ArrayFind,12689617,385,364)
{
link(onFind,14054977:doCompare,[])
link(Array,11935250:Array,[])
link(Index,16108363:Value,[])
link(Value,9822481:Var1,[(405,348)])
}
Add(Memory,16108363,392,301)
{
}
Add(Button,5434470,238,196)
{
Left=15
Top=60
Caption="№1"
Data=Integer(0)
link(onClick,6984000:doStart,[])
AddHint(-10,-21,32,13,Caption)
}
Add(Memo,4023609,476,161)
{
Left=190
Top=60
Height=35
link(onChange,6984000:doStop,[(517,167)(517,242)(275,242)(275,209)])
link(Str,2534804:Var2,[])
}
Add(TimeCounter,6984000,287,196)
{
link(onStart,11935250:doGetIndex,[])
link(onStop,4772009:doText,[])
}
Add(Label,4772009,329,203)
{
Left=77
Top=62
}
Add(GetDataEx,2534804,476,140)
{
link(Data,5998970:Text,[])
}
Add(Edit,14271084,476,301)
{
Left=10
Top=180
Width=150
Text="123"
}
Add(GetDataEx,9822481,476,343)
{
link(Data,14271084:Text,[])
}
Add(If_else,14054977,427,364)
{
Type=5
Op2=Integer(-1)
link(onTrue,10733726:doAdd,[])
}
Add(If_else,13458517,427,161)
{
Type=5
Op2=Integer(-1)
link(onTrue,4023609:doAdd,[])
}
карма: 1
Не так страшна ошибка, как опасность её не заметить.

0
Ответов: 16884
Рейтинг: 1239
#11: 2015-03-04 09:49:41 ЛС | профиль | цитата
DRc писал(а):
второй вариант не выдает все вхождения?
Первый тоже.
code_35248.txt
И никуда от полного перебора строк не уйдёшь.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_35248.txt [1KB] [237]
Ответов: 1536
Рейтинг: 176
#12: 2015-03-04 10:07:16 ЛС | профиль | цитата
Tad, в чём ошибка?
------------ Дoбавленo в 10.07:
А, понял...
карма: 1
Не так страшна ошибка, как опасность её не заметить.

0
Ответов: 16884
Рейтинг: 1239
#13: 2015-03-04 10:09:31 ЛС | профиль | цитата
ser_davkin писал(а):
в чём ошибка?
DRc писал(а):
Можно как то сделать, чтобы поиск по строке выводил все варианты
В неверной постановке задачи.
Что значит "поиск по строке выводил все варианты" ?
Искать строку ?
Или искать
DRc писал(а):
второй вариант не выдает все вхождения?
"все вхождения" чего-то по всем строкам списка ?
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Ответов: 45
Рейтинг: 4
#14: 2015-03-04 10:20:43 ЛС | профиль | цитата
Да, я имел в виду поиск в списке всех строк.
карма: 1

0
Ответов: 16884
Рейтинг: 1239
#15: 2015-03-04 10:52:10 ЛС | профиль | цитата
DRc писал(а):
Да, я имел в виду поиск в списке всех строк.
А я имел в виду поиск всех повторяющихся строк в списке строк.
Разницу улавливаешь ?
И тут без ArrayEnum или For (перебор всех строк списка) никак.
------------ Дoбавленo в 10.52:
Выше я привёл пример с использованием ArrayEnum, а это пример на For

Add(MainForm,10835224,273,294)
{
Width=563
}
Add(StrList,11935250,483,175)
{
Strings=#3:123|3:234|3:345|3:123|6:234234|3:234|4:7564|3:123|3:123|3:124|5:45645|3:678|5:45645|3:123|
Point(doGetString)
Point(onGetString)
link(onGetString,14401021:doCompare,[])
}
Add(Edit,5998970,546,133)
{
Left=10
Top=10
Width=150
Text="123"
}
Add(Button,1898356,329,294)
{
Left=10
Top=35
Caption="Search"
Data=Integer(0)
link(onClick,7212239:doEvent1,[])
}
Add(Memo,8927946,595,294)
{
Left=185
Top=10
Height=230
}
Add(If_else,14401021,539,182)
{
link(onTrue,8927946:doAdd,[(583,188)(583,300)])
link(Op2,5998970:Text,[])
}
Add(TimeCounter,8663686,413,301)
{
link(onStart,5974393:doFor,[(464,307)(464,258)])
link(onStop,10799305:doText,[])
}
Add(Label,10799305,476,308)
{
Left=72
Top=37
}
Add(Hub,7212239,378,294)
{
link(onEvent1,8927946:doClear,[(584,300)(584,307)])
link(onEvent2,8663686:doStart,[])
}
Add(For,5974393,483,252)
{
IncludeEnd=1
link(onEvent,11935250:doGetString,[(528,258)(528,243)(457,243)(457,223)])
link(onStop,8663686:doStop,[(525,265)(525,350)(401,350)(401,314)])
link(End,11935250:Count,[])
}
Эта схема (на больших списках) будет работать раза в 3 медленней чем на ArrayEnum.
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)