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

Сжать массив, удалив из него все элементы, модуль которых находится в интервале a,b - C++

Восстановить пароль Регистрация
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.89
//Александр
 Аватар для //Александр
6 / 6 / 0
Регистрация: 15.04.2010
Сообщений: 151
15.04.2010, 01:18     Сжать массив, удалив из него все элементы, модуль которых находится в интервале a,b #1
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
1. максимальный элемент массива;
2. сумму элементов массива, расположенных до последнего положительного
элемента.
Сжать массив, удалив из него все элементы, модуль которых находится в интервале a,b .
Освободившиеся в конце массива элементы заполнить нулями.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
15.04.2010, 01:18     Сжать массив, удалив из него все элементы, модуль которых находится в интервале a,b
Посмотрите здесь:

Сжать массив, удалив из него все элементы, модуль которых находится в интервале [a,b] C++
Сжать массив, удалив из него элементы, модуль которых находится в заданном интервале C++
C++ Сжать массив, удалив из него все элементы, модуль которых находится в интервале [a,b].
C++ Сжать массив, удалив из него все элементы, модуль которых находится в интервале [a, b]. освободившиеся в конце массива элементы заполнить нулями.
Сжать массив, удалив из него все элементы, модуль которых находится в интервале [a,b]. Освободившиеся в конце массива элементы заполнить нулями C++
Сжать массив, удалив из него все элементы, модуль которых находится в интервале [а, b] C++
C++ Сжать массив, удалив из него все элементы, модуль которых находится в интервале [a,b]
C++ Сжать массив, удалив из него все элементы, величина которых находится в интервале [a, b]

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Wital
15 / 15 / 1
Регистрация: 14.10.2009
Сообщений: 82
15.04.2010, 02:11     Сжать массив, удалив из него все элементы, модуль которых находится в интервале a,b #2
n - размер массива

1.максимум:
C++
1
2
3
4
5
max=a[0];
for (int i=1; i<n; i++)
 if (max<a[i])
  max=a[i];
 printf("Maximum - %d", &max);
2. сумма:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
int pos=-1; //позиция последнего положительного числа
int sum=0;
for (int i=n; i>=0; i--)
 if (a[i]>0)
 {
  pos=i;
  break;
 }
if (pos<0)
 printf("в массиве нет положительных чисел");
else
 {
   for (int i=0; i<=pos; i++)
    sum+=a[i];
 }
 printf("Сумма - %d ", &sum);
Vorona
Peace 2 all shining faces
 Аватар для Vorona
660 / 522 / 44
Регистрация: 05.03.2010
Сообщений: 1,256
15.04.2010, 03:54     Сжать массив, удалив из него все элементы, модуль которых находится в интервале a,b #3
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
#include <iostream.h>
#include <conio.h>
#include <stdlib.h>
#include <math.h>
 
void main(){
    clrscr();
 
    int *array, n, i;
    int max, sum = 0;
    int a, b;
 
    cout << "Enter quantity of elements: ";
    cin >> n;
    array = new int[n];
 
    for(i = 0; i < n; i++){
        cout << i << ": ";
        cin >> array[i];
    }
 
    max = array[0];
    for(i = 0; i < n; i++)
        if(array[i] > max)
            max = array[i];
    cout << "\n1.Max: "<<max;
 
    for(i = 0; i < n; i++)
        if(abs(array[i] - 1) < abs(array[i]))
            max = i;
 
    for(i = 0; i < max; i++)
        sum += array[i];
    cout << "\n2.Sum: " << sum;
 
    cout << "\n3.Enter a (from) & b (to):\n";
    cin >> a >> b;
 
    sum = 0;
    for(i = 0; i < n; i++)
        if(abs(array[i]) > a && abs(array[i]) < b){
            for(int j = i; j < n-1; j++)
                array[j] = array[j+1];
            array[n-1-sum] = 0;
            sum++;
            i--;
        }
 
    for(i = 0; i < n; i++)
        cout << array[i] << ' ';
 
 
    delete []array;
    getch();
}
Yandex
Объявления
15.04.2010, 03:54     Сжать массив, удалив из него все элементы, модуль которых находится в интервале a,b
Ответ Создать тему
Опции темы

Текущее время: 00:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru