IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> считывание с файла!
arhimag
сообщение 2.01.2006 23:05
Сообщение #1


Знаток
****

Группа: Пользователи
Сообщений: 424
Пол: Мужской

Репутация: -  2  +


Помогите найти ошибку, почему в конце стрелочки???
Код
program MapEdit;
uses vesa256, vesatype, crt;
const
edit = 'map.txt';
var           driver, mode, x, y, i,j,a : integer;
              map: array [1..100,1..100] of char;
              karta:text;
              probel:string;
              tekstura: char;

procedure readng(level: string);
var i, j, n, m : integer;
begin
     assign(karta,level);
     reset(karta);
     For i:=  1 to 100 do for j:= 1 to 100 do  begin
     if (j = 1) and (i<>1) then begin
     readln(karta,tekstura);
     map[j,i]:=tekstura;
     end
     else
     begin
     read(karta, tekstura);
     map[j,i]:=tekstura;
     end;
     end;
     close(karta);
end;

begin
     readng(edit);
     for i:= 1 to 100 do for j:= 1 to 100 do if j=1 then begin writeln(map[j,i]); readln; end else
     write(map[j,i]);
     readln;
end.


Прикрепленные файлы
Прикрепленный файл  map.txt ( 9.86 килобайт ) Кол-во скачиваний: 239


--------------------
Чего хочет женщина – того хочет Бог
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 2.01.2006 23:29
Сообщение #2


Гость






Вообще-то при работе с файлами желательно использовать While {Seek}Eof(f) чтобы прочитать столько значений, сколько есть в файле...

Ну, а во-вторых, ты просто неправильно читаешь данные из файла... Вот так - никаких "стрелочек" не будет:
procedure readng(level: string);
var i, j, n, m : integer;
begin
assign(karta,level);
reset(karta);
For i:= 1 to 100 do
for j:= 1 to 100 do
begin
if (j=100) then begin
readln(karta,tekstura);
map[j,i]:=tekstura;
end
else begin
read(karta, tekstura);
map[j,i]:=tekstura;
end;
end;
close(karta);
end;
 К началу страницы 
+ Ответить 
K Y S K A
сообщение 11.01.2006 21:50
Сообщение #3


Пионер
**

Группа: Пользователи
Сообщений: 95
Пол: Женский
Реальное имя: Оля

Репутация: -  -1  +


Volvo'чка не мог ли ты выложить весь текст программы, а то у меня все равно в TP7 стрелочки появляются sad.gif
Если кто стесьняется вставлять свой кодд, то не надо этого делать, мне просто надо сделать похожую программку, и тоже какието стрелочки вылезают!!! Помогите!!! Пожалуйста!!!!!!!

Сообщение отредактировано: K Y S K A - 11.01.2006 21:51
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 11.01.2006 21:54
Сообщение #4


Гость






Цитата
мне просто надо сделать похожую программку, и тоже какието стрелочки вылезают!!!
Приведи свой код - универсального рецепта нету, в каждом случае делается по-разному... Надо смотреть, что у тебя за проблема, и только тогда ее можно будет решить...
 К началу страницы 
+ Ответить 
K Y S K A
сообщение 11.01.2006 22:20
Сообщение #5


Пионер
**

Группа: Пользователи
Сообщений: 95
Пол: Женский
Реальное имя: Оля

Репутация: -  -1  +


Volvo ты не мог ли мне просто предьявить ту програмку, просто эта у меня только в тренировочных вариантах с форума и алгоритмах!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 11.01.2006 22:22
Сообщение #6


Гость






Программа - та же самая, я только поменял процедуру:
program MapEdit;
uses
vesa256, vesatype, crt;
const
edit = 'map.txt';
var
driver, mode, x, y, i,j,a : integer;
map: array [1..100, 1..100] of char;
karta:text;
probel:string;
tekstura: char;

procedure readng(level: string);
var i, j, n, m : integer;
begin
assign(karta,level);
reset(karta);
For i:= 1 to 100 do
for j:= 1 to 100 do
begin
if (j=100) then begin
readln(karta,tekstura);
map[j,i]:=tekstura;
end
else begin
read(karta, tekstura);
map[j,i]:=tekstura;
end;
end;
close(karta);
end;

begin
readng(edit);
for i:= 1 to 100 do
for j:= 1 to 100 do
if j=1 then begin
writeln(map[j,i]); readln;
end
else write(map[j,i]);
readln;
end.
 К началу страницы 
+ Ответить 
K Y S K A
сообщение 11.01.2006 22:25
Сообщение #7


Пионер
**

Группа: Пользователи
Сообщений: 95
Пол: Женский
Реальное имя: Оля

Репутация: -  -1  +


ну я без весы тестирую, но ты до конца её до кручивал???
там точно стрелочки появляются!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 11.01.2006 22:38
Сообщение #8


Гость






K Y S K A,
если я сказал, что тестировал, значит - тестировал. Не тебе меня учить проверять правильность программы !! mad.gif
 К началу страницы 
+ Ответить 
Студентик13
сообщение 11.01.2006 22:40
Сообщение #9


Пионер
**

Группа: Пользователи
Сообщений: 53
Пол: Мужской
Реальное имя: Николай

Репутация: -  -4  +


Стрелочки появляются ради интереса проверил


--------------------
Учение есть учение, а свет есть свет и ненадо обобщать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 11.01.2006 22:44
Сообщение #10


Гость






Правда? Ну, тогда присоедините ОБА скриншоты с рабочего стола, где видны эти стрелочки... Я хочу САМ увидеть их... В особенности это относится к тебе, Студентик13... Ты б свои проблемы решал...

Свой скрин присоединю через минуту...
 К началу страницы 
+ Ответить 
Студентик13
сообщение 11.01.2006 22:49
Сообщение #11


Пионер
**

Группа: Пользователи
Сообщений: 53
Пол: Мужской
Реальное имя: Николай

Репутация: -  -4  +


Удаляюсь решать свои проблемищи mega_chok.gif mega_chok.gif


--------------------
Учение есть учение, а свет есть свет и ненадо обобщать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
K Y S K A
сообщение 11.01.2006 22:57
Сообщение #12


Пионер
**

Группа: Пользователи
Сообщений: 95
Пол: Женский
Реальное имя: Оля

Репутация: -  -1  +


вот


Эскизы прикрепленных изображений
Прикрепленное изображение
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 11.01.2006 23:12
Сообщение #13


Гость






Ну, а у меня - вот:


Эскизы прикрепленных изображений
Прикрепленное изображение
 К началу страницы 
+ Ответить 
Студентик13
сообщение 11.01.2006 23:19
Сообщение #14


Пионер
**

Группа: Пользователи
Сообщений: 53
Пол: Мужской
Реальное имя: Николай

Репутация: -  -4  +


У меня совсем по другому mad.gif пора комп выкидывать ато от перепрошивок черт знай что dry.gif


Эскизы прикрепленных изображений
Прикрепленное изображение

--------------------
Учение есть учение, а свет есть свет и ненадо обобщать.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
FIAT
сообщение 12.01.2006 2:42
Сообщение #15


Гость






Вот корректное чтение:
program MapEdit;
const
edit = 'map.txt';
var
driver, mode, x, y, i,j,a : integer;
map: array [1..100, 1..100] of char;
karta:text;
probel:string;
tekstura: char;

procedure readng(level: string);
var i, j, n, m : integer;
begin
assign(karta,level);
reset(karta);
For i:=1 to 100 do begin

for j:= 1 to 99 do begin
read(karta,tekstura);
map[i, j]:=tekstura;
end;
readln(karta)
end;
close(karta);
end;

begin
readng(edit);
for i:= 1 to 100 do begin
for j:= 1 to 99 do
write(map[i, j]);
writeln;
end;
end.

Просто в файле 100 строк по 99 символов, а делается попытка читать 100 по 100 символов. Отсюда и проблема...

Сообщение отредактировано: volvo - 5.11.2006 21:33
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 21.06.2025 0:03
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"