Форум: Форум C++Разное
Новые темы: 00
PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум C++

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: МАТРИЦА
 
 автор: gormangocia   (17.12.2008 в 21:36)   письмо автору
 
 

Дана матрица (5,3)
1) создать новый одномерный массив, каждый элемент которого равен среднему арифметическому элементов соответствующей строки данной матрицы.
2) найти наименьший элемент третьего столбца.
3) поменять местами наименьший элемент третьего столбца и элемент а23.

  Ответить  
 
 автор: exp   (19.12.2008 в 12:35)   письмо автору
 
   для: gormangocia   (17.12.2008 в 21:36)
 

тут наверное просто нужно обьявить двумерный массив (матрицу)
типа
int *m = {
 {1,3,5,7,9},
 {2,4,6,8,10},
 {22,21,24,22,21}
};
и все прохождения это будут простые циклы например
for (int i = 0; i<3; i++) {
  for (int j = 0; j<5; j++) {
   printf("  %i", m[i][j] );
  }
printf("\n");
}
так можно распечатать все ячейки.
можно будет сделать пользовательские функции , для упрощения


или нужно сделать с использованием объектов чисто на c++ ?

// upd:
ошибся , можнл написать только
int m[3][5] = {{1,3,5,7,9},
 {2,4,6,8,10},
 {22,21,24,22,21}};


//upd:
#include <stdio.h>
#include <conio.h>

int sredn(int *array) {
int i, r=0;
for(i=0; i<5; i++) r += array[i];
return r/5;
// среднее арифметическое округлённое в меньшую сторону
// если не ошибаюсь


int main()
{
 int m[3][5] = {
 {1,3,5,7,9},
 {2,4,6,8,10},
 {22,21,24,22,21}
};

int i,j;
int a1[3]; // массив для средних значений

for (i = 0; i<3; i++) {
  for (j = 0; j<5; j++) {
  
   printf(" %i", m[i][j] );
  }
printf("\n");
}
printf("\n\n");

for (i=0; i<3; i++) {
 
 a1[i] = sredn(m[i]);
 printf(" %i", a1[i]);
}
printf("\n\n");
getch();
  return 0;
}


Хотя не очень понял какая это матрица 3x5 или 5x3

  Ответить  
 
 автор: gormangocia   (20.12.2008 в 20:19)   письмо автору
 
   для: exp   (19.12.2008 в 12:35)
 

спасибо большое я разобрался!
если интересно то вот



#include<iomanip.h>
#include<math.h>
#include<stdlib.h>
#include<stdio.h>
int main()
{
cout.precision(3);
int i,j,mini;
double tmp, min=100000, b[5],mat[5][3]={{50,-7,15},{-7,41,-1},{42,21,-19},{-36,-11,54},{-3,-12,4}};
for(i=0;i<5;i++)
{for(j=0;j<3;j++)
{cout<<setw(7)<<mat[i][j];}
cout<<endl;}
cout<<endl<<''new massive b''<<endl;

for(i=0;i<5;i++)
{b[i]=0;
for(j=0;j<3;j++)
b[i]+=mat[i][j];
b[i]=b[i]/3;
cout<<setw(7)<<b[i];
}
cout<<endl;

for(i=0;i<5;i++)
{if(min>mat[i][2])
{min=mat[i][2];
mini=i;}}
cout<<setw(7)<<''min 3go stolbca=''<<min<<'' poriadkovii
num: ''<<mini+1<<'',''<<''3"<<endl;
cout<<endl;

tmp=mat[mini][2];
mat[mini][2]=mat[1][2];
mat[1][2]=tmp;
cout<<setw(7)<<"\n new matrix:\n";
for(i=0;i<5;i++)
{for(j=0;j<3;j++)
{cout<<setw(7)<<mat[i][j];}
cout<<endl;}
return 0;}




так вот! вроде ничо не забыл.

  Ответить  
 
 автор: WveB   (20.12.2008 в 20:39)   письмо автору
 
   для: gormangocia   (20.12.2008 в 20:19)
 

а мне в решении моей задачи помочь можешь ?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования