Альтернативный Форум

— этот форум работает с 03 октября 2005 года. ️‍🔥️‍🔥
(#1)
Старый 18.04.2007
Arrow Помогите с задачей

Дана действительная квадратичная матрица порядка 7. Если в i -той строке матрицы элемент, пренадлежащий главной диагонали, отрицателен, то заменить этот элемент сумммой элементов i-той строки,предшествующих первому отрицательному элем-у.; в противном случае суммой последних эл-ов i-ой строки , начиная с первого отрицательного элеме-а. Элементы главной диагонали (неизменныие) вывести в массив. Вывести исходную и преобразованную матрицы, полученный массив.


Помогите решить эту *пучую,запутанную задачу.
Заранее благодарю.
sam sam вне форума
Прохожий
sam Первый уровень
 
Регистрация: 15.01.2007
Сообщений: 4 шт.
Карма: 0 бал.
Ответить с цитированием
(#2)
Старый 19.04.2007

И в чем тут хоть одна проблема? На вскидку: общий цикл по диагонали, сравнение с условием, если да, то цикл пока не минус, если нет, то цикл с условием пока не минус и до конца. усе. три цикла, три проверки условия.

может я задачу не понял?
..........................
Ничего не сказала золотая рыбка, только хвостиком махнула, а яичко упало и разбилось...
Master Master вне форума
администратор
Master отключил(а) отображение уровня репутации
 
Регистрация: 03.10.2005
Сообщений: 254 шт.
Ответить с цитированием
(#3)
Старый 20.04.2007

а можно по подробней ?а то я ваще не рублю. =))
sam sam вне форума
Прохожий
sam Первый уровень
 
Регистрация: 15.01.2007
Сообщений: 4 шт.
Карма: 0 бал.
Ответить с цитированием
(#4)
Старый 20.04.2007

У мя была даж написана на Pascal'e. Её вирус сцукО съел
..........................
Mad DeviL Mad DeviL вне форума
s p i t e f u l
Mad DeviL отключил(а) отображение уровня репутации
 
Аватар для Mad DeviL
 
Регистрация: 10.09.2006
Сообщений: 1,245 шт.
Ответить с цитированием
(#5)
Старый 21.04.2007

Млин, ну так и тянет сказать RTFM.
Лентяи, млин.
Устанешь меня пивом поить.
Вот код (на C#):

using System;

namespace MatrixProg
{
class Matrix
{
private const int MATRIX_SIZE = 7;
private int[,] _matrix = new int[MATRIX_SIZE, MATRIX_SIZE];
private int[] _diagonal = new int[MATRIX_SIZE];

public void RandomFill(int lowBound, int highBound)
{
Random rnd = new Random(DateTime.Now.Millisecond);
for (int i = 0; i < MATRIX_SIZE; ++i)
for (int j = 0; j < MATRIX_SIZE; ++j)
_matrix[i, j] = rnd.Next(lowBound, highBound);
}

public void Display()
{
for (int i = 0; i < MATRIX_SIZE; ++i)
{
for (int j = 0; j < MATRIX_SIZE; ++j)
{
Console.Write(_matrix[i, j]);
Console.Write('\t');
}
Console.WriteLine();
}
}

public void DisplayUnchangedDiagonal()
{
for (int i = 0; i < MATRIX_SIZE; ++i)
{
Console.Write(_diagonal[i]);
Console.Write('\t');
}
Console.WriteLine();
}

public void Process()
{
for (int i = 0; i < MATRIX_SIZE; ++i)
{
_diagonal[i] = _matrix[i, i];
if (_matrix[i, i] < 0)
_matrix[i, i] = Sum1(i);
else
_matrix[i, i] = Sum2(i);
}
}

private int Sum1(int i)
{
int sum = 0;
for (int j = 0; j < MATRIX_SIZE; ++j)
{
if (_matrix[i, j] < 0) break;
sum += _matrix[i, j];
}
return sum;
}

private int Sum2(int i)
{
int sum = 0;
int j = 0;
for (; j < MATRIX_SIZE; ++j)
{
if (_matrix[i, j] < 0) break;
}

for (; j < MATRIX_SIZE; ++j) sum += _matrix[i, j];
return sum;
}
};

class Program
{
static void Main(string[] args)
{
Matrix mtx = new Matrix();
mtx.RandomFill(-10, 10);

Console.WriteLine("Матрица перед преобразованием: ");
mtx.Display();

mtx.Process();

Console.WriteLine("\nМатрица после преобразования: ");
mtx.Display();

Console.WriteLine("\nНеизмененная диагональ: ");
mtx.DisplayUnchangedDiagonal();
}
}
}
..........................
Устал - умри!
Когда государство от тебя что-то хочет, оно называет себя Родиной.
All above is just IMHO.
DEV DEV вне форума
Присматривается
DEV Первый уровень
 
Аватар для DEV
 
Регистрация: 10.02.2007
Сообщений: 52 шт.
Карма: 10 бал.
Ответить с цитированием
(#6)
Старый 21.04.2007

Спасибо большое. ВЫРУЧИЛ
sam sam вне форума
Прохожий
sam Первый уровень
 
Регистрация: 15.01.2007
Сообщений: 4 шт.
Карма: 0 бал.
Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите!!! Egorka Технический 18 03.09.2008 17:45
Помогите LEX Смартфоны, GSM устройства 3 17.08.2008 20:20
Помогите!!! AMELI Технический 25 04.07.2008 21:46
Помогите Snek Технический 6 28.11.2006 20:39

Powered by vBulletin® Version 3.8.11 PL4;
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd;
Оператор обработки ПДн - ИП Алексеев А.С.;
ИНН: 333411310227; ОГРН: 307333419200050;
тел. +7 (4922) 49-42-22, legal@smalta.net;
Часовой пояс GMT +3, время: 09:24.
Любые сообщения на Альтернативном Форуме — являются субъективным отражением реальности, написавших их авторов и публикуются без предварительной модерации. Администрация форума не принимает на себя ответственность за содержание таких материалов. В рамках функционирования форума осуществляется хранение ограниченного набора данных: имя пользователя, адрес электронной почты, IP-адрес (в момент входа) и cookie для поддержки сессии. Метаданные пользователей обрабатываются и направляются в уполномоченные органы только при наличии официального запроса в порядке, установленном законодательством РФ. В случае выявления противоправного контента, пожалуйста, направляйте уведомление через кнопку «Жалоба» или форму обратной связи.
ИКС