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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.12.2010, 16:49   #1
Ermolenko
 
Регистрация: 10.10.2010
Сообщений: 5
По умолчанию Нужно редактирование программы на с++

Вот условие задачи:
Осуществить запоминание ненулевых элементов матрицы A(m,n) из входного сильно разреженного потока, пересчет их по формуле

Цитата:
a[i][j] = a[i][j]-2*((i+1)*(j+1))
и последующее восстановление результирующей матрицы в выходном потоке.
Разработать сервисные средства сопровождения.!


Почти всё сделал,но вот этот пункт задания "Осуществить запоминание ненулевых элементов матрицы", у меня сразу ненулевые элементы пересчитываются, а запоминания нет!
Как осуществить запоминание?
Нужно как то с помощью динамической памяти, но как? Помогите пожалуста это сделать!!

Код программы:
Код:
#include <iostream>
#include <math.h>
#include <conio.h>

using namespace std;

int const number = 3;
float a[3][3];
void getelements(int);
void getrezult(int);

int main()
{

    getelements(number);
	getrezult(number);

	getch();
	return 0;
}

void getelements(int number_in) 
{
	cout << "Vvodite elementi matritsi" << endl;
	for(int i=0;i<number_in;i++) {
		for(int j=0;j<number_in;j++) {
			cout << "a[" << i << "][" << j << "]: ";
			cin >> a[i][j];
		}
	}
	cout << endl << "Ishodnaya matritsa" << endl;
		for(int i=0;i<number_in;i++) {
		for(int j=0;j<number_in;j++) {
			cout << a[i][j] << " ";
		}
		cout << endl;
	}

}

void getrezult(int number_in) 
{

            
     
	cout << endl << "Rezultiruyushaya matritsa" << endl;
	for(int i=0;i<number_in;i++) {
		for(int j=0;j<number_in;j++) {
			if(a[i][j]!=0) {
				a[i][j] = a[i][j]-2*((i+1)*(j+1));
			}
			cout << a[i][j] << " ";
		}
		cout << endl;
	}

}

Последний раз редактировалось Ermolenko; 18.12.2010 в 16:56. Причина: Допустил ошибку в условии!
Ermolenko вне форума Ответить с цитированием
Старый 18.12.2010, 21:37   #2
Ermolenko
 
Регистрация: 10.10.2010
Сообщений: 5
По умолчанию

Желательно это надо сделать с помощью оператора new.!
Ermolenko вне форума Ответить с цитированием
Старый 18.12.2010, 21:37   #3
Ermolenko
 
Регистрация: 10.10.2010
Сообщений: 5
По умолчанию

Желательно это надо сделать с помощью оператора new.!
Ermolenko вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Редактирование шаблона программы Бизнес-Пак (FastReport) Dmfkeeper Общие вопросы Delphi 6 04.06.2018 12:01
Нужно разобраться в коде программы на Си! Юлия26 Помощь студентам 0 14.12.2010 10:42
Нужно написать две программы webdesigner Общие вопросы C/C++ 6 03.06.2010 21:52
НУжно срочно написать 2 программы Valik102 Паскаль, Turbo Pascal, PascalABC.NET 6 19.05.2009 18:04