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

Посчитать разницу элементов в массиве

03.06.2014, 22:22. Показов 519. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Надо посчитать разницу элементов между первым отрицательным и вторым положительным элементами.
Что в моем коде не так?
Кликните здесь для просмотра всего текста
C++
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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#include <ctime>
#include <iostream>
using namespace std;
 
 
 
  template<class Type>
  class Array
  {
  private:
      Type *arr;
      int _size;
  public:
      void Random()
      {
          Type randomNumber;
        for(int i=0;i<_size;i++)
        {
                
                        randomNumber=-5+(rand()% ((100-1) *1 + 1))/Type(10);
                        arr[i]=randomNumber;
                
        }
      }
      Array ( int size)
      {
          _size = size;
         arr = new Type[_size];
         for(int i=0;i<_size;i++)
             arr[i]=0;
      }
      void print()
      {
         for(int i=0;i<_size;i++)
              cout << arr[i] << " ";
         cout << endl;
      }
      ~Array() { 
          
          delete[]arr;
      }
    Type diff();
  };
      
 
 
  template<class Type>
  Type Array<Type>::diff()
  {
      Type diff = 0;
      int flag1 = 0 ,flag2 = 0;
      for(int i=0;i<_size;i++)
      {
          if(arr[i]<0) {
              i = flag1;
              break; }
 
      }
 
 
      for(int i=flag1;i<_size;i++)
      {
          if(arr[i]>0)
          {
              flag1 = i;
              break;
          }
      }
 
 
      for(int i=flag1;i<_size;i++) {
          if(arr[i]>0)
          {
              flag2 = i;
              break;
          }}
 
 
      for(int i = flag1; i< flag2; i++)
          diff-=arr[i];
 
 
      return diff;
  }
 
 
 int main()
 {
     srand(time(NULL));
     Array<double> arr(20);
     arr.Random();
     arr.print();
        cout << endl << " Diff between first negative and second positive: " <<  arr.diff() << endl;
        return 0;
 }


Добавлено через 1 час 50 минут
Кто-то что-то посоветует?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
03.06.2014, 22:22
Ответы с готовыми решениями:

В массиве вычислить разницу двух соседних элементов
В заданном массиве В (15) вычислить разницу двух соседних элементов и сформировать из них в массив...

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

Посчитать сколько элементов в массиве =55
Здравствуйте . Есть такая задача: Проанализировать массив данных из 14 элементов. Подсчитать...

Посчитать сумму элементов в массиве
Программа вводит и выводит массив, но не считает сумму, произведение и т.д. Подскажите в чём...

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

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

Посчитать количество различных элементов в массиве
Дан линейный массив целых чисел ввести с клавиатуры не менее 10 элементов и посчитать сколько в нем...

Посчитать количество повторяющихся элементов в массиве а
где ошибка? почему компилятор пишет : $clisp main.lisp timeout: failed to run command ‘clisp’: No...

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


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

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

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