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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.67
Rost.X
0 / 0 / 0
Регистрация: 10.04.2011
Сообщений: 3
#1

Копирование определенных элементов массива - C++

10.04.2011, 20:10. Просмотров 1500. Ответов 3
Метки нет (Все метки)

Условие:

Код
Задать массив из 10 вещественных чисел с помощью датчика случайных чисел.
Найти минимальный и максимальный элементы массива, указать их индексы. Из элементов расположенных между ними создать массив, вывести его на экран, подсчитать количество четных значений.
На печать числа выводить с тремя знаками после запятой.
Сделал всё кроме "Из элементов расположенных между ними создать массив, вывести его на экран"
С подсчётом четных значений сам справлюсь) Помогите именно с элементами между min и max. Заранее спасибо.

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
#include <iostream>
#include <iomanip>
#include <ctime>
 
using namespace std;
int main()
{
    srand((unsigned)time(NULL));
    setlocale(LC_CTYPE,"Russian");
    const int n=10;
    double a[n];
        for(int i=0;i<n;i++) a[i]=rand()%100;
        cout<<"Исходный массив: ";
            for(int i=0;i<n;i++)cout<<a[i]<<setw(5);
                cout<<endl;
    double min=a[0],n_min=0;
        for(int i=0;i<n;i++)
            if(a[i]<min)
            {
                min=a[i];
                n_min=i;
            }
 
            double max=a[0],n_max=0;
            for(int i=0;i<n;i++)
                if(a[i]>max)
                {
                    max=a[i];
                    n_max=i;
                }
                cout<<"Минимальное значение="<<min<<" его номер="<< n_min+1 << endl;
                cout<<"Максимальное значение="<<max<<" его номер="<< n_max+1 << endl;
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.04.2011, 20:10     Копирование определенных элементов массива
Посмотрите здесь:

C++ Нахождение количества определенных элементов массива
C++ Нахождение элементов матрицы в определенных областях
Перенос определенных элементов массива в другой массив C++
Копирование элементов из одного массива в другой C++
C++ Копирование элементов массива
C++ Сума определенных элементов матрицы
Копирование элементов из одного массива в другой C++
C++ Сумма определенных элементов массива
Найти сумму элементов матрицы в определенных строках C++
Объединение определенных символов строк и создание из их нового массива? C++
C++ Выборка и копирование элементов массива в новый массив с условием
C++ Копирование определенных строк

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
IrineK
Заблокирован
10.04.2011, 20:45     Копирование определенных элементов массива #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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
#include <iostream>
#include <iomanip>
#include <cmath>
#include <ctime>
 
using namespace std;
int main()
{       srand((unsigned)time(NULL));
        setlocale(LC_CTYPE,"Russian");
        const int n=10;
        double a[n];
        int i,j,start,finish;
        cout<<"Исходный массив:\n";
        for(i=0;i<n;i++) 
        {   a[i]=1.0*(rand()%100)/(rand()%10+1);
            cout<<fixed<<setw(8)<<setprecision(3)<<a[i];
        }
        cout<<endl;
        double min=a[0],n_min=0;
        for(i=1;i<n;i++)
             if(a[i]<min)
             { min=a[i];
               n_min=i;
             }
 
        double max=a[0],n_max=0;
        for(i=1;i<n;i++)
              if(a[i]>max)
              { max=a[i];
                n_max=i;
              }
      cout<<"Минимальное значение="<<min<<" его номер="<< n_min+1 << endl;
      cout<<"Максимальное значение="<<max<<" его номер="<< n_max+1 << endl;
 
      if(abs(n_min-n_max)<2)
          cout<<"Между экстремумами нет элементов.\n";
      else 
      { if(n_min<=n_max) 
        {   start=n_min+1;
            finish=n_max-1;
        }
      else
        {      start=n_max+1;
            finish=n_min-1;
        }
      
        double* b = new double [finish-start+1];
        for(i=start,j=0;j<finish-start+1;i++,j++)
            b[j]=a[i];
    
        cout<<"Массив между экстремумами:\n";
        for(j=0;j<finish-start+1;j++)
            cout<<setw(8)<<b[j];
        cout<<endl;
 
                delete[] b;
      }
    cin.get();
    return 0;
}
Миниатюры
Копирование определенных элементов массива  
Rost.X
0 / 0 / 0
Регистрация: 10.04.2011
Сообщений: 3
10.04.2011, 20:47  [ТС]     Копирование определенных элементов массива #3
Наигромнейшее спасибо)
IrineK
Заблокирован
10.04.2011, 20:50     Копирование определенных элементов массива #4
Кнопочку нажми - тогда поверю, что "Наигромнейшее".

Добавлено через 1 минуту
Верю. ))
Yandex
Объявления
10.04.2011, 20:50     Копирование определенных элементов массива
Ответ Создать тему
Опции темы

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