Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
Никита321
0 / 0 / 0
Регистрация: 21.02.2015
Сообщений: 4
1

Написать программу, которая увеличивает положительные элементы матрицы

21.02.2015, 08:11. Просмотров 873. Ответов 8
Метки нет (Все метки)

Написать программу, которая увеличивает положительные элементы матрицы A(m*x) на 5

[DELETED]

 Комментарий модератора 
Переписывайте задачу непосредственно в сообщение!
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.02.2015, 08:11
Ответы с готовыми решениями:

Напишите программу, которая увеличивает элементы массива с четными индексами на «1»
3 Напишите программу, которая увеличивает элементы массива с четными индексами...

Написать программу, которая вводит с файла элементы прямоугольной матрицы
Написать программу, которая вводит с файла элементы прямоугольной матрицы...

Написать функцию, которая переставляет элементы массива типа int так, что все положительные элементы предшествуют отрицательным.
Помогите плз написать... Написать функцию, которая переставляет элементы...

Написать программу, которая отрицательные значения массива меняет на 0, а положительные на 1.
Необходимо написать программу, которая отрицательные значения массива меняет на...

Всю голову сломала этими матрицами! Дана матрица.Написать программу, которая упорядочивает элементы каждой строки этой матрицы по возрастанию
Дана матрица А(nxn). Написать программу, которая упорядочивает элементы каждой...

8
Croessmah
++Ͻ
14777 / 8453 / 1605
Регистрация: 27.09.2012
Сообщений: 20,803
Записей в блоге: 2
Завершенные тесты: 1
21.02.2015, 08:38 2
ну а где ж нам матрицу то взять? Тож самим писать, да?
0
Никита321
0 / 0 / 0
Регистрация: 21.02.2015
Сообщений: 4
21.02.2015, 08:40  [ТС] 3
все, что есть, мне больше ничего не известно, я вообще не программист и задача не моя)
0
Croessmah
++Ͻ
14777 / 8453 / 1605
Регистрация: 27.09.2012
Сообщений: 20,803
Записей в блоге: 2
Завершенные тесты: 1
21.02.2015, 08:52 4
Лучший ответ Сообщение было отмечено Никита321 как решение

Решение

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
#include <iostream>
#include <vector>
 
template < typename T >
std::ostream & operator<< ( std::ostream & stream , const std::vector<T> & vec )
{
   for ( auto & e : vec )
      stream << e << ' ' ;
   return stream ;
}
 
template < typename T >
std::ostream & operator<< ( std::ostream & stream , const std::vector< std::vector<T> > & vec )
{
   for ( auto & e : vec )
      stream << e << '\n' ;
   return stream ;
}
 
 
int main()
{
   size_t m = 0 , x = 0 ;
   std::cin >> m >> x ;
   std::vector<std::vector<int>> vec ( x , std::vector<int>(m,3) ) ;
   std::cout << vec << "\n\n" ;
   for ( auto & obj : vec )
      for ( auto & e : obj )
         if ( e > 0 )
         e+=5 ;
   std::cout << vec << std::endl ;
}
1
Никита321
0 / 0 / 0
Регистрация: 21.02.2015
Сообщений: 4
21.02.2015, 08:53  [ТС] 5
ого, спасибо!
0
zss
Модератор
Эксперт С++
7478 / 6847 / 4324
Регистрация: 18.12.2011
Сообщений: 18,113
Завершенные тесты: 1
21.02.2015, 11:16 6
Croessmah, не хватает кода, заполняющего массив нужными значениями.
0
Croessmah
++Ͻ
14777 / 8453 / 1605
Регистрация: 27.09.2012
Сообщений: 20,803
Записей в блоге: 2
Завершенные тесты: 1
21.02.2015, 11:18 7
Цитата Сообщение от zss Посмотреть сообщение
не хватает кода, заполняющего массив нужными значениями.
А это что?
C++
1
std::vector<std::vector<int>> vec ( x , std::vector<int>(m,3) ) ;
Нигде не указано как должно заполняться, так что полет моей фантазии пришел к такому вот решению.
0
zss
Модератор
Эксперт С++
7478 / 6847 / 4324
Регистрация: 18.12.2011
Сообщений: 18,113
Завершенные тесты: 1
21.02.2015, 13:49 8
Для VS 2008 с заполнением случайными числами
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 <vector>
#include <algorithm>
#include <ctime>
using namespace std;
namespace std
{
    // перегрузка вывода переменной типа vector<T>
template < typename T >
  ostream & operator<< (ostream & stream , vector<T> & vec )
  {
   ostream_iterator<T> out(stream," ");
   copy(vec.begin(),vec.end(),out);
   return stream ;
  }
    // перегрузка вывода переменной типа vector<vector<T> >
  template < typename T >
  ostream & operator<< ( std::ostream & stream , vector<vector<T> > & vec )
  {
      for (vector<vector<T> >::iterator e=vec.begin();e!=vec.end();++e)
        stream <<*e<< '\n' ;
      return stream ;
  }
} 
// функция прибавления 5
int Add5(int x)
{
    return x+5;
}
// класс для заполнения случайными числами, 
// count используется для генерации разных начальных значений 
class random_fill
{
    static int count;
public:
    random_fill(){srand((unsigned)time(NULL)+count++);}
    int operator()(void){return rand()%100;}
};
int random_fill::count=0;
 
int main()
{
   size_t m = 0 , x = 0 ;
   cout<<"m=?";
   std::cin >> m;
   cout<<"x=?";
   std::cin >> x;
   
   std::vector<std::vector<int>> vec( x , std::vector<int>(m) ) ; // создание массива vec[x][m]
   for (vector<vector<int> >::iterator e=vec.begin();e!=vec.end();++e) 
       generate(e->begin(),e->end(),random_fill());// заполнение случайными числами через random_fill
 
   std::cout << vec << "\n\n" ;
   
   for (vector<vector<int> >::iterator e=vec.begin();e!=vec.end();++e)
      transform(e->begin(),e->end(),e->begin(),Add5); // прибавление 5
   cout << vec << endl ;
   system("pause");
   return 0;
}
А вот так будет более изящно:
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
70
71
#include <iostream>
#include <vector>
#include <algorithm>
#include <ctime>
using namespace std;
namespace std
{
    // перегрузка вывода переменной типа vector<T>
template < typename T >
  ostream & operator<< (ostream & stream , vector<T> & vec )
  {
   ostream_iterator<T> out(stream," ");
   copy(vec.begin(),vec.end(),out);
   return stream ;
  }
    // перегрузка вывода переменной типа vector<vector<T> >
  template < typename T >
  ostream & operator<< ( std::ostream & stream , vector<vector<T> > & vec )
  {
      for (vector<vector<T> >::iterator e=vec.begin();e!=vec.end();++e)
        stream <<*e<< '\n' ;
      return stream ;
  }
} 
// функция прибавления 5 к целому числу
int Add(int x)
{
    return x+5;
}
// функция прибавления 5 к вектору
void Add5(vector<int>& x) 
{
    transform(x.begin(),x.end(),x.begin(),Add);
}
// класс для генерации случайных чисел, 
// count используется для генерации разных начальных значений 
class random_fill
{
    static int count;
public:
    random_fill(){srand((unsigned)time(NULL)+count++);}
    int operator()(void){return rand()%100;}
};
// функция заполнения случайными числами вектора
void VecFill(vector<int>& x)
{
    generate(x.begin(),x.end(),random_fill());
}
int random_fill::count=0;
//-----------------------------------------
int main()
{
   size_t m,x;
   cout<<"m=?";
   std::cin >> m;
   cout<<"x=?";
   std::cin >> x;
   
   std::vector<std::vector<int>> vec ( x , std::vector<int>(m) ) ; // создать массив
 
   for_each(vec.begin(),vec.end(),VecFill); // для каждой строки выполнить VecFill
 
   std::cout << vec << "\n\n" ; // вывод исходного массива
   
   for_each(vec.begin(),vec.end(),Add5); // для каждой строки выполнить Add5
   
   cout << vec << endl ;// вывод результата
   
   system("pause");
   return 0;
}
1
Croessmah
++Ͻ
14777 / 8453 / 1605
Регистрация: 27.09.2012
Сообщений: 20,803
Записей в блоге: 2
Завершенные тесты: 1
21.02.2015, 16:42 9
zss, он тему во фрилансе тоже создал
0
21.02.2015, 16:42
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
21.02.2015, 16:42

Написать функцию incPtr, которая принимает указатель на int, и увеличивает число на 1
здравствуйте есть такая задача Напиши ф-цию incPtr, которая принимает...

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

Написать функцию, которая принимает в качестве аргумента целое число по ссылке, и увеличивает его на единицу
Dev C++


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

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

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