Имя: Пароль:
IT
 
Pascal
,
0 JaZDik
 
28.11.13
01:33
Найдите такие индексы i и j, что произведение соответствующих элементов массива минимально
1 JaZDik
 
28.11.13
01:33
Не используйте вложенные циклы
2 GROOVY
 
28.11.13
01:36
Аминь.
3 NS
 
28.11.13
01:49
А при чем тут паскаль? Если в массиве только <=0, либо только >=0 элементы, то минимальное произведение - это квадрат минимального по модулю элемента массива.
Если и отрицательные и положительные - то минимальное произведение, это произведение максимального по модулю отрицательного на максимальное  положительное.
Если конечно в условии нет что i<>j
Решается в любом случае за О(n), без вложенных циклов.
4 JaZDik
 
28.11.13
01:54
написать это надо в паскале
5 JaZDik
 
28.11.13
01:54
(3)
6 NS
 
28.11.13
01:56
(4)(5) Кому надо написать в паскале?
То есть алгоритма уже недостаточно? Нужно за тебя написать эти 10 строк кода?
7 Asmody
 
28.11.13
01:58
Ох, школота ленивая пошла!
(0) на хаскелле пиши!
8 JaZDik
 
28.11.13
02:00
(6) если не сложно можешь написать (7) не мне надо, девушке помочь хочу.
9 Asmody
 
28.11.13
02:02
(8) сейчас девушки дают за паскаль? Эх, в моё бы время так…
10 NS
 
28.11.13
02:09
(8) Мне видимо показалось, но ты не хочешь помочь девушке, а хочешь чтоб кто-нибудь на форуме помог девушке.
11 JaZDik
 
28.11.13
02:13
(10) Да потому что я уже все позабыл.
12 NS
 
28.11.13
02:53
Var i,mi,ma,mimod,imi,ima,imimod:integer;
Begin
imi:=1;ima:=1;imimod:=1;
mi:=a[1];ma:=a[1];mimod:=abs(a[1]);
For i:=2 to n do
Begin
if a[i]<mi then begin mi:=a[i];imi:=i end;
if a[i]>ma then begin ma:=a[i];ima:=i end;
if abs(a[i])<mimod then begin mimod:=abs(a[i]);imimod:=i end;
end;
if mi*ma<0 then witeln(imi,ima) else writeln(imimod,imimod);
13 JaZDik
 
28.11.13
03:24
(12)  все отлично, ток он не выводит почему то номер второго числа с которым перемножается
14 NS
 
28.11.13
03:25
(13) В обоих writeln выводится два номера.
15 JaZDik
 
28.11.13
03:25
(12) что и куда нужно дописать что бы он выводил оба числа
числа обоих минимальных
16 NS
 
28.11.13
03:26
if mi*ma<0 then witeln(imi,' ',ima) else writeln(imimod,' ',imimod);
17 JaZDik
 
28.11.13
03:30
число imamod отстутствует
18 JaZDik
 
28.11.13
03:31
(16)
19 NS
 
28.11.13
03:32
(17) Если все числа имеют одинаковый знак, то наименьшее произведение это квадрат наименьшего по модулю числа. Квадрат. i=j. Неужели непонятно?
20 JaZDik
 
28.11.13
03:33
Ааааа...Все понял спасибо огромное. Теперь нужно - это все разжевать девушке xD.
21 JaZDik
 
28.11.13
03:37
(20)
22 Rie
 
28.11.13
05:31
Остаётся вопрос - кому должна теперь дать девушка: ТС или автору решения?
Компьютеры — это как велосипед. Только для нашего сознания. Стив Джобс