![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
emil |
![]()
Сообщение
#1
|
Гость ![]() |
помогите решить задачу:
Написать процедуру, считывающую из текстового файла массив чисел размера N. Если сумма этих чисел окажется четной , то увеличить размер массива на одну строку, заполненную случайными числами из диапазона от 5 до 30. Вывести массив на экран. |
kase666 |
![]()
Сообщение
#2
|
![]() Группа: Пользователи Сообщений: 7 Пол: Мужской Реальное имя: dron Репутация: ![]() ![]() ![]() |
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 - 7.11.2006 17:35 -------------------- Господи! Сколько же еще не сделано...
А сколько же еще предстоит не сделать... |
volvo |
![]()
Сообщение
#3
|
Гость ![]() |
kase666, матрицу можно нормально прочесть из файла без всяких сохраненных размерностей... Пример - здесь:
Запись и чтение фаила + матрица И уж конечно можно обойтись без чтения в строку и извлечения из нее чисел... |
kase666 |
![]()
Сообщение
#4
|
![]() Группа: Пользователи Сообщений: 7 Пол: Мужской Реальное имя: dron Репутация: ![]() ![]() ![]() |
kase666, матрицу можно нормально прочесть из файла без всяких сохраненных размерностей... Пример - здесь: Запись и чтение фаила + матрица И уж конечно можно обойтись без чтения в строку и извлечения из нее чисел... ну да! круто... помог бы с мультисписками-то... -------------------- Господи! Сколько же еще не сделано...
А сколько же еще предстоит не сделать... |
![]() ![]() |
![]() |
Текстовая версия | 30.07.2025 5:25 |