Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 22.05.2010, 13:21   #1
T@tali
Пользователь
 
Регистрация: 06.05.2010
Сообщений: 72
По умолчанию Ошибка в программе.

Помогите пожалуйста найти ошибку. Не создается файл. И соответственно нет вывода данных. Задание такое:

Напишите программу в ИСР Pascal для создания массива из 10 элементов типа запись (ввод полей осуществляется с клавиатуры). Запись для каждого студента должна содержать следующие поля: номер по порядку, фамилия, имя, группа, оценка. Эти данные нужно программным образом записать в текстовый файл, а затем осуществить чтение и форматный вывод информации из этого файла на экран.


Код:
Type stu=record
Surname, name,gruppa:string;
x1,x2,x3:byte;
A:real;
End;
Var z:stu;
i,b,d:integer;
begin
d:=0; b:=0;
for i:=1 to 10 do
begin
writeln(‘Порядковый номер:’);
write(‘surname:’);
readln(z.name);
write(‘gruppa’);
readln(z.gruppa);
write(‘ocenki:’);
readln(z.x1,z.x2,z,x3);
z.a:=(z.x1+z.x2+z.x3)/3;
if z.a=5 then b:=b+1 else
if z.a>=4 then d:=d+1;
readln;
end;
end.
T@tali вне форума Ответить с цитированием
Старый 22.05.2010, 13:48   #2
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

чтобы создать файл, нужно написать:
Код:
var f:text;
begin
       assign(f,'директория ');
       rewrite(f);
       write(f,'переменные или текст');
_-Re@l-_ вне форума Ответить с цитированием
Старый 22.05.2010, 13:54   #3
ROMA2PVT
ТАМБОВСКИЙ ВОЛК.
Участник клуба
 
Аватар для ROMA2PVT
 
Регистрация: 16.03.2010
Сообщений: 1,354
По умолчанию

да ток для начала массив надо создать.
にんじゃ
ROMA2PVT вне форума Ответить с цитированием
Старый 22.05.2010, 16:02   #4
T@tali
Пользователь
 
Регистрация: 06.05.2010
Сообщений: 72
По умолчанию

а можно подробней. Куда этот кусок кода вставить. И для чего нужен массив?
T@tali вне форума Ответить с цитированием
Старый 22.05.2010, 18:34   #5
T@tali
Пользователь
 
Регистрация: 06.05.2010
Сообщений: 72
По умолчанию

такие ошибки выходят. В чем у меня проблемма не подскажете?


Compiling '5_2_5.D98165B6'...
[Pascal Error] 5_2_5.D98165B6(1): E202 identifier (name) expected
[Pascal Error] 5_2_5.D98165B6(4): E415 type name or integer/char constant expected, 'byte' found
[Pascal Error] 5_2_5.D98165B6(7): E415 type name or integer/char constant expected, 'text' found
[Pascal Error] 5_2_5.D98165B6(10): E428 identifier 'assign' is not procedure, function, variable or unit name
Done - 4 error(s), 0 warning(s)
T@tali вне форума Ответить с цитированием
Старый 22.05.2010, 20:56   #6
ilyas22
Пользователь
 
Регистрация: 04.11.2009
Сообщений: 17
По умолчанию Поздно, наверное, хотя отпишись

Type stu=record
Surname, name,gruppa,ozenka:string;
x1,x2,x3:byte;
A:real;
End;
Var
f:file of stu; friends: array [1..100] of stu;
z:stu;
i,b,d,n:integer;
begin
assign(f,'f.text');
rewrite(f);
d:=0; b:=0;
for i:=1 to 10 do
begin
writeln('surname:');
readln(friends[i].surname );
writeln('gruppa');
readln(friends[i].gruppa);
writeln('ocenki:');
readln(friends[i].ozenka);
end;
close(f);
reset(f);
while not Eof(F) do
begin
read(f,friends[n]);end;
for i:=1 to 10 do
begin
writeln('cтудент-',friends[i].surname,'-группа-',friends[i].gruppa,'-оценки-',friends[i].ozenka);
end;
close(f)
end.
ilyas22 вне форума Ответить с цитированием
Старый 22.05.2010, 20:56   #7
ilyas22
Пользователь
 
Регистрация: 04.11.2009
Сообщений: 17
По умолчанию Поздно, наверное, хотя бы отпишись

Type stu=record
Surname, name,gruppa,ozenka:string;
x1,x2,x3:byte;
A:real;
End;
Var
f:file of stu; friends: array [1..100] of stu;
z:stu;
i,b,d,n:integer;
begin
assign(f,'f.text');
rewrite(f);
d:=0; b:=0;
for i:=1 to 10 do
begin
writeln('surname:');
readln(friends[i].surname );
writeln('gruppa');
readln(friends[i].gruppa);
writeln('ocenki:');
readln(friends[i].ozenka);
end;
close(f);
reset(f);
while not Eof(F) do
begin
read(f,friends[n]);end;
for i:=1 to 10 do
begin
writeln('cтудент-',friends[i].surname,'-группа-',friends[i].gruppa,'-оценки-',friends[i].ozenka);
end;
close(f)
end.
ilyas22 вне форума Ответить с цитированием
Старый 22.05.2010, 21:01   #8
ROMA2PVT
ТАМБОВСКИЙ ВОЛК.
Участник клуба
 
Аватар для ROMA2PVT
 
Регистрация: 16.03.2010
Сообщений: 1,354
По умолчанию

ilyas22 Эти данные нужно программным образом записать в текстовый файлЕсли имеется ввиду именно текстовые файлы а не типизированные.
にんじゃ
ROMA2PVT вне форума Ответить с цитированием
Старый 23.05.2010, 16:35   #9
T@tali
Пользователь
 
Регистрация: 06.05.2010
Сообщений: 72
По умолчанию Те же ошибки выскакивают, что и выше.

Спасибо за исправленный код. Скажите пожалуйста, это у меня с компилятором что то да? программа должна работать, а ошибки выскакивают. Кто нибудь может проверить на своем? пожалуйста сообщите. Буду качать тогда новый.
T@tali вне форума Ответить с цитированием
Старый 23.05.2010, 21:50   #10
T@tali
Пользователь
 
Регистрация: 06.05.2010
Сообщений: 72
По умолчанию Срочно

Советы будут? Я не пойму либо паскаль у меня слетел либо в проге ошибка. подскажите пожалуйста.
T@tali вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ошибка в программе forman Общие вопросы C/C++ 1 18.05.2010 22:47
Ошибка в программе larin1974 Помощь студентам 7 06.03.2010 20:44
Ошибка в программе на С++ Vikelf Помощь студентам 3 15.05.2009 15:05
С++ Ошибка в программе EwwwA Общие вопросы C/C++ 5 05.01.2009 23:12