помогите решить задачу: Написать процедуру, считывающую из текстового файла массив чисел размера N. Если сумма этих чисел окажется четной , то увеличить размер массива на одну строку, заполненную случайными числами из диапазона от 5 до 30. Вывести массив на экран.
kase666
22.12.2005 21:09
PROGRAM MATRIX; USES CRT; VAR A:ARRAY[1..100,1..100] OF INTEGER; {твоя матрица} F:TEXT {текстовый файл с данными} INITSTR, STR1:STRING;d:char; N,DEL_X,DEL_Y,MAX,I,J,COUNT,CODE,RAZ_X, RAZ_Y:INTEGER;
BEGIN textmode(3); textbackground(0); textcolor(15); CLRSCR; d:=#205; ASSIGN(F,'MATRIX.TXT');RESET(F); REPEAT BEGIN readLN(f,INITSTR); IF INITSTR='<==========>' THEN {после нахождения этой строки считаем что данные расположены за ней} BEGIN readLN(f,RAZ_X);{сначала в файле указан размер матрицы} readLN(f,RAZ_Y); FOR I:=1 TO RAZ_Y DO BEGIN INITSTR:='';J:=0; readLN(f,INITSTR);{далее считываем колличество строк матрицы и разбиваем их на элементы} REPEAT J:=J+1; IF (INITSTR[J]=' ') THEN BEGIN COUNT:=COUNT+1; val(STR1,A[COUNT,I],CODE); STR1:=''; IF J=LENGTH(INITSTR) THEN COUNT:=0; END; IF (INITSTR[J]<>' ') THEN STR1:=STR1+INITSTR[J]; UNTIL (J=LENGTH(INITSTR));
END; END; END UNTIL EOF(F); CLOSE(F); WRITELN('=========загружена матрица размером ',RAZ_X,'x',RAZ_Y,'========='); WRITELN; end.
структура файла matrix.txt здесь может быть комментарий снизу две 10 указывают на размер X и Y ну а далее сама матрица в конце строк матрицы обязательно должен быть пробел <==========> 10 10 12 32 4 7 1 0 98 65 234 2 2 2 2 2 2 2 2 255 2 2 5 5 5 5 5 5 5 5 5 5 9 9 9 9 9 9 9 9 9 9 1 1 1 1 1 1 1 1 1 1 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 7 7 7 7 7 7 7 7 7 7 8 8 8 8 8 8 8 8 8 8 6 5 4 0 0 0 0 0 3 1
ВСЕ ТЕПЕРЬ ДЕЛАЙ С НЕЙ ЧТО ХОЧЕШЬ!!!
Теги не для тебя созданы?
volvo
22.12.2005 21:17
kase666, матрицу можно нормально прочесть из файла без всяких сохраненных размерностей... Пример - здесь: Запись и чтение фаила + матрица
И уж конечно можно обойтись без чтения в строку и извлечения из нее чисел...
kase666
22.12.2005 21:41
Цитата(volvo @ 22.12.2005 17:17)
kase666, матрицу можно нормально прочесть из файла без всяких сохраненных размерностей... Пример - здесь: Запись и чтение фаила + матрица
И уж конечно можно обойтись без чтения в строку и извлечения из нее чисел...
ну да! круто... помог бы с мультисписками-то...
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.