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

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

Войти
Регистрация
Восстановить пароль
 
DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 290
#1

Массив целых чисел... - C++

07.12.2011, 12:38. Просмотров 262. Ответов 5
Метки нет (Все метки)

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
#include <iostream>
using namespace std;
 
int main()
{
        setlocale(LC_ALL, "rus");
        //setlocale(LC_ALL, "rus")
        long i,j,k,m,n,buf;
        long * a;//Указатель на элементы последовательности
        do
        {
                cout<<"Введи число элементов : ";cin>>n;//Ввели число элементов
                a = new long[n];//Память под элементы последовательности
                cout<<"\tВведите последовательность\n";
                                cout<<"a["<<1<<"] = ";
                                cin>>a[0];m = a[0];
                //Вводим последовательность
                for(i = 1; i < n; i++)
                                {
                                        cout<<"a["<<i + 1<<"] = ";
                                        cin>>a[i];
                                        if(m < a[i])
                                                m = a[i];
                                }
                                cout<<"Предел последовательности : "<<m<<endl;
                cout<<"\tОтсортированная последовательность\n";
                //Cортируем методом прямого выбора
                for(i = 0, k = 0; i < n; i++)
                {
                        for(j = i + 1; j < n; j++)
                        {
                                if(a[j] < a[i])
                                {
                                        buf = a[i];
                                        a[i] = a[j];
                                        a[j] = buf;
                                        k++;//Счётчик операций
                                }
                        }
                        cout<<"a["<<i + 1<<"] = "<<a[i]<<"\n";
                }
                cout<<"Кол-во операций : "<<k<<"\n";
                cout<<"Сумма m + n   : "<<m + n<<"\n";
                delete [] a;//Чистим память
                cout<<"Введите 1 для продолжения \n";
                cin>>n;
        }
        while(n == 1);
    return 0;
}
Нужно сделать, чтобы если человек вводит числа в массив, например (1 2 3 -5 -7 6 9 8 4 0) и отрицательные числа должны заменяться на -1 т.е: Получется отсортированный массив:
-1
-1
0
1
2
3
4
6
8
9
т.е. Чтобы на том м есте где должны находится числа -5 и -7 они заменялись на -1.
А препод вообще просит например, если массив размерности 8 и вводится 4 числа: 0 4 1 7, чтобы выдавало массив :
0
1
-1
-1
4
-1
7
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.12.2011, 12:38     Массив целых чисел...
Посмотрите здесь:

Опишите массив 30 действительных чисел, матрицу 6Х6 целых чисел, 256 символов - C++
Опишите массив 30 действительных чисел, матрицу 6Х6 целых чисел, 256 символов.

Дан массив целых чисел. Верно ли, что он состоит только из простых чисел? - C++
Дан массив целых чисел. Верно ли, что он состоит только из простых чисел?

Дано двумерный массив целых чисел. В каждом столбце найти сумму и количество чисел.(исправить) - C++
Исправить программу: Дано двумерный массив целых чисел. В каждом столбце найти сумму и количество чисел. #include &lt;iostream.h&gt; ...

В каждом столбце матрицы найти сумму и количество нечетных чисел - C++
Дан двумерный массив целых чисел. В каждом столбце найти сумму и количество нечетных чисел.

Дан массив В[0:n-1] целых чисел и числа x и y , где x<y. на основе элементов массива В сформировать массив D[0:m-1] - C++
Нужен полный текст программы, заранее благодарен

Дан массив целых чисел. Переписать все положительные элементы во второй массив, а остальные - в третий - C++
Дан массив целых чисел. Переписать все положительные элементы во второй массив, а остальные - в третий Помогите, подправьте немного код,...

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

массив целых чисел - C++
помогите кто сделать пожалуйста Дан массив целых чисел. Рассмотреть отрезки массива(группы идущих подряд чисел), состоящие из нечетных...

массив целых чисел - C++
Помогите решить... очень нужно... Дан массив целых чисел. Составить программу обработки двумерных массивов: Для каждого столбца матрицы...

массив целых чисел. - C++
Дан массив целых чисел. а) Разделить все элементы массива на его первый элемент; б) увеличить все элементы массива в два раза; в) уменьшить...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
07.12.2011, 12:56     Массив целых чисел... #2
Цитата Сообщение от DebieCooepr Посмотреть сообщение
А препод вообще просит
этого не понял

А так вот
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
#include <iostream>
 
 
int arr_cmp (const void *a, const void *b)
{
    return * (int *) a - * (int *) b;
}
 
void print (int *arr, size_t size)
{
    for (int i = 0; i < size; i++)
        std::cout<<arr[i]<<"  ";
}
 
int main(int argc, char* argv[])
{
    int arr[] = { 1, 2, 3, -5, -7, 6, 9, 8, 4, 0};
    size_t size = sizeof (arr) / sizeof (arr[0]);
 
    print (arr,size);
 
    qsort (arr,size,sizeof (arr[0]),arr_cmp);
 
    std::cout<<std::endl;
 
    for ( int i = 0 ; arr[i] < 0 && i < size ; i++)
        arr[i] = -1;
 
    print (arr,size);
 
        std::cout<<std::endl;
 
    system  ("pause");
    return 0;
}
DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 290
07.12.2011, 13:04  [ТС]     Массив целых чисел... #3
Прога должна быть универсально чтобы пользователь сам вводил сови числа. Это всё у меня есть, я только не знаю что с отрицательными числанми делать т.к сам задание :
Имеется массив целых чисел a[1]...a[n], причём вс е числа НЕОТРИЦАТЕЛЬНЫ и не превосходят m. Отсортировать этот массив; число действий порядка m+n
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
07.12.2011, 13:07     Массив целых чисел... #4
Цитата Сообщение от DebieCooepr Посмотреть сообщение
Прога должна быть универсально чтобы пользователь сам вводил сови числа.
Переделайте мою, там только ввод добавить, это две строчки


Цитата Сообщение от DebieCooepr Посмотреть сообщение
Имеется массив целых чисел a[1]...a[n], причём вс е числа НЕОТРИЦАТЕЛЬНЫ и не превосходят m. Отсортировать этот массив; число действий порядка m+n
Какое-то задание странное, не такое как первое


Цитата Сообщение от DebieCooepr Посмотреть сообщение
и отрицательные числа должны заменяться на -1 т.е: Получется отсортированный массив:
-1
-1
0
1
2
3
4
6
8
9
Просили это?
DebieCooper
34 / 34 / 1
Регистрация: 12.10.2011
Сообщений: 290
07.12.2011, 13:22  [ТС]     Массив целых чисел... #5
Цитата Сообщение от go Посмотреть сообщение
Просили это?
Это я к приперу привел.
Вообще я делаю по свойму и мне осталось только что-то сделать с отрицательными числами если их введёт пользователь.
Может отрицательные числа просто удалить или ещё что-нибудь.
go
Эксперт C++
3586 / 1366 / 128
Регистрация: 16.04.2009
Сообщений: 4,528
07.12.2011, 13:23     Массив целых чисел... #6
Цитата Сообщение от DebieCooepr Посмотреть сообщение
и мне осталось только что-то сделать с отрицательными числами если их введёт пользователь
26-27 строчка в моем примере
Yandex
Объявления
07.12.2011, 13:23     Массив целых чисел...
Ответ Создать тему
Опции темы

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