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

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

Войти
Регистрация
Восстановить пароль
 
8Reset8
0 / 0 / 0
Регистрация: 16.05.2013
Сообщений: 59
#1

Заменить единицами те элементы которые находятся после малейшего - C++

13.06.2013, 18:29. Просмотров 305. Ответов 6
Метки нет (Все метки)

Дан одномерный массив Х, который состоит из 12 элементов. Заменить единицами те элементы которые находятся после малейшего. Помогите кто может, ато не пойму как определить малейший елемент и задать чтоб все после него стали еденицами. Если можно то попроще))

Добавлено через 18 минут
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream.h>
#include <math.h>
int main()
{
  int X[12];
  for(int i=0;i<20;i++)
  {
   cout<<"Enter X["<<i<<"]=:"; cin>>X[i];
  }
  int m=X[0];
  for(int i=0;i<12;i++){
  if (X[i]<m)
  m=X[i];
 
  }
  system("pause");
  return 0;
}
Вот я набросал поиск малейшого элемента а дальше незнаю(((
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.06.2013, 18:29
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Заменить единицами те элементы которые находятся после малейшего (C++):

Элементы матрицы умножить на скаляр C=5,2. Элементы третьего столбца заменить единицами - C++
Не могу понять как вычислить матрицу, подскажите пожалуйста=) Данная матрица А (4,5), элементы умножить на скаляр C = 5,2. Элементы...

Заменить все положительные элементы матрицы единицами - C++
Подскажите, пожалуйста. Я написал программу, которая выводит на экран матрицу размером 10х10 (рандомное заполнение двумерного массива). Как...

Заменить в исходном массиве единицами элементы с четвертого по седьмой - C++
Заменить в исходном массиве единицами элементы с четвертого по седьмой. Вот код: #include &lt;iostream&gt; #include &lt;cstdlib&gt; #include...

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

В массиве заменить все элементы, следующие за наименьшим элементом, единицами (найти ошибку) - C++
Задание: В массиве С заменить все элементы, следующие за наименьшим элементом единицами. Вот код: #include &lt;iostream&gt; #include...

Как заменить 0 в трехмерном массиве, которые находятся между определенными числами, на -1? - C++
На вход программе дается размер матрицы (n), далее мы увеличиваем ее, но нумеруем только изначальный массив, то есть только нечетные строки...

6
Adpecke
23 / 23 / 2
Регистрация: 28.06.2012
Сообщений: 57
13.06.2013, 18:33 #2
Когда ищешь минимальный элемент записывай еще его позицию в массиве в другую переменную (например в pm).
Потом
C++
1
2
3
for(int i=pm+1;i<12;i++){
  X[i]=1;
}
1
8Reset8
0 / 0 / 0
Регистрация: 16.05.2013
Сообщений: 59
13.06.2013, 18:50  [ТС] #3
а PM вначале будет ровно 0 или как?
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
13.06.2013, 18:54 #4
Проще не получается...
Кликните здесь для просмотра всего текста
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
#include <iostream>
#include <algorithm>
#include <vector>
#include <random>
#include <iterator>
 
int main() {
    
    const int size = 12;
    std::vector<int> v(size);
    
    std::random_device rd;
    std::mt19937 gen(rd());
    std::uniform_int_distribution<> dis(1,100);
 
    std::generate( begin(v), end(v), [&](){ return dis(gen);} );
 
    for(const auto& i: v)
    {
        std::cout << i << " ";
    }
    std::cout << std::endl;
 
    auto min = std::min_element( begin(v), end(v) );
    std::cout << *min << std::endl;    
    
    std::for_each( std::next(min), end(v), [](int& i){ i = 1; } );
    
    for(const auto& i: v)
    {
        std::cout << i << " ";
    }
    std::cout << std::endl;
 
    return 0;
}
1
8Reset8
0 / 0 / 0
Регистрация: 16.05.2013
Сообщений: 59
13.06.2013, 18:55  [ТС] #5
Спасибо конечно, но такой листинг я в жизни не пойму))
0
Tulosba
:)
Эксперт С++
4396 / 3232 / 297
Регистрация: 19.02.2013
Сообщений: 9,045
13.06.2013, 18:55 #6
Цитата Сообщение от 8Reset8 Посмотреть сообщение
Спасибо конечно, но такой листинг я в жизни не пойму))
Курочка по зернышку клюет
0
8Reset8
0 / 0 / 0
Регистрация: 16.05.2013
Сообщений: 59
13.06.2013, 19:14  [ТС] #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
#include <iostream.h>
#include <math.h>
int main()
{
int X[5];
for(int i=0;i<5;i++)
{
cout<<"Enter X["<<i<<"]=:"; cin>>X[i];
}
int z,m;
m=X[0]; z=0;
for(int i=1;i<5;i++){
if (X[i]<m)
{m=X[i], z=i; }};
cout<<"min="<<m<<endl;
for(int i=z+1;i<5;i++){
X[i]=1;
}
for(int i=0;i<5;i++){
cout<<X[i]<<" "<<endl; }
system("pause");
return 0;
}
вот попроще сделал))
0
13.06.2013, 19:14
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.06.2013, 19:14
Привет! Вот еще темы с ответами:

В массиве из 15 элементов, вывести те элементы , которые находятся перед максимальным - C++
В массиве из 15 элементов, вывести те элементы , которые находятся перед максимальным.

Как получить элементы матрицы, которые находятся ниже побочной диагонали? - C++
работа с матрицами. как описать элементы, которые находятся ниже побочной диагонали? если можно, то дайте пример пожалуйста

Просуммировать все элементы массива, которые находятся между первым и последним нулем - C++
У меня такая задача: мне надо просуммировать все элементы массива, которые находятся между первым нулем в массиве и последним нулем. Для...

Возвести в квадрад отрицательные элементы, которые находятся на главной диагонали и выше нее. - C++
Если не трудно, то подскажите. вот дана матрица n*n и мне надо возвести в квадрад отриц. элем., которые находятся на главной диагонали и...


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

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

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