Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.09.2012, 18:37   #1
razzner
 
Регистрация: 13.02.2012
Сообщений: 8
Вопрос Вопрос по матрицам

Добрый день!
Помогите пожалуйста решить задачу по програмированию на С++

Рассчитать отрицательные элементы, расположенные на пересечении нечетных строк и четных столбцов.

Последний раз редактировалось razzner; 15.09.2012 в 23:53.
razzner вне форума Ответить с цитированием
Старый 15.09.2012, 19:52   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
парных столбцов.
Парное молоко знаю... Парные столбцы... Как их паром то обдавать?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 15.09.2012, 23:51   #3
razzner
 
Регистрация: 13.02.2012
Сообщений: 8
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Парное молоко знаю... Парные столбцы... Как их паром то обдавать?

Ну вы же меня поняли всмысле четных, ошибся просто)
помогите если можете пожалуйста, а то вообще без понятия как делать?
razzner вне форума Ответить с цитированием
Старый 16.09.2012, 00:26   #4
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,760
По умолчанию

Цитата:
Рассчитать отрицательные элементы
Переведите, а то армия вспоминается...

А вообще все делается в два цикла с шагом 2, один с 0 - втрой с 1
p51x вне форума Ответить с цитированием
Старый 16.09.2012, 00:42   #5
razzner
 
Регистрация: 13.02.2012
Сообщений: 8
По умолчанию

можете подробнее разъяснить, как именно

я просто украинец, и не очень хорошо владею русским языком, тем более очень давно его вообще не использовал))

Вот так задача звучит в оригинале: Додати від'ємні елементи, розташовані на перетині непарних рядків і парних стовпців.
razzner вне форума Ответить с цитированием
Старый 16.09.2012, 12:55   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Ну допустим так:
Код:
for(int i=1;i<n;i+=2) for(int j=0;j<m;j+=2) 
 if(a[i,j]<0) a[i,j] уволен по статье "отрицание";
n,m размерности массива, предполагается что массив введен.
Цитата:
Ну вы же меня поняли всмысле четных, ошибся просто)
Неа. Именно это как раз и не понял.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.09.2012, 16:04   #7
razzner
 
Регистрация: 13.02.2012
Сообщений: 8
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Ну допустим так:
Код:
for(int i=1;i<n;i+=2) for(int j=0;j<m;j+=2) 
 if(a[i,j]<0) a[i,j] уволен по статье "отрицание";
n,m размерности массива, предполагается что массив введен.

Неа. Именно это как раз и не понял.
а что значит "a[i,j] уволен по статье "отрицание""

код должен быть такой?:
Код:
for(int i=1; i<n; i+=2) {
    for(int j=0; j<n; j+=2) { 
             if(mas[i,j]<0) {
	  sum = sum  + mas[i][j];
		   } 
 		}
	}
если да, то почему сума у меня получается 0, это нормально?
данные в матрицу вводятся через rand() %5;
razzner вне форума Ответить с цитированием
Старый 16.09.2012, 16:47   #8
razzner
 
Регистрация: 13.02.2012
Сообщений: 8
По умолчанию

все сделал, только немножко по другом:

Код:
#include <iostream>
#include <conio.h>
#include <stdlib.h>
#include <ctime>

using namespace std;

void main() {
srand(time(0));
const int n=5;
int mas[n][n];
int i,j;
int sum=0;

for(i = 0; i < n; i++)
{
for(j = 0; j < n; j++)
  {
   int asd = rand() % 2;
   mas[i][j] = rand() % 5;
   if (asd == 1)
   {
      mas[i][j] = mas[i][j]*(-1);
    }
   printf("%3i ", mas[i][j]);
}
   cout<<endl;
 }

for(i = 1; i < n; i+=2)
{
for(j = 1; j < n; j+=2)
  {
	  if(mas[i][j]<0) {
	  sum = sum+ mas[i][j];
	  }
  }
}
	cout<<sum;

  getch();
}
razzner вне форума Ответить с цитированием
Старый 16.09.2012, 16:49   #9
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
почему сума у меня получается 0, это нормально?
Нормально, учитывая rand() %5 -проще говоря у тебя массив отрицательных не содержит.
Пробуй так:
rand()%5-rand()%5.
Как гриццо - клин клином.
Цитата:
а что значит "a[i,j] уволен по статье "отрицание""
Шутка
Бамбарбия
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 16.09.2012, 17:00   #10
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

хехе... прикольно
Код:
#include <iostream>
#include <ctime>
#include <cstdlib>

using namespase std;

int main () {
  const range = 5;
  int m[range][range];
  int sum = 0;
  srand(time(NULL));
  for (int i = 0; i < range; i++) {
    for (int j  = 0; j < range; j++) {
      m[i][j] = (rand%50) - 25;
      cout << m[i][j] << "\t";
    }
    cout << endl;
  }
  for (int i = 1; i < range; i+=2) 
    for(int j = 0; j < range; j+=2)
      if(m[i][j]<0) sum += m[i][j];
  cout << sum << endl;
  system("pause");
  return 0;
}
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303

Последний раз редактировалось Hacker19_90; 16.09.2012 в 17:02.
Hacker19_90 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Есть вопрос по МАТРИЦАМ!!! ib1 Паскаль, Turbo Pascal, PascalABC.NET 1 12.06.2011 12:45
ВОПРОС ПО МАТРИЦАМ В ПАСКАЛЕ... Slava8888 Паскаль, Turbo Pascal, PascalABC.NET 1 18.01.2011 16:02
ВОПРОС ПО МАТРИЦАМ(ПАСКАЛЬ)... Slava8888 Помощь студентам 0 17.01.2011 23:01
Вопрос по матрицам Jigar Помощь студентам 9 17.07.2008 14:06
Задача по матрицам Alfons Паскаль, Turbo Pascal, PascalABC.NET 3 05.03.2008 14:09