Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
lexus213
3 / 3 / 1
Регистрация: 25.06.2011
Сообщений: 86
#1

Подсчитать количество пар в массиве

25.06.2011, 19:39. Просмотров 969. Ответов 4
Метки нет (Все метки)

Дан массив целых чисел A1,...,An.Подсчитать количество пар,состоящих из 2-ух рядом стоящих элементов,имеющих одинаковые значения,но разные знаки.Если таких элементов нет,то упорялочить массив по возрастанию.

Добавлено через 2 часа 18 минут
помогите плз,а то не получается чёт(((
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.06.2011, 19:39
Ответы с готовыми решениями:

Подсчитать количество пар символов «bc» и «ac» и определить, какая из пар встречается чаще
необходимо вести строку символов. Подсчитать количество пар символов «bc» и...

В массиве подсчитать количество элементов, больших 3
В массиве подсчитать количество элементов, больших 3

В двумерном массиве подсчитать количество положительных элементов
Составить программу для решения задачи. В двумерном массиве подсчитать...

Подсчитать в массиве количество элементов, удовлетворяющих условию
дан массив R (N, M). Подсчитать в нём количество элементов, удовлетворяющих...

В массиве из 10 целых чисел подсчитать количество элементов меньших, чем среднее арифметическое минимального и
В массиве из 10 целых чисел подсчитать количество элементов меньших, чем...

4
Mawrat
12824 / 5732 / 1700
Регистрация: 19.09.2009
Сообщений: 8,807
26.06.2011, 01:34 #2
Подсчёт количества пар элементов с разными знаками.
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
const
  M = 10;
var
  Arr : array[1..M] of Integer;
  i, Cnt : Integer;
begin
...
  Cnt := 0;
  for i := 1 to M - 1 do begin
    if Arr[i] * Arr[i + 1] < 0 then Inc(Cnt);
  end;
  
  //Ответ.
  ShowMessage('Количество пар элементов с разными знаками = ' + IntToStr(Cnt));
end;
Если количество элементов = М, то пар будет: (М - 1). Например, если имеем 3 элемента, то пар будет 2:
Элементы: 10, -4, 8
Пары: (10, -4) и (-4, 8).
1
lexus213
3 / 3 / 1
Регистрация: 25.06.2011
Сообщений: 86
26.06.2011, 14:56  [ТС] #3
спасиб...сча дополню нремного,и надеюсь всё будет норм)
0
Mawrat
12824 / 5732 / 1700
Регистрация: 19.09.2009
Сообщений: 8,807
26.06.2011, 15:59 #4
Цитата Сообщение от lexus213 Посмотреть сообщение
пар,состоящих из 2-ух рядом стоящих элементов,имеющих одинаковые значения,но разные знаки.
Реализация этого условия - только те пары, элементы которых имеют разные знаки, но одинаковы по модулю - основана на том, что сумма таких элементов равна нулю. Поэтому, для этого случая, подсчёт таких пар будет выглядеть так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
const
  M = 10;
var
  Arr : array[1..M] of Integer;
  i, Cnt : Integer;
begin
...
  Cnt := 0;
  for i := 1 to M - 1 do begin
    if (Arr[i] + Arr[i + 1]) = 0 then Inc(Cnt);
  end;
  
  //Ответ.
  ShowMessage('Количество пар элементов с равным модулем, но разными знаками = ' + IntToStr(Cnt));
end;
В этом случае будут подсчитаны также пары: (0, 0), хотя число 0 не является ни положительным ни отрицательным. Если пары (0, 0) надо исключить, тогда условие можно дополнить так:
Delphi
1
if (Arr[i] <> 0) and ( (Arr[i] + Arr[i + 1]) = 0 ) then Inc(Cnt);
0
lexus213
3 / 3 / 1
Регистрация: 25.06.2011
Сообщений: 86
28.06.2011, 19:11  [ТС] #5
Цитата Сообщение от Mawrat Посмотреть сообщение
Реализация этого условия - только те пары, элементы которых имеют разные знаки, но одинаковы по модулю - основана на том, что сумма таких элементов равна нулю. Поэтому, для этого случая, подсчёт таких пар будет выглядеть так:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
const
  M = 10;
var
  Arr : array[1..M] of Integer;
  i, Cnt : Integer;
begin
...
  Cnt := 0;
  for i := 1 to M - 1 do begin
    if (Arr[i] + Arr[i + 1]) = 0 then Inc(Cnt);
  end;
  
  //Ответ.
  ShowMessage('Количество пар элементов с равным модулем, но разными знаками = ' + IntToStr(Cnt));
end;
В этом случае будут подсчитаны также пары: (0, 0), хотя число 0 не является ни положительным ни отрицательным. Если пары (0, 0) надо исключить, тогда условие можно дополнить так:
Delphi
1
if (Arr[i] <> 0) and ( (Arr[i] + Arr[i + 1]) = 0 ) then Inc(Cnt);
ммм....спасибо большое)))
буду пытаться дальше осваивать делфи)
0
28.06.2011, 19:11
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
28.06.2011, 19:11

В двумерном массиве все элементы, лежащие в заданном диапазоне, заменить на 100 и подсчитать их количество
В двумерном массиве C (K,L) все элементы, лежащие в диапазоне -3≤C (i,j)≤10,...

В массиве из 10 целых чисел подсчитать количество элементов меньших, чем среднее арифметическое минимального и максималь
В массиве из 10 целых чисел подсчитать количество элементов меньших, чем...

Определить количество пятерок, количество четверок, количество троек и количество двоек в массиве оценок
В массиве записаны оценки по иностранному языку каждого из 22 учеников...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru