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

Задания по одномерным массивам. - C++

Восстановить пароль Регистрация
 
Инна Поттер
Сообщений: n/a
14.11.2010, 13:00     Задания по одномерным массивам. #1
Прошу помочь..
1. Дана последовательность целых чисел a1,a2, ..., an. Выяснить, какое число встречается раньше - положительное или отрицательное.
2. В целочисленной последовательности есть нулевые элементы. Создать массив из номеров этих элементов.
3. Дан одномерный массив A[M]. Найти
min(a(1),a(3),...,a(2k+1)) + max (a(2),a(4),...,a(2k))
4. Дана последовательность действительных чисел a(1),a(2),...,a(n). Выяснить, будет ли она возрастающей.
5. Дана последовательность целых чисел a(1), a(2),...,a(n). Определить количество инверсий.
6. Даны натуральные числа M, n и целые числа a1,a2,...an. Все элементы массива разные. Удалить из массива ближайший к заданному числу M.
Указание. Для того, что бы решить данную задач, необходимо:
- Найти номер соответствующего элемента - k.
- Сдвинуть все элементы, начиная с (k+1)-го, на один элемент влево
- Последнему элементу присвоить 0.
7. Сортировка выбором. Дана последовательность чисел a1,a2,...,an. Требуется переставить элементы так, что бы они были расположены по убыванию. Для этого в массиве, начиная с первого, выбирается наибольший элемент и ставится на первое место, а первый на место наибольшего. Затем, начиная со второго, эта процедура повторяется. Написать алгоритм сортировки выбором.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Mayonez
 Аватар для Mayonez
379 / 271 / 20
Регистрация: 26.12.2009
Сообщений: 875
14.11.2010, 13:13     Задания по одномерным массивам. #2
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <iostream>
using namespace std;
 
#define SIZE 10
 
int main()
{
   int mas[SIZE] = {2, 45, -4, 0, 32, 2, -45, 6, -3, 1};
   for (int i = 0; i < SIZE; i++)
   {
      if (mas[i] < 0) {cout <<"otricatelnoe!\n"; break;}
      if (mas[i] > 0) {cout <<"polozitelnoe!\n"; break;}
   }
   return 0;
}
#1
Tambel
32 / 32 / 2
Регистрация: 10.10.2010
Сообщений: 89
14.11.2010, 13:15     Задания по одномерным массивам. #3
Цитата Сообщение от Инна Поттер Посмотреть сообщение
1. Дана последовательность целых чисел a1,a2, ..., an. Выяснить, какое число встречается раньше - положительное или отрицательное.
Просто надо указать положителен или отрицателен первый элемент массива?
Mayonez
 Аватар для Mayonez
379 / 271 / 20
Регистрация: 26.12.2009
Сообщений: 875
14.11.2010, 13:18     Задания по одномерным массивам. #4
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
using namespace std;
 
#define SIZE 10
 
int main()
{
   int mas[SIZE] = {2, 0, 4, 0, 32, 2, 0, 6, 5, 1};
   int mas2[SIZE];
   int j = 0;
   for (int i = 0; i < SIZE; i++)
      if (mas[i] == 0) {mas2[j] = i; j++;}
   for (int i = 0; i < j; i++)
      cout << mas2[i] << " ";
   return 0;
}
#2

Добавлено через 46 секунд
Цитата Сообщение от Tambel Посмотреть сообщение
Просто надо указать положителен или отрицателен первый элемент массива?
первый элемент может быть и 0!?
asics
Freelance
Эксперт C++
 Аватар для asics
2838 / 1775 / 144
Регистрация: 09.09.2010
Сообщений: 3,842
14.11.2010, 13:20     Задания по одномерным массивам. #5
Цитата Сообщение от Инна Поттер Посмотреть сообщение
7. Сортировка выбором.
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
#include <iostream>
 
template<class T>
void selectSort(T a[], long size) {
  long i, j, k;
  T x;
 
  for( i=0; i < size; i++) {    // i - номер текущего шага
    k=i; x=a[i];
 
    for( j=i+1; j < size; j++)  // цикл выбора наименьшего элемента
      if (  a[j] > x ) {
        k=j; x=a[j];            // k - индекс наименьшего элемента
      }
 
    a[k] = a[i]; a[i] = x;      // меняем местами наименьший с a[i]
  }
}
 
int main()
{
    const int n = 8;
    int m[n] = {53, 6, 34, 45, 34, 0, -45, 47};
    selectSort(m, 8);
    for(int i = 0; i < n; i++)
    {
         std::cout << m[i] << ' ';
    }
}
http://www.algolist.manual.ru/sort/select_sort.php
Mayonez
 Аватар для Mayonez
379 / 271 / 20
Регистрация: 26.12.2009
Сообщений: 875
14.11.2010, 13:21     Задания по одномерным массивам. #6
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include <iostream>
using namespace std;
 
#define SIZE 10
 
int main()
{
   int mas[SIZE] = {2, 0, 4, 0, 32, 2, 0, 6, 5, 1};
   bool y = 1;
   for (int i = 0; i < SIZE-1; i++)
      if(mas[i] > mas[i+1]) {y = 0; break;}
   y == 1 ? cout << "vozrastauschaia!\n" : cout << "nevozrast!\n";
   return 0;
}
#3
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.11.2010, 13:48     Задания по одномерным массивам.
Еще ссылки по теме:

Задача по одномерным массивам C++
C++ Этап в задаче по одномерным массивам
лаба по одномерным и многомерным массивам C++

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

Или воспользуйтесь поиском по форуму:
NikITKA123
19 / 18 / 1
Регистрация: 28.04.2010
Сообщений: 86
14.11.2010, 13:48     Задания по одномерным массивам. #7
№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
#include <iostream>
using namespace std;
int main()
{
    int n, i, min, max, sum;
    cout << "Vvedite n: ";
    cin >> n;
    int *a = new int[n];
    cout << "Vvedite elementi:\n";
    for(i=0; i<n; i++)
        cin >> a[i];
    for(i=0; i<n; i+=2){
        min = a[0];
        if(min > a[i]){
            min = a[i];
            cout << "Minimal`niy element raven: " << min << endl; break;
        }
    }
    for(i=1; i<n; i+=2){
        max = a[1];
        if(max < a[i]){
            max = a[i];
            cout << "Maximal`niy element raven: " << max << endl; break;
        }
    }
    sum = min + max;
    cout << "Summa ravna: " << sum << endl;
    return 0;
}
Yandex
Объявления
14.11.2010, 13:48     Задания по одномерным массивам.
Ответ Создать тему
Опции темы

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