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

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

Войти
Регистрация
Восстановить пароль
 
Bridge
0 / 0 / 0
Регистрация: 01.12.2009
Сообщений: 7
#1

1) обработка матриц, 2)массивы - C++

01.12.2009, 18:57. Просмотров 1004. Ответов 11
Метки нет (Все метки)

Всем привет. Помогите пожалуйста написать программы:
1) Перестановка в обратном порядке элементов столбца, содержащего максимальный элемент матрицы.
2) Дан текст. Напечатать все имеющиеся в нем цифры.

Буду очень признателен! Заранее огромное спасибо!Программки лёгкие, но я слишком зелёный(
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2009, 18:57
Здравствуйте! Я подобрал для вас темы с ответами на вопрос 1) обработка матриц, 2)массивы (C++):

Указатели и массивы. Индексация с помощью указателей. Передача массивов в функции. Динамические массивы (обработка матриц) - C++
Для каждого элемента , bij, i= 1,...,n , j=1,...,n определяется свой многоугольник местонахождением соответствующего элемента aij (см....

Обработка матриц - C++
Помогите кому не лень) Ввести двумерный массив {A}_{3x5}. Определить в нём среднее геометрическое элементов, у которых оба индекса...

Обработка матриц - C++
Уважаемые форумчане помогите с задачей. Определить максимальный елемент матрици {Si,j}6,3.Вывести его значения и индекси.

Обработка матриц в с++ - C++
даны матрицы D размерностью m*n, E n*k и число a. найти значение выражения: D*a*E проверить свойство матриц: a*(A+B)=aA+aB это надо...

Обработка матриц - C++
помогите решить проблему, не могу понять, как сделать так, чтобы вводить размер матрицы с клавиатуры: вот мой код: #include...

Обработка матриц - C++
Помогите пожалуйста! Написать процедуру, которая принимает на входе двумерную матрицу вещественных чисел (кол-во строк и столбцов не...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Bridge
0 / 0 / 0
Регистрация: 01.12.2009
Сообщений: 7
02.12.2009, 20:55  [ТС] #2
Помогите пожалуйста! На Си
0
Bridge
0 / 0 / 0
Регистрация: 01.12.2009
Сообщений: 7
06.12.2009, 18:27  [ТС] #3
2 задание смог сделать. А вот с 1 совсем не получается(
0
M128K145
Эксперт С++
8288 / 3508 / 143
Регистрация: 03.07.2009
Сообщений: 10,706
06.12.2009, 18:39 #4
Bridge, с чем конкретно сложности?
1
Bridge
0 / 0 / 0
Регистрация: 01.12.2009
Сообщений: 7
07.12.2009, 00:37  [ТС] #5
M128K145, вот сделал чуток, правда не знаю, как здесь выводить массив. +правильно ли я начал(

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
#include <vcl.h>
#include <conio.h>
#include <stdio.h>
#pragma hdrstop
#define N 7
#define M 7
 
#pragma argsused
int main(int argc, char* argv[])
{
int array[N][M];
int max=0;
int temp;
for(int i=0;i<=N;i++)
{
   for(int j=0;j<=M;j++)
   {
      if(array[i][j]<max)
      {
      max=array[i][j];//поиск максимального элемента
      j=temp;//запоминаем столбец максимального элемента
      }
   }
}
 for(int k=0;k<=M;k++)
 {
 array[k][temp]=array[k+1][temp]//каждому элементу фиксированного столбца temp и строки k присваивается след.элемент
 }
        return 0;
}
0
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
07.12.2009, 00:51 #6
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
for(int i=0;i<N;i++)
{
   for(int j=0;j<M;j++)
   {
      if(array[i][j]<max)
      {
      max=array[i][j];//поиск максимального элемента
      temp=j;//запоминаем столбец максимального элемента
      }
   }
 
}
 
  // переставляем элементы столбца temp в обратном порядке
 for(int k=0;k<N/2;k++)
 {
   int l = array[k][temp];
   array[k][temp]=array[N-1-k][temp]
   array[N-1-k][temp]=l;
 }
1
kazak
3035 / 2356 / 155
Регистрация: 11.03.2009
Сообщений: 5,402
Завершенные тесты: 1
07.12.2009, 01:24 #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
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
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <conio.h>
 
#define N 7
#define M 7
 
int main(int argc, char* argv[])
{
   int arr[N][M] = {0};
   int max, maxIndex, buf, i, j;
 
   srand(time(NULL));
 
   for (i = 0; i < N; i++)
   {
      for (j = 0; j < M; j++)
      {
         arr[i][j] = rand() % 51;
         printf("%3d", arr[i][j]);
      }
      printf("\n");
   }
 
   max = arr[0][0];
   maxIndex = 0;
   for (i = 0; i < N; i++)
   {
      for (j = 0; j < M; j++)
      {
         if (max < arr[i][j])
         {
            max = arr[i][j];
            maxIndex = j;
      }
   }
 
   for (i = 0; i < N / 2; i++)
   {
      buf = arr[i][maxIndex];
      arr[i][maxIndex] = arr[N - i - 1][maxIndex];
      arr[N - i - 1][maxIndex] = buf;
   }
 
   for (i = 0; i < N; i++)
   {
      for (j = 0; j < M; j++)
      {
         printf("%3d", arr[i][j]);
      }
      printf("\n");
   }
 
   getch();
   return 0;
}
1
Bridge
0 / 0 / 0
Регистрация: 01.12.2009
Сообщений: 7
13.12.2009, 18:53  [ТС] #8
Большое спасибо!
Вот с вашей помощью написал ту же программу чуть попонятнее для меня, но выскакивает ошибка Проблема вроде в адресах, но не понимаю, как это исправить. Подскажите пожалуйста.


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
//---------------------------------------------------------------------------
 
#include <vcl.h>
#include <conio.h>
#include <stdio.h>
#pragma hdrstop
#define N 7
#define M 7
//---------------------------------------------------------------------------
 
#pragma argsused
int main(int argc, char* argv[])
{
int array[N][M];
int max=0;
int temp;
for(int i=0;i<N;i++)
{
   for(int j=0;j<M;j++)
   {
       if(array[i][j]<max)
       {
          max=array[i][j];//поиск максимального элемента
          temp=j;//запоминаем столбец максимального элемента
      }
   }
 
}
 
  // переставляем элементы столбца temp в обратном порядке
 for(int k=0;k<N/2;k++)
 {
     int l = array[k][temp];
     array[k][temp]=array[N-1-k][temp];
     array[N-1-k][temp]=l;
 }
 for(int i=0;i<N;i++)
 {
     for(int j=0;j<M;j++)
     {
         printf("%d ",&(array[i][j]));
         printf("\n");
     }
 }
getch();
 
        return 0;
}
//---------------------------------------------------------------------------
ошибка Project Project2.exe raised exeption class EAccessVoilation with message 'Access violation at address 00401415.Write of address 001302A8'. Process stopped. Use Step or Run to continue. в 34 строчке
0
manfeese
129 / 128 / 16
Регистрация: 04.01.2009
Сообщений: 415
13.12.2009, 19:25 #9
1. Я не вижу заполнения матрицы, но это пол-беды!
2. В строке 41 символ '&' лишний
1
Bridge
0 / 0 / 0
Регистрация: 01.12.2009
Сообщений: 7
13.12.2009, 19:35  [ТС] #10
спасибо, '&' убрал. А что значит не видно заполнения матрицы?) Нужно написать дополнительные циклы?
0
valeriikozlov
Эксперт C++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
13.12.2009, 20:38 #11
Цитата Сообщение от Bridge Посмотреть сообщение
А что значит не видно заполнения матрицы?)
Что бы элементы матрицы можно было переставлять, а потом еще и вывести на экран, элементам матрицы сначало нужно присвоить какие-то значения. Вот об этом Вам как раз и пишет manfeese.
1
Bridge
0 / 0 / 0
Регистрация: 01.12.2009
Сообщений: 7
17.12.2009, 13:32  [ТС] #12
Спасибо Вам за помощь! Разобрался!
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
17.12.2009, 13:32
Привет! Вот еще темы с ответами:

Обработка матриц - С++ - C++
Вот задача нужно решить - С++. Не могу решить, не получается... Найти наибольший и наименьший элементы матрицы и поменять местами...

Обработка матриц - C++
Имеется код! void maxToArr(int ar,int matr, int nRow, int nCol){ int max=matr; for(int i=0;i&lt;nRow;i++) for(int...

Обработка матриц - C++
Помогите дописать код программы вот условие:Вычислить сумму и число элементов матрицы, находящихся под главной диагональю и на ней. В (N,...

обработка матриц - C++
Получить квадратную матрицу порядка n: 1111...1 222...2 33...3 . ..........0 Помогите пожалуйста решить задачу,...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
17.12.2009, 13:32
Ответ Создать тему
Опции темы

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