Форум программистов, компьютерный форум, киберфорум
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 37, средняя оценка - 4.97
karakumba
0 / 0 / 0
Регистрация: 20.11.2008
Сообщений: 4
#1

Удалить из массива все максимальные элементы - C++

20.11.2008, 01:52. Просмотров 4708. Ответов 8
Метки нет (Все метки)

Всем здравствуйте!!! Помогите плиз заочнику неуспевающему с контрольными из-за работы. Учусь на первом курсе. Я конечно понимаю, что позорю свою будующую профессию, но ничего не остаётся. Нужно написать маленькие программки.

I. Дан массив размером nxn, элементы которого целые числа:
1) для каждого столбца подсчитать сумму четных положительных элементов и записать данные в новый массив.
2) найти минимальный элемент в каждом столбце и записать данные вновый массив.

II. В одномерном массиве, элементы которого - целые числа, произвести следующие действия:
1) удалить из массива все максимальные элементы.
2) вставить новый элемент перед всеми четными элементами.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.11.2008, 01:52
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Удалить из массива все максимальные элементы (C++):

Из целочисленного массива Х все четные элементы записать в массив Y. Удалить в массивах максимальные элементы - C++
Из целочисленного массива Х(N) все четные элементы записать в массив Y(k). Удалить в массивах максимальные элементы. В программе написать...

Удалить из целочисленного массива все максимальные элементы - C++
Удалить из целочисленного массива все максимальные элементы и вставить после последнего удаленного минимальный элемент. Буду очень...

Удалить из массива все максимальные элементы (с помощью векторов, алгоритмов) - C++
Решить надо с помощью векторов, алгоритмов. Я так не умею и вот, что у меня получилось: #include <iostream> #include <algorithm> ...

Алгоритмы STL. Дана последовательность целых чисел. Удалить из массива все максимальные элементы - C++
Дана последовательность целых чисел.Удалить из массива все максимальные элементы. Использовать Алгоритмы STL. Помогите доработать) ...

Массив: Сформировать третий массив, в который включить все отрицательные элементы массива А и все максимальные элементы массива В. - C++
Даны массивы целых чисел A и B. Сформировать третий массив, в который включить все отрицательные элементы массива А и все максимальные...

Создать двусвязный список, содержащий целые числа. Удалить все максимальные элементы - C++
Создать двусвязный список, содержащий целые числа. Удалить все максималь* ные элементы. Например, для списка 5 2 9 1 3 7 9 2 9, результат...

8
seravr
1 / 1 / 0
Регистрация: 11.11.2008
Сообщений: 34
20.11.2008, 10:22 #2
Пиши в личку или на мыло, договоримся
0
greshnikk
31 / 31 / 0
Регистрация: 05.11.2008
Сообщений: 162
20.11.2008, 13:32 #3
Ты хочешь чтобы тебе написали программу ? Или у тебя есть какие то конкретные вопросы ?
0
StarWorm
17 / 16 / 4
Регистрация: 20.11.2008
Сообщений: 81
20.11.2008, 19:43 #4
Вроде бы задачки то не сложные... Это минут так на 10, может чуток больше!
0
greshnikk
31 / 31 / 0
Регистрация: 05.11.2008
Сообщений: 162
21.11.2008, 08:26 #5
этак рубля на 3... бакинских
0
StarWorm
17 / 16 / 4
Регистрация: 20.11.2008
Сообщений: 81
21.11.2008, 10:45 #6
II. В одномерном массиве, элементы которого - целые числа, произвести следующие действия:
1) удалить из массива все максимальные элементы.
Вот тебе приблизительный ответ на статическом массиве!!!
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
void delMax(int* arr,int &dimension)
{
    if(dimension==0)
    {
        cout<<"Array is empty!!!\n";
        return;
    }
    else
    {
        int max=arr[0];
        for(int i=1;i<dimension;i++)
            if(arr[i]>max)
                max=arr[i];
        for(int i=0;i<dimension;i++)
            if(arr[i]==max)
            {
                if(i==(dimension-1))
                {
                    arr[i]=NULL;
                    dimension--;
                    break;
                }
                for(int j=i;j<dimension-1;j++)
                {
                    arr[j]=arr[j+1];
                }
                dimension--;
            }
    }
}
 
int main()
{
    int dimension=9;
    int arr[]={9,5,7,8,6,3,5,6,1};
    for(int i=0;i<dimension;i++)
        cout<<arr[i]<<" ";
    cout<<"\n";
    for(int j=1;j<=13;j++)
    {
        delMax(arr,dimension);
        for(int i=0;i<dimension;i++)
            cout<<arr[i]<<" ";
        cout<<"\n";
    }
    
    getch();
    return 0;
}


Добавлено через 17 минут 36 секунд
II. В одномерном массиве, элементы которого - целые числа, произвести следующие действия:
2) вставить новый элемент перед всеми четными элементами.
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
void insertElement(int* arr,int &dimension,int number=0)
{
    if(dimension==0)
    {
        cout<<"Array is empty!!!\n";
        return;
    }
    for(int i=0;i<dimension;i++)
        if(arr[i]%2==0 && arr[i]!=0)
        {
            for(int j=dimension;j>i;j--)
                arr[j]=arr[j-1];
            arr[i]=number;
            dimension++;
            i++;
        }
}
 
int main()
{
    int dimension=9;
    int* arr=new int[100];
    int arr1[]={9,5,7,8,6,3,5,6,8};
    for(int i=0;i<dimension;i++)
        arr[i]=arr1[i];
    for(int i=0;i<dimension;i++)
        cout<<arr[i]<<" ";
    cout<<"\n";
    for(int j=1;j<=3;j++)
    {
        insertElement(arr,dimension,7);
        for(int i=0;i<dimension;i++)
            cout<<arr[i]<<" ";
        cout<<"\n";
    }
    
    delete [] arr;
    getch();
    return 0;
}
Пожалста!!! xD Только это все сделано без постоянного выделения памяти!!!

P.S. вставлять новый элемент можно любой...


Добавлено через 1 минуту 30 секунд
Ну что... Тебе еще что то надо???
0
karakumba
0 / 0 / 0
Регистрация: 20.11.2008
Сообщений: 4
22.11.2008, 00:02  [ТС] #7
StarWorm, Спасибо тебе большое!!! ты мне уже ни первый раз помогаеш) помоги последний раз если не трудно. Вроде всё остальное я уже решил))):o

) Дана последовательность из n действительных чисел.
) Вывести на экран номера всех минимальных элементов.
) найти номер последнего максимального элемента
Использовать только одномерный массив
0
StarWorm
17 / 16 / 4
Регистрация: 20.11.2008
Сообщений: 81
22.11.2008, 01:30 #8
Да тут делов то на пять минут!!! Так ты ничему и не научишься!!! Хотя следовало бы...
Но раз уж все так запущенно , то я конечно же помогу!!!

Добавлено через 33 минуты 27 секунд
Ну вот и сделано... Но в след раз надо говорить свои пожелания, т.к. сделать можно по разному
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
#include "stdafx.h"
#include <conio.h>
#include <iostream>
#include <cmath>
 
using namespace std;
 
//using std::cout;
//using std::cin;
 
float getMin(float* arr,int dimension)
{
    float min= arr[0];
    for(int i=1;i<dimension;i++)
        if(min>arr[i])
            min=arr[i];
    return min;
}
 
void showMin(float* arr,int dimension, float min)
{
    int count=0;
    cout<<"Min elements are:\n\n";
    for(int i=1;i<dimension;i++)
        if(arr[i]==min)
            cout<<++count<<") "<<"#"<<i+1<<"\t";
    cout<<"\n";
    cout.fill('_');
    cout.width(50);
    cout<<""<<"\n\n";
 
}
 
void printArr(float* arr,int dimension)
{
    for(int i=0;i<dimension;i++)
    {
        cout.precision(1);
        cout.width(4);
        cout<<fixed<<arr[i]<<" ";
    }
    cout<<"\n";
    cout.fill('_');
    cout.width(50);
    cout<<""<<"\n\n";
}
 
int main()
{
    float min=0;
    int dimension=6;
    float arr[]={7.0,8.0,3.0,4.0,5.0,6.0};
    cout<<"Your array is:\n\n";
    printArr(arr,dimension);
    min=getMin(arr,dimension);
    showMin(arr,dimension,min);
    cout<<"Number of last minimum element is:\n\n";
    for(int i=dimension-1;i>=0;i--)
        if(arr[i]==min)
        {
            cout.fill(' ');
            cout<<"#"<<i+1;
            cout.width(48);
            cout<<"<---- it's last :)";
        }
 
    getch();
    return 0;
}
P.S. вообще я могу делать без функций... И весь код у тебя будет содержаться в main()
0
B1ackFoX
0 / 0 / 0
Регистрация: 09.12.2008
Сообщений: 7
09.12.2008, 19:29 #9
АЙ ЯЙ ЯЙ ПОМОГИТЕ КТО НИБУДЬ !!!!!!!!!
Помогите решить задачки

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

2) В двумерном массиве, элементы которого - целые числа, произвести следующие действия:
Уплотнить массив, удалив из него все нулевые строки и столбцы.

Как я почитал тут моя 1-ая задачка сильно похожа на задачу автора темы, ток я не пойму что надо где заменить....

Добавлено через 43 минуты 57 секунд
И ещё 1 вопрос(не стану создавать новую тему)
Как в С++ подключить библиотеки???(<iostream> <cmath>)
Сам я програмирую в Eclipse(аналог С++)
0
09.12.2008, 19:29
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.12.2008, 19:29
Привет! Вот еще темы с ответами:

Для одномерного массива удалить максимальные элементы и упорядочить по убыванию - C++
Задан массив Z(n) целых чисел. Найти максимальный элемент массива, и если это простое число – удалить все элементы, равные максимальному...

В заданной матрице удалить все столбцы, содержащие максимальные элементы среди диагональных элементов - C++
Сгенерировать матрицу размера NxN из случайных числел (N вводится с клавиатуры). Удалить все столбцы, содержащие максимальных элемент среди...

Удалить из массива целых чисел все нули. Сформировать два новых массива. В первый переписать все элементы данного массива с четными номерами, во второ - C++
Удалить из массива целых чисел все нули. Сформировать два новых массива. В первый переписать все элементы данного массива с четными...

Удалить из массива, в котором все элементы различны, максимальный и минимальный элементы - C++
Удалить из массива, в котором все элементы различны: а) максимальный элемент б) минимальный элемент Добавлено через 4 минуты ...


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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru