5 / 5 / 3
Регистрация: 13.11.2010
Сообщений: 32
1

Найти сумму элементов массива, расположенных между первым и последним нулевым элементами

17.06.2011, 01:03. Показов 663. Ответов 1
Метки нет (Все метки)

Кто может улучшить или как-то оптимизировать...:::???
Найти сумму элементов массива, расположенных между первым и последним нулевым элементами.

Мой код... Кто может оптимизируйте... Интересно просто!!!
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
program sum_elem_mas_pr_ps_0_elem;
const
  n = 100;
type
  mas = array [1..n] of integer;
var
  a: mas;
  i: integer;
  nf: integer;
  pr, ps: integer;
  sum: integer;
  s: string;
begin
  writeln('Введите количество элементов массива:');
  readln(nf);
  if nf > n then
  begin
    writeln('Превышение размеров массива!!!');
    exit;
  end;
  if nf < 0 then 
  begin
    writeln('Вы вели отрицательное количество элементов массива, хотите ли использовать абсолютное значение???');
    readln(s);
    if s = 'да' then 
    begin
      nf := abs(nf);
    end;
    if s = 'нет' then
    begin
      writeln('Программа будет завершена!!!');
      exit;
    end;    
  end;
  writeln('Введите элементы массива:');
  for i := 1 to nf do readln(a[i]);
  writeln('Исходный массив:');
  for i := 1 to nf do writeln(a[i]:5);
  for i := 1 to nf do
    if a[i] = 0 then
    begin
      pr := i;
      break;
    end;
  for i := nf downto i do
    if a[i] = 0 then
    begin
      ps := i;
      break;
    end;
  for i := pr + 1 to ps - 1 do
    sum := sum + a[i];
  writeln('Сумма элементов массива равна: ', sum);
end.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.06.2011, 01:03
Ответы с готовыми решениями:

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

Найти сумму элементов массива, расположенных между первым и последним положительными элементами
Имеется файл, в котором содержится размерность массива и его элементы. Вычислить: A. минимальный...

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

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

1
298 / 298 / 150
Регистрация: 07.05.2011
Сообщений: 592
17.06.2011, 07:45 2
Насчет оптимальности все в порядке, просто можно немного по-другому. Фрагмент:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  i:= 1;
  while (i<=nf) and (a[i]<>0) do
    inc(i);
 
  j:= nf;
  while (j>=i) and (a[i]<>0) do
    dec(j);
 
  sum := 0;
  inc(i);
  while (i<j) do
    begin
      sum := sum + a[i];
      inc(i);
    end;
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
17.06.2011, 07:45
Помогаю со студенческими работами здесь

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

Сумму элементов массива, расположенных между первым и последним нулевыми элементами.
1)Сумму элементов массива, расположенных между первым и последним нулевыми элементами. С меня...

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

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


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

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

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