Вверх ↑
Этот топик читают: Гость
Ответов: 128
Рейтинг: 1
#1: 2013-01-16 15:38:30 ЛС | профиль | цитата
умная мысля не лезет в голову,помогите решить.есть массив целых чисел из 20 строк,надо определить сколько значений больше ( 0 ) выбрать наибольшое значение и выдать его индекс в поток.
карма: 0

0
Ответов: 16884
Рейтинг: 1239
#2: 2013-01-16 16:23:42 ЛС | профиль | цитата
code_30091.txt
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1code_30091.txt [1.3KB] [61]
Ответов: 8926
Рейтинг: 823
#3: 2013-01-16 16:25:07 ЛС | профиль | цитата
deman, в массивах есть "сортировка", отсортируйте Ваш массив по убыванию и первый (индекс = 0) элемент Ваш
карма: 19

0
Ответов: 128
Рейтинг: 1
#4: 2013-01-16 16:36:35 ЛС | профиль | цитата
Леонид ,так не получится !! тогда я все индексы перемешаю ,а это нельзя делать .Tad предложил схему ,смысл понятен,чуть переделать и ОК
карма: 0

0
Ответов: 258
Рейтинг: -27
#5: 2013-01-16 16:55:46 ЛС | профиль | цитата
Add(MainForm,2953706,161,91){
Width=203
Height=125
}
Add(StrList,11989419,315,63)
{
Strings=#3:262|2:61|3:-13|3:-50|3:660|3:551|3:-25|3:401|2:-1|1:0|
Point(doGetIndex)
Point(onGetIndex)
link(onGetIndex,13607373:doText,[])
}
Add(Button,13434756,203,189)
{
Left=55
Top=15
link(onClick,15925132:doEvent1,[])
}
Add(Label,13607373,399,70)
{
Left=15
Top=60
Width=46
Height=17
Transparent=0
Caption=""
AutoSize=1
}
Add(Label,10245791,430,189)
{
Left=115
Top=60
Width=58
Height=17
Transparent=0
Caption=""
AutoSize=1
}
Add(MultiElementEx,15925132,329,189)
{
link(onNext,10245791:doText,[])
link(onGetString,11989419:doGetIndex,[(373,202)(373,156)(303,156)(303,111)])
link(Array,11989419:Array,[])
}
BEGIN_SDK
Add(EditMultiEx,4556475,21,21)
{
WorkCount=#8:doEvent1|
EventCount=#6:onNext|11:onGetString|
DataCount=#5:Array|
Width=867
Height=669
link(doEvent1,13800118:doEvent1,[(109,27)(109,265)])
}
Add(ArrayEnum,5602231,266,259)
{
link(onItem,9760012:doCompare,[(356,265)(356,244)])
link(onEndEnum,3042132:doEvent1,[])
link(Array,4556475:Array,[(272,140)(27,140)])
}
Add(StrList,6805746,553,259)
{
Point(doSort)
Point(doGetString)
Point(onGetString)
link(onGetString,4556475:onGetString,[(737,272)(737,34)])
}
Add(If_else,9760012,413,238)
{
Type=2
Op2=Integer(0)
link(onTrue,3109774:doEvent1,[])
link(Op1,5602231:Item,[(419,233)(307,233)(307,303)(272,303)])
}
Add(Hub,3042132,308,266)
{
link(onEvent1,6805746:doSort,[(426,272)(426,307)])
link(onEvent2,12158947:doOperation,[(483,279)(483,391)])
}
Add(Hub,3109774,462,238)
{
link(onEvent1,9027795:doNext,[(497,244)(497,125)])
link(onEvent2,6805746:doAdd,[(514,251)(514,265)])
}
Add(CounterEx,9027795,518,119)
{
Point(doReset)
link(onNext,4556475:onNext,[(719,125)(719,27)])
}
Add(Math,12158947,532,385)
{
OpType=1
Op2=1
ResultType=0
link(onResult,6805746:doGetString,[(688,391)(688,359)(541,359)(541,314)])
link(Op1,6805746:Count,[(538,359)(566,359)])
}
Add(Hub,13800118,196,259)
{
OutCount=3
link(onEvent1,9027795:doReset,[(364,265)(364,132)])
link(onEvent2,6805746:doClear,[])
link(onEvent3,5602231:doEnum,[(238,279)(238,265)])
}
END_SDK
------------ Дoбавленo в 16.55:
Леонид писал(а):
индекс = 0

самый меньший это будет, или нет?
карма: 0

0
Ответов: 128
Рейтинг: 1
#6: 2013-01-16 20:15:48 ЛС | профиль | цитата
Cubone ,в реале все крутится у 3-5 индекса ,а к примеру большее число с индексом 15 не определяет
------------ Дoбавленo в 20.15:
так надежнее
Add(MainForm,13771273,266,161)
{
Width=578
Height=582
Caption="Ïðèìåð èñïîëüçîâàíèÿ MathParse"
link(onCreate,6668875:doEvent1,[])
}
Add(Memo,1306295,518,245)
{
Left=165
Top=30
Width=105
Height=370
link(onChange,1052402:doCompare,[(562,251)(562,297)(457,297)(457,328)])
}
Add(ArrayEnum,10723693,504,322)
{
link(onItem,14625091:doEvent1,[(541,328)(541,356)])
link(Array,692129:Var2,[(510,312)(538,312)])
}
Add(If_else,1052402,462,322)
{
Op2=String(20)
link(onTrue,10723693:doEnum,[])
link(Op1,1306295:Count,[(468,305)(531,305)])
}
Add(Hub,6668875,364,175)
{
OutCount=4
link(onEvent1,1306295:doClear,[(462,181)(462,258)])
link(onEvent2,15117201:doReset,[(449,188)(449,377)])
link(onEvent3,2121156:doClear,[(440,195)(440,440)])
}
Add(If_else,2552709,574,322)
{
Type=2
Op2=Integer(0)
link(onTrue,15117201:doNext,[(614,328)(614,370)])
}
Add(CounterEx,15117201,623,364)
{
Min=1
Point(doReset)
link(onNext,9360414:doCompare,[])
}
Add(If_else,9360414,665,364)
{
Type=4
link(onTrue,14545654:doFor,[(709,370)(709,436)(352,436)(352,461)])
link(Op2,7520389:Text,[])
}
Add(Edit,7520389,672,308)
{
Left=30
Top=255
Text="5"
DataType=1
}
Add(GetDataEx,692129,532,294)
{
link(Data,1306295:Array,[])
}
Add(ArrayRW,3733771,469,455)
{
link(onRead,8354428:doCompare,[(545,461)(545,482)])
link(Array,692129:Var1,[(475,299)])
}
Add(EventFromData,12705355,630,420)
{
}
Add(Hub,14625091,546,350)
{
link(onEvent1,2552709:doCompare,[(567,356)(567,328)])
link(onEvent2,2121156:doOperation,[(572,363)(572,398)(541,398)(541,433)])
}
Add(Math,2121156,553,427)
{
OpType=39
Point(doClear)
link(onResult,12705355:doData,[(607,433)(607,426)])
link(Op2,2121156:Result,[(566,415)(562,415)(562,471)(559,471)])
}
Add(If_else,8354428,623,476)
{
link(onTrue,14545654:doStop,[(667,482)(667,475)(345,475)(345,468)])
link(Op2,12705355:GetData,[])
}
Add(For,14545654,357,455)
{
Start=-1
End=19
link(onEvent,3733771:doRead,[])
link(onStop,15588299:doOperation,[(401,468)(401,500)(345,500)(345,531)])
}
Add(Math,15588299,357,525)
{
Op2=1
Point(doClear)
link(onResult,9986685:doText,[])
link(Op1,14545654:Position,[])
}
Add(Edit,15602951,448,119)
{
Left=25
Top=45
Width=80
DataType=1
link(onEnter,1306295:doAdd,[(499,132)(499,251)])
}
Add(Label,9986685,441,525)
{
Left=20
Top=150
}
Add(Label,12516925,441,77)
{
Left=25
Top=20
Width=80
Caption="÷èñëî "
}

карма: 0

0
6
Сообщение
...
Прикрепленные файлы
(файлы не залиты)