Skip to content

imagin-hedgehog/matrix_bin_read_and_write

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 

Repository files navigation

matrix_bin_read_and_write(dz1)

Часть 1

Написать программу на языке Си, которая в диалоговом режиме запрашивает:

  • Порядок матрицы(2,3,4,5)
  • Размерность матрицы(i,j,k,l)
  • запрашивает динамическую память по массив элементов матрицы(calloc)
  • заполняет её числами(float, double)
  • выводит матрицу на экран
  • создаёт файл на внешнем устройстве
  • записывает в файл: размер матрицы, размерность, элементы
  • проверяет файл на коректность
  • закрывает файл
1-ое. Не очень понятно чего хотят
2-ое. начнём с теории

Что такое ПОРЯДОК матрицы?

Матрица размера n*n называется квадратной, а число n называется ПОРЯДКОМ матрицы
// пока неплохо

Что такое РАЗМЕРНОСТЬ матрицы?

Это два числа, соответственно количества 
элементов в строке и столбце.
// Тут неувязочка

Если у нас уже есть порядок, то зачем запрашивать размерность?
Можно сделать резкое, как ебучее солнце через занавеску вашей комнаты наутро после славного распития спиртных напитков прошлым вечером, предположение:

А что если ПОРЯДОК - имелось введи число измерений(в пространстве)?

(2,3,4,5) - плоскость, куб, какая-та объёмная хрень
Но обратим внимание на строчку
- записывает в файл: размер матрицы, РАЗМЕРНОСТЬ, элементы
  • если матрица - квадратная(кубическая и тд) то РАЗМЕРНОСТЬ - одно число
  • если НЕ квадратная, то минимум - 2 числа
Препод сказал забить на все остальные случаи: делать обычную 2-ухмерную матрицу(вроде)

Легче сделать две программы

  • A/part1.c
      ПОРЯДОК - число измерений(в пространстве)  
      матрица - НЕ квадратная.
      НО рассматриваем только, когда 2 измерения (куб и другие нервно курят в сторонке)
      Тогда на*** вводить число измерений, если оно постоянно и плоский случай.
      // Но мы будем все равно делать эту бесполезную операцию
    
  • B/part1.c
      матрица квадратная, но на*** запрашивать тогда размерность
      // Здесь не будем её записывать в файл
    

Часть 2

Написать программу на языке Си, которая в диалоговом режиме запрашивает:

  • имя файла ранее созданного(с матрицей n-го порядка)
  • открывает его на чтение
  • определет его длину и число записей
  • запрашивает у системы динамическую память для чтения файла
  • читает его поэлементно
  • проверяет чтение на полноту и корректность
  • выводит на экран: порядок матрицы, размерность, число прочитанных элементов, саму матрицу
// Опять же дуализм задачи
в зависимости от первой части, разный вывод во второй

В части 1 мы записываем в файл: размер матрицы, размерность, элементы

Как из этого можно получить ПОРЯДОК матрицы?

  • A/part2.c
      ПОРЯДОК - число измерений, тогда мы условились, что он равен двум.
      Матрица - не квадратная
    
  • B/part2.c
      ПОРЯДОК - число n квадратной матрицы размера n*n,
      тогда это есть одновременно и размерность и порядок.
    

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages