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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.11.2022, 14:34   #1
MiLaNa000
Новичок
Джуниор
 
Регистрация: 13.11.2022
Сообщений: 1
По умолчанию Чтение двух двумерных массивов с файла с#

Добрый день! Мне нужно считать с файла следующие данные:
2 3
1 2 3
2 3 6
2 3
4 5 5
6 77 8
Где первая строчка - размер массива, 2 и 3 - сам массив, 4 - размер второго массива и оставшиеся - второй массив. Подскажите, пожалуйста, как это сделать? Пробовала вот такой код, но не очень подходит под само задание
Код:
                string[] lines = File.ReadAllLines(@"задание 4.2.txt");
                int[,] num = new int[lines.Length, lines[0].Split(' ').Length];
                for (int i = 0; i < lines.Length; i++)
                {
                    string[] temp = lines[i].Split(' ');
                    for (int j = 0; j < temp.Length; j++)
                        num[i, j] = Convert.ToInt32(temp[j]);
                }
MiLaNa000 вне форума Ответить с цитированием
Старый 15.11.2022, 01:49   #2
Пётр Седов
Форумчанин
 
Регистрация: 26.10.2022
Сообщений: 119
По умолчанию

MiLaNa000, если не заморачиваться на хорошую обработку ошибок, то можно так:
Код:
using System.IO;

class program {
  static void Main(string[] args) {
    string[] lines = File.ReadAllLines("data.txt");
    int line_index = 0;
    int[,] array_1 = load_array(lines, ref line_index);
    int[,] array_2 = load_array(lines, ref line_index);
  }

  static int[,] load_array(string[] lines, ref int line_index) {
    string[] tokens = lines[line_index++].Split(' ');
    int rows_count = int.Parse(tokens[0]);
    int cols_count = int.Parse(tokens[1]);
    int[,] result = new int[rows_count, cols_count];
    for (int row = 0; row < rows_count; row++) {
      tokens = lines[line_index++].Split(' ');
      for (int col = 0; col < cols_count; col++) {
        result[row, col] = int.Parse(tokens[col]);
      }
    }
    return result;
  }
}
Пётр Седов вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Найти произведение двух двумерных массивов A и B Falman Паскаль, Turbo Pascal, PascalABC.NET 0 23.05.2012 12:04
Обработка двумерных массивов Natulik96 C++ Builder 0 14.03.2012 19:12
Turbo Pascal - Композиция Двух Двумерных Массивов размером 100х100 ulala Помощь студентам 2 09.11.2011 15:54
Чтение массивов из файла и их нестандартный вывод ivannes Паскаль, Turbo Pascal, PascalABC.NET 14 25.07.2011 15:41
обработка двумерных массивов... Mizantrop Помощь студентам 2 25.03.2010 09:11