0 / 0 / 0
Регистрация: 12.03.2015
Сообщений: 17
1

Вычислить сумму модулей элементов массива, расположенных после первого отрицательного элемента

12.03.2015, 09:19. Показов 1322. Ответов 6
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
дана
целочисленная прямоугольная матрица
вычислить
сумму модулей элементов массива,расположенных после первого отрицательного элемента
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.03.2015, 09:19
Ответы с готовыми решениями:

Найти Сумму модулей элементов массива, расположенных после первого отрицательного элемента
Сумму модулей элементов массива, расположенных после первого отрицательного элемента . Диапазон (...

Вычислить сумму модулей элементов массива, расположенных после первого элемента
Сделал через массив, требуют через функцию. В одномерном массиве, состоящем из n целочисленных...

Вычислить сумму модулей элементов массива, расположенных после первого элемента, равного нулю
в одномерном массиве состоящем из n вычислить сумму модулей элементов массива расположенных после...

Найти сумму модулей элементов массива, расположенных после первого элемента, равного 0
Доброго времени суток, Уважаемые формучане! Необходима помощь. Одномерные массивы В...

6
5084 / 2655 / 2350
Регистрация: 10.12.2014
Сообщений: 10,043
12.03.2015, 10:24 2
Матрица прямоугольная!
К примеру:

Код
1  2  3  4  5
2  3  4  5  6
3  4 -5  6  7
4  5  6  7  8
5  6  7  8  9
Что должно получится?
Какие элементы считать как „расположенных после первого отрицательного элемента“?
0
Модератор
9972 / 5336 / 3329
Регистрация: 17.08.2012
Сообщений: 16,264
12.03.2015, 17:20 3
Keek, JuriiMW, для многомерных матриц общий порядок расположения элементов не определён.
То есть, никак нельзя сказать, что идёт раньше: a[2, 7] или a[6, 3]. Однако, троечники, составляющие вот такие вот бестолковые некорректные задачи, считают, что в двумерном массиве элементы упорядочены как в многострочном тексте, слева направо сверху вниз.

Не по теме:

Таких задачек чего-то много стало, аж смешно от этой святой уверенности, что существует некий стандарт обхода массива... Вот интересно было бы спросить составителей задачек об стандартном порядке обхода 7-мерного массива, индексы которого представляют собой условные пиктограммы...

0
Модератор
Эксперт Pascal/DelphiЭксперт NIX
7788 / 4613 / 2828
Регистрация: 22.11.2013
Сообщений: 13,111
Записей в блоге: 1
12.03.2015, 18:04 4
Cyborg Drone,
было бы рациональным считать, что младшая из размерностей, считая слева направо, является младшей и при обходе.
Если принять эту посылку, то a[2,7] идёт раньше a[6,3].
Независимо от способа хранения в памяти (по строкам, по столбцам, как-то ещё).

Добавлено через 9 минут
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
const
  n=5; m=5;
var
  a: array [1..n,1..m] of Integer;
  i, j, s: Integer;
  hasNeg: Boolean;
begin
  { ... }
  for i:=1 to n do for j:=1 to m do begin
    if hasNeg then s:=s+Abs(a[i,j]);
    hasNeg:=hasNeg or (a[i,j]<0);
  end;
end.
Отдельно стоит упомянуть Free Pascal с его циклом "for e in a do", позволяющем положиться в выборе порядка на компилятор.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
{$mode ObjFPC}
const
  n=5; m=5;
var
  a: array [1..n,1..m] of Integer;
  e, s: Integer;
  hasNeg: Boolean;
begin
  { ... }
  hasNeg:=False; s:=0;
  for e in a do begin
    if hasNeg then s:=s+Abs(e);
    hasNeg:=hasNeg or (e<0);
  end;
end.
Добавлено через 2 минуты
Или так:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{$mode ObjFPC}
const
  n=5; m=5;
var
  a: array [1..n,1..m] of Integer;
  e, s, k: Integer;
begin
  { ... }
  s:=0; k:=0;
  for e in a do begin
    s:=s+k*Abs(e);
    k:=Ord((k=1) or (e<0));
  end;
end.
0
Cyborg Drone
12.03.2015, 20:26
  #5

Не по теме:

Согласен, конечно же, согласен. Но, всё равно, это - всего лишь рациональный выбор, а не правило. Я имел ввиду, что в подобных случаях приходится доопределять задание даже не за ТС, а за составителя задачи.

0
bormant
12.03.2015, 20:39
  #6

Не по теме:

вообще не понимаю, зачем на матрице формулировать задачи линейных массивов. В чем задача? Писать так и не морочить голову?

Pascal
1
2
3
4
var
  a: array [1..n,1..m] of Integer;
  b: array [1..n*m] of Integer absolute a;
...

0
Cyborg Drone
12.03.2015, 22:17     Вычислить сумму модулей элементов массива, расположенных после первого отрицательного элемента
  #7

Не по теме:

Ну а почему бы и нет? Пусть порядок обхода определяется расположением в памяти. Критерий как критерий. Но для меня все эти задачки звучат примерно как "найти в лесу предпоследнюю сосну, особенно в пятницу".

0
12.03.2015, 22:17
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.03.2015, 22:17
Помогаю со студенческими работами здесь

Найти сумму модулей элементов массива, расположенных после первого элемента, равного нулю
В одномерном массиве, состоящем из N целочисленных элементов, вычислить: 1.Сумму модулей элементов...

Найти сумму модулей элементов массива, расположенных после первого элемента, равного нулю
В одномерном массиве, состоящем из n целочисленных элементов, вычислить: 1) минимальный по модулю...

Вычислить сумму модулей элементов массива, расположенных после минимального элемента
1.Вычислить сумму модулей элементов массива К размером n, расположенных после минимального...

Вычислить сумму модулей элементов массива, расположенных после минимального элемента
Добрый вечер, помогите пожалуйста с задачкой на зачёт по турбо паскаль: Вычислить сумму модулей...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru