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

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

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

2 страниц V  1 2 >  
 Ответить  Открыть новую тему 
> файлы, записи., помогите пожалуйста найти ошибку
Евгения
сообщение 7.06.2004 13:49
Сообщение #1


Новичок
*

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

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


Помогите пожалуйста найти ошибку в курсовике..
Проблема, после ввода данных в таблицу отображаются только последняя введенная фамилия. После сохранения в файл, сохраняется тоже только последняя запись.
Задание:
1 Оформить ввод исходных данных в файл данных. Отсортировать данные по суммарному кол-ву часов в порядке возрастания. Результаты напечатать в файл в след. виде:
Код

____________________________________________________________________
ФИО               Лекции                Пpактики             Всего
             ________________________________________              
                 час          %         час       %          часов
____________________________________________________________________
fam             kol1         pr1        kol2      pr2         kol
____________________________________________________________________
В среднем                    -                     -           -
____________________________________________________________________

Прикрепленный файл  KURSOVIK.rar ( 3.14 килобайт ) Кол-во скачиваний: 408


Сообщение отредактировано: Altair - 26.11.2005 12:22


--------------------
Мастерство приходит с осознанием своего не знания...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Romtek
сообщение 7.06.2004 13:54
Сообщение #2


Знаток
****

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

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


В функции Proverka неверное определение существования файла.
Надо сделать так:
Код
function FileExists(str:string): boolean;
var
 ff: text;
begin
 assign(ff,str);
 {$I-}
 reset(ff);
 {$I+}
 if IORESULT=0 then
 begin
   close(ff);
   FileExists:=true;
 end
 else FileExists:=false;
end;


А не лучше ли было прикрепить архив с исходником?

Сообщение отредактировано: romtek - 7.06.2004 17:09


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Romtek
сообщение 7.06.2004 17:22
Сообщение #3


Знаток
****

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

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


Проверка на наличие фамилии в файле делается так:
Код
while not EOF(F) do
begin
 read(F, rec);
 if rec.fio=fio then
 begin
 {...}
 end;
end;


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 7.06.2004 18:02
Сообщение #4


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

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


в procedure SaveTable;
заменить

Код
TextColor(red);
Writeln('Фаил таблицы:');
NAME:='';
WHILE NAME='' DO readln(name);


на

Код
TextColor(red);
Writeln('Фаил таблицы:');
readln(name);


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Евгения
сообщение 7.06.2004 18:07
Сообщение #5


Новичок
*

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

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


Спасибо... rolleyes.gif


--------------------
Мастерство приходит с осознанием своего не знания...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Romtek
сообщение 7.06.2004 18:31
Сообщение #6


Знаток
****

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

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


Здесь ещё уйму чего можно делать.

Сообщение отредактировано: romtek - 7.06.2004 19:09


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Romtek
сообщение 7.06.2004 18:55
Сообщение #7


Знаток
****

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

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


Дальше:
выводится только последняя запись, т.к. ты просто выводишь за пределами цикла


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Romtek
сообщение 7.06.2004 19:12
Сообщение #8


Знаток
****

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

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


Чуть лучше smile.gif


Прикрепленные файлы
Прикрепленный файл  kursovik2.zip ( 3.89 килобайт ) Кол-во скачиваний: 154


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Евгения
сообщение 7.06.2004 20:36
Сообщение #9


Новичок
*

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

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


Пасябки.. А я тут уснула не надолго.... :p2:


--------------------
Мастерство приходит с осознанием своего не знания...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Romtek
сообщение 7.06.2004 21:17
Сообщение #10


Знаток
****

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

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


Вот ещё обновлённый вариант.
Может и не последний.

Но на сегодня точно хватит!

Сообщение отредактировано: romtek - 7.06.2004 21:21


Прикрепленные файлы
Прикрепленный файл  kursovik3.zip ( 3.86 килобайт ) Кол-во скачиваний: 170


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Студент
сообщение 7.06.2004 21:20
Сообщение #11





Группа: Пользователи
Сообщений: 5

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


ХВАТИТ ЗДЕСЬ ЛАЗАТЬ, УХОДИ!!!!!!!!!!!!!!

модератор
Еще один такой пост и Студент пойдет в баню...

Модератор 2 (Oleg_Z):
1. GLuk, подписывайся, тут 2 модера (про меня не забывай smile.gif )
2. А как ты его можешь забанить?
to СТУДЕНТ
GLuk прав!



1. Какая разница, думаю ты сделал бы тоже самое, в смысле с предупреждением.. (но впредь буду подписываться)
2. Никто не говорил, что буду его банить его буду именно я... ;)


Сообщение отредактировано: GLuk - 8.06.2004 15:54
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Евгения
сообщение 8.06.2004 10:03
Сообщение #12


Новичок
*

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

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


Чтобы посчитать в среднем нужно поставить счетчик на количество фамилий и 2 переменные чтоб считали значеия количество лекций и практик ?
подскажите пожалуста как это правильнее сделать... :p2:


--------------------
Мастерство приходит с осознанием своего не знания...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Romtek
сообщение 8.06.2004 10:15
Сообщение #13


Знаток
****

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

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


Count - кол-во преподов
Practice_Total - общее кол-во практик у всех преподов
Practice_Average - среднее кол-во практик у всех преподов
Код
Practice_Average:=Practice_Total/Count;
Theory_Average:=Theory_Total/Count;


Сообщение отредактировано: romtek - 8.06.2004 10:18


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Romtek
сообщение 8.06.2004 12:31
Сообщение #14


Знаток
****

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

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


В цикле (при считывании записей из файла) складываешь все практики, лекции и людей, потом делишь на кол-во тех самых людей.

Код
Practice_Total:=0;
Theory_Total:=0;
while Not EOF(F) do
begin
 read(F,rec);
 inc(Practice_Total, практик_у_препода); { inc(k,n);  <=>  k:=k+n; }
 inc(Theory_Total, лекций_у_препода);
 inc(Count);
 {...}
end;
Practice_Average:=Practice_Total/Count;
Theory_Average:=Theory_Total/Count;


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Евгения
сообщение 8.06.2004 12:33
Сообщение #15


Новичок
*

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

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


Спасибочкиsmile.gif))))


--------------------
Мастерство приходит с осознанием своего не знания...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Евгения
сообщение 9.06.2004 23:31
Сообщение #16


Новичок
*

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

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


Помгите пожалуйста исправить 2 бага.. Срок сдачи через 5 часов

Один при сохранении в файл теряется среднее значение (kol1_average и kol2_average), в таблицу вносятся нули...

Второй как правильно сделать ограничение...

Исходник прилагаю...


Прикрепленные файлы
Прикрепленный файл  ________.rar ( 3.95 килобайт ) Кол-во скачиваний: 166


--------------------
Мастерство приходит с осознанием своего не знания...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Altair
сообщение 10.06.2004 7:09
Сообщение #17


Ищущий истину
******

Группа: Модераторы
Сообщений: 4 824
Пол: Мужской
Реальное имя: Олег

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


первый глюк попробуй исправить так
Цитата
Writeln(TXT);
      Writeln(TXT, translate(' ‚ бpҐ¤­Ґ¬:'),
    kol1_Average:5:1,kol2_average:26:1);

Это надо изменить. убери первую строку writeln(txt);
или замени ее на writeln(txt,' ');
второй оператор тоже какой-то навороченный, у меня нет сейчас компилера, не могу проверить, но мне кажется это из-за него теряется значение, разбей его на несколько вот так:
Цитата
write(txt,translate(' ‚ бpҐ¤­Ґ¬:')); 
и так далее, т.е. на более простые.
А какие проблеммы с ограничением?


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Romtek
сообщение 10.06.2004 10:32
Сообщение #18


Знаток
****

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

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


Oleg_Z , эту прогу я уже помог доделать. Курсовик Евгения
уже может даже сдала.


ОК. Я не знал.

Сообщение отредактировано: Oleg_Z - 10.06.2004 10:38


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Евгения
сообщение 11.06.2004 13:46
Сообщение #19


Новичок
*

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

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


Огромное спасибо Romtek

Сегодня сдала курсовик на 4.. почему на 4?
Преод просто повредничала и сказала, что у меня используется много функций которые она не давала


--------------------
Мастерство приходит с осознанием своего не знания...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
Romtek
сообщение 11.06.2004 15:00
Сообщение #20


Знаток
****

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

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


Я рад был помочь. smile.gif
Цитата(Евгения)
Преод просто повредничала и сказала, что у меня используется много функций которые она не давала
Она просто дура blink.gif
Так НАДО программировать.

Кстати, ты хотела, чтобы я тебе пояснил некоторые вещи по курсовику. Желательно, чтобы ты их понимала.


--------------------
Romiras HomeLab- материалы и статьи по разработке ПО, моделирование алгоритмов, обработка и анализ информации, нейронные сети, машинное зрение и прочее.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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