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

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

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

Восстановить пароль
Повторная активизация e-mail

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.11.2011, 16:06   #1
edikesh
Пользователь
 
Регистрация: 22.11.2011
Сообщений: 25
По умолчанию Дана матрица А[m,n]. Найти первый столбец, сумма элементов которого равна сумме элементов первой строки.

подскажите алгоритм
edikesh вне форума Ответить с цитированием
Старый 30.11.2011, 16:36   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,709
По умолчанию

1. найти сумму первой строки
2. цикл по всем столбцам
3. найти сумму столбца
4. если равен п. 1 выход иначе п. 2
5. проверить, что что-то нашли

Ваш К.О.
p51x вне форума Ответить с цитированием
Старый 01.12.2011, 18:58   #3
edikesh
Пользователь
 
Регистрация: 22.11.2011
Сообщений: 25
По умолчанию что после этого момента?

Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace lab4
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Vvedite kol-vo strok n: "); //Выдаем запрос на ввод количества строк 
            int n = Convert.ToInt32(Console.ReadLine()); //Заносим количество строк в n 

            Console.Write("Vvedite kol-vo stolbcov m: "); //Выдаем запрос на ввод количества столбцов 
            int m = Convert.ToInt32(Console.ReadLine()); //Заносим количество столбцов в m 

            int[,] msv = new int[n, m]; //создаем двумерный массив 

            //Заполняем массив 
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < m; j++)
                {
                    Console.Write("msv[{0}, {1}] = ", i + 1, j + 1);
                    msv[i, j] = Convert.ToInt32(Console.ReadLine());
                }
            }

            //Выводим мартицу 
            Console.WriteLine("Vvedennaya matrica:");
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < m; j++)
                    Console.Write("{0} ", msv[i, j]);
                Console.WriteLine();
            }

            int summstbt = 0;
            int summstr1 = 0;
            for (int i = 0; i < m; i++)
                summstr1 += msv[0, i]; //Ищем сумму первой строки!!! 
            for (int i = 0; i < m; i++)
            {
                for (int j = 0; j < n; j++)
                    summstbt += msv[j, i];
                if (summstbt == summstr1)
                {
                    
        }

    }

}
edikesh вне форума Ответить с цитированием
Старый 01.12.2011, 19:21   #4
edikesh
Пользователь
 
Регистрация: 22.11.2011
Сообщений: 25
По умолчанию вот вродебы сделал. не уверен что программа полностю правильная толкько

Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace lab4
{
    class Program
    {
        static void Main(string[] args)
        {
            Console.Write("Vvedite kol-vo strok n: "); //Выдаем запрос на ввод количества строк 
            int n = Convert.ToInt32(Console.ReadLine()); //Заносим количество строк в n 

            Console.Write("Vvedite kol-vo stolbcov m: "); //Выдаем запрос на ввод количества столбцов 
            int m = Convert.ToInt32(Console.ReadLine()); //Заносим количество столбцов в m 

            int[,] msv = new int[n, m]; //создаем двумерный массив 

            //Заполняем массив 
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < m; j++)
                {
                    Console.Write("msv[{0}, {1}] = ", i + 1, j + 1);
                    msv[i, j] = Convert.ToInt32(Console.ReadLine());
                }
            }

            //Выводим мартицу 
            Console.WriteLine("Vvedennaya matrica:");
            for (int i = 0; i < n; i++)
            {
                for (int j = 0; j < m; j++)
                    Console.Write("{0} ", msv[i, j]);
                Console.WriteLine();
            }
            int stolbec = 0;
            int summstbt = 0;
            int summstr1 = 0;
            for (int i = 0; i < m; i++)
                summstr1 += msv[0, i]; //Ищем сумму первой строки!!! 
            for (int i = 0; i < m; i++)
            {
                for (int j = 0; j < n; j++)
                    summstbt += msv[j, i];
                if (summstbt == summstr1)
                {
                    stolbec = i + 1; break;
                }
            }

            if (stolbec != 0)
                Console.Write("\n" + "stolbec nomer " + stolbec);
            else
                //Вывод сообщения при отсутствии нужных строк 
                Console.Write("\n" + "net takogo ctolbca");
            Console.ReadKey(); // Ожидаем нажатие клавиши для завершения 
        }

    }

}
edikesh вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C# Дана матрица А[m,n].Удалить из неё столбец, содержащий максимальное число чётных элементов. edikesh Помощь студентам 7 23.11.2011 16:45
Дана матрица найти среднее арифметическое ее элементов! На C#! Александр10 C# (си шарп) 2 27.05.2011 15:03
Дана матрица размера 5 x 10. В каждой строке найти количество элементов Executioner3 Помощь студентам 12 11.05.2010 16:27