Обработка числовой информации, представленной в табличной форме
Разработать алгоритм нахождения нулевых элементов матрицы, номера его строки и столбца. Создать текстовый файл output. dat, в который будет помещаться полученная информация. Создать текстовый файл input. dat и внести в него необходимую информацию. Считаем информацию из текстового документа input. dat в aij: Занесем исходные данные таблицы в компонент StringGrid1: Выведем полученные результаты… Читать ещё >
Обработка числовой информации, представленной в табличной форме (реферат, курсовая, диплом, контрольная)
Условие задачи
Задана матрица, А размером 4×6 с вещественными элементами. Найти и вывести на печать нулевые элементы матрицы, а также указать, в каких строках и столбцах они находятся. Входные данные расположены на диске в текстовом файле input. dat, находящемся в индивидуальном рабочем каталоге. Вывод результатов необходимо осуществить вместе с исходными данными в текстовый файл output. dat, поместив его также в свой индивидуальный каталог.
Предварительный анализ задачи
- 1. Создать текстовый файл input. dat и внести в него необходимую информацию.
- 2. Разработать алгоритм нахождения нулевых элементов матрицы, номера его строки и столбца.
- 3. Создать текстовый файл output. dat, в который будет помещаться полученная информация.
Разработка алгоритма
1. Определение входных данных:
А={} - матрица целых чисел, размерности 4×6;
2. Определение выходных данных:
(нулевых элементов матрицы) — целое число;
i (номер строки матрицы) — целое число;
j (номер столбца матрицы) — целое число;
3. Текст алгоритма.
Алгоритм
Аргументы: А={aij};
Результаты: aij, i, j;
Начало Описание матрицы:
var Form1: TForm1; a: array[1.4,1.6] of integer.
assignfile (f,'input.dat.txt').
assignfile (f1,'output.dat.txt').
reset (f) rewrite (f1).
Считаем информацию из текстового документа input. dat в aij:
Для i=1 до 4 делать (цикл 1).
для j=1 до 6 делать (цикл 2).
read (f, a[i, j]).
увеличение i на 1 и переход к циклу1.
увеличение j на 1 и переход к циклу 2.
closefile (f).
Занесем исходные данные таблицы в компонент StringGrid1:
Для i=1 до StringGrid1. rowCount делать (цикл 1).
Для j=1 до StringGrid1. colCount делать (цикл 2).
StringGrid1.Cells[j-1,i-1] =floattostr (a[i, j]).
увеличение i на 1 и переход к циклу1.
увеличение j на 1 и переход к циклу 2.
для i=1 до 4 делать (цикл 1).
для j=1 до 6 делать (цикл 2).
если a[i, j]=0 то.
s='элемент = '+inttostr (a[i, j])+', '+'№ его строки = '.
+inttostr (i)+', '+'№ его столбца = '+inttostr (j).
Выведем полученные результаты в документ output. dat:
writeln (f1,s).
Отобразим их в Memo1:
Memo1.lines.add (s).
увеличение i на 1 и переход к циклу1.
увеличение j на 1 и переход к циклу 2.
closefile (f1).
конец.