Форум программистов, компьютерный форум CyberForum.ru

в массиве вычислить разницу между первим отрицательним и вторим положительним елементом - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Реализовать класс Goods http://www.cyberforum.ru/cpp-beginners/thread912480.html
Всем доброго времени суток. Задачу задали решить на C++. Не могу довести её до ума. Программа запускается, но некорректно работает, а надо, чтобы работала, как часы на спасской башне. :) Если у кого-нибудь есть свободное время, то посмотрите её пожалуйста. Вот условие: реализовать класс Goods, добавив поле-дату поступления товара на склад (использовать класс Date из задания 29). Реализовать...
C++ Возведение a в степень b Пользователь вводит числа а и b, программа считает "а" в степени "b". Помогите написать код http://www.cyberforum.ru/cpp-beginners/thread912477.html
C++ Как сделать вывод в консоль
count << "GOLD MEMBER из голландии парень крутой,Голд Мембер Член Золотой";
C++ Класс с деструктором без конструктора
Ребят подскажите, имеем например такой код: class first { public: first() { }
C++ Тест по потокам http://www.cyberforum.ru/cpp-beginners/thread912425.html
Стыдно уже просить, но только что скинули доп. список вопросов по потокам(( Была всего одна лекция и ничего не ясно. Если не трудно, помогите пожалуйста, а то завтра уже экзамен((( 1. Иерархия классов потоков ввода-вывода.
C++ Вычислить сумму элементов массива, индексы которых кратны 3 Заполнить одномерный массив из 15 элементов случайными целыми числами. Вывести массив на чистом экране. Вычислить сумму элементов массива, индексы которых кратны 3. Ответ вывести с новой строки. подробнее

Показать сообщение отдельно
unikalen
-2 / 1 / 0
Регистрация: 06.06.2013
Сообщений: 65
26.06.2013, 14:49  [ТС]     в массиве вычислить разницу между первим отрицательним и вторим положительним елементом
@Gepar, Сори завтикал) вот
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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
#include "stdafx.h"
#include <iostream>
#include <ctime>
#include <cmath>
#include <cstdlib>
#include <conio.h>
using namespace std;
 
 
int arefm( int arr[], int n) {
    int count = 0;
 
    double s = 0;
 
    for ( int i = 0; i < n; i++ ) {
        s += arr[i];
        count++;
    }
    double q = ( s / n );
    int ix = 0, d = 0;
 
    for (int i = 0; i < n; i++) {
        if(arr[i] <= (q + 1) && arr[i] >= (q - 1))
            return arr[i];
 
    }
    return -1;
 
 
}
void b(int *arr, int size) {
    int s=0;
    for (int i=0; i<size; i++) {
        s+=arr[i];
    }
    int sr=s/size;
    int ind=0;
    int min=abs(arr[ind]-sr);
    for (int i=0; i<size; i++) {
        if(abs(arr[i]-sr)>min)continue;
        else {
            min=abs(arr[i]-sr);
            ind =i;
        }
    }
    int m=arr[ind];
    cout << "Nomer = " << ind << endl << "Element = " << m << endl;
}
int raznica(int arr[], int n ) {
 
    int k = 0, d = 0, l1 = 0, l2 = 0 ;
    int razn = 0;
    for(int i = 0 ; i < n; i++) {
        if (arr[i] < 0) {
            k++;
            if( k == 1 )
                l1 = i;
        }
 
        if (arr[i] > 0) {
            d++;
            if( d == 2 )
                l2 = i;
        }
    }
 
    //razn = arr[l1];
    for (int i = l1 + 1; i < l2; i++)
        //razn = razn - arr[i];
        razn = arr[i] - arr[i+1];
 
    return razn;
 
}
 
void printMas(int arr[], int n) {
    for( int i = 0; i < n; i++ ) {
 
        cout << "A[" << i << "]" << " = " << arr[i]  << endl;
 
        //cout<<"\n";sum+=arr[i];
    }
    cout<<"\n";
}
 
void elements(int arr[], int n) {
    int par=0 , npar=n-1;
    int *mas= new int[n];
    for( int i = 0; i < n; i++ ) {
        if(arr[i]%2 == 0) {
            mas[par] = arr[i];
            par++;
        } else {
            mas[npar] = arr[i];
            npar--;
        }
    }
 
    for(int i = 0 ; i < n ; i ++)
        arr[i] = mas[i];
    //printMas(arr, n );
    delete [] mas;
}
 
 
 
 
int main() {
    const int N = 10;
    int *arr = new int[N];
    int sum = 0;
    int arTwoDel = 0;
    srand(time(NULL));
    for ( int i =0; i <N; i++ ) {
        arr[i] = rand() %10 -5;
    }
 
 
    printMas(arr, N);
 
    //elements(arr, N);
 
 
    elements(arr,N);
 
    printMas(arr, N);
    b(arr,N);
    //cout << sum;
    //cout<<"\n";
    //arTwoDel = sum/N;
    //cout << arTwoDel;}
 
    //int f = arefm( arr, N );
    //
    //if(f==-1)
    //  //cout<<"NoFIND"<<endl;
    //print("NoFind", -1);
    //   //cout << " ix = " << f << endl;
    //print(" ix = ", f);
 
    //int raznc = raznica( arr, N );
    ////cout << "raznica = " << razn;
 
    //print("Raznica = ", raznc);
    //
 
 
    delete [] arr;
 
 getch();
    return 0;
}
 
Текущее время: 10:26. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru