Другие языки программирования и технологии

Microsoft Visual C++ 6.0 В одномерном массиве, состоящем из n вещественных элементов, вычислить...

1 и 2 сделал а вот 3 незнаю как. Подскажите, пожалуйста, кто знает!

В одномерном массиве, состоящем из n вещественных элементов, вычислить:
1 сумму элементов массива с нечетными номерами;
2 сумму элементов массива, расположенных между первым и последним отрицательными элементами.
3 Сжать массив, удалив из него элементы, модуль которых не превышает 1. Освободившиеся в конце массива элементы заполнить нулями.

Вот что получилось:

#include<iostream.h>
#include<math.h>
#include<windows.h>
#include<iomanip.h>
#include<time.h>
char buf[256];
char* RUS(const char*text)

{
CharToOem(text,buf);
return buf;
}
int main(void)
{
const int n=10;
float a[n];
int i;
cout<<rus("Введите>>a;
cout<<endl;>;
cout<<rus("Сумма><0 && first<0)
first=i;
if(a<0)
last =i; }
for(i=first+1; i<last;>;
cout<
#include <cmath>
#include <iostream>

using namespace std;

int main() {
    const int n = 10;
    double a[n];

    for (int c = 0; c < n; ++c) cin >> a[c];

    int nr = n;
    for (int r = 0; r < nr; ++r) {
        if ( fabs(a[r]) < 1 ) {
            for (int c = r; c < n - 1; ++c) a[c] = a[c + 1];
            a[n - 1] = 0;
            --nr;
            --r;
        }
    }

    for (int c = 0; c < 10; ++c) cout << a[c] << ' ';

    return 0;
}

STL:

#include <cmath>
#include <iostream>
#include <algorithm>

using namespace std;

bool op(double x) { return fabs(x) < 1; }

int main() {
    const int n = 10;
    double a[n];

    for (int c = 0; c < n; ++c) cin >> a[c];

    for (double *p = remove_if(a, a + n, op); p < a + n; ++p) *p = 0;

    for (int c = 0; c < 10; ++c) cout << a[c] << ' ';

    return 0;
}
Александр Ацтек
Александр Ацтек
58 415
Лучший ответ
void udalenie (A[size], &n)
{
int index=0;
int i=0;
while ( i больше n)
{
if (abs (A ) < 1)
del(i, n);

}
i++;

Кое где словами написал т. к мэйл перекодирует в хтмл коды)
}

}

void del (A[size], int index, int &n)
{
for (int i=index; i<n-1;>=A[i+1];
}
A[n]=0;
n--;
}