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

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

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

> Записи
emyly
сообщение 4.05.2006 13:20
Сообщение #1


Новичок
*

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

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


Составить список учебной группы, включающей 5 человек. Для каждого учащегося указать дату рождения, год поступления в ВУЗ, курс, группу, успеваемость по общеобразовательным предметам (математика, физика, информатика, история, ин. язык. Информацию о каждом учащемся оформить в программе в виде записи. Совокупность записей объединить в массив. Распечатать список студентов, фамилии которых начинаются с буквы А, и их оценки.

В FAQ была,читала. Программка вот:

Код
program grupa;
type student=record
fio : string[10];
godr:1986..1988;
godpostup:2003..2005;
ocenky:record
matem,history,inform,inglish,fizika:1..5
end
end;
var grupa: array [1..5] of student;
s1: student; i,j: integer;
begin
with s1, ocenky   do
begin
for i:=1 to 5 do
begin
write('Vvedite danie=>');
for j:= 1 to 5  do
read(fio[j]);
readln(godr,godpostup,matem,history,inform,inglish,fizika); {при запуске в этой строке выдаётся ошибка 201:Ошибка при проверке границ.}
grupa[i]:=s1
end
end;
writeln ('Spisok studentov na bukvu A:');
for i:= 1 to 5  do with grupa[i] do
if fio[1] in [‘A’] then
writeln  (fio,'godr',godr:4,'godpostup=', godpostup:4, ocenky);
end.



Что посоветуете для устранения ошибки и по программе вообщем? И ещё, совершенно дурацкий вопрос: как вводить данные после запуска программы? В какой последовательности? Помогите пожалуйста. unsure.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 13)
volvo
сообщение 4.05.2006 14:07
Сообщение #2


Гость






Цитата(emyly @ 4.05.2006 13:20)
Что посоветуете для устранения ошибки и по программе вообщем?

Цитата(emyly @ 4.05.2006 13:20)
И ещё, совершенно дурацкий вопрос: как вводить данные после запуска программы? В какой последовательности?

Вот... А теперь совет: если бы ты эти вопросы задала в обратном порядке (сначала - что вводить), то второго вопроса просто не было бы...

Что такое "Ошибка 201: Range Check Error"? Это значит, что вводимые тобой данные выходят за границы своих типов, например переменная типа Byte (может принимать значения 0 .. 255), а ты пытаешься туда запихнуть -1, к примеру...

Смотрим на строку, ожидающую ввода данных:
readln(godr,godpostup,matem,history,inform,inglish,fizika);

Если ты это перепишешь вот так:

Write('Год рождения [1986 .. 1988] : '); readln(godr);
Write('Год поступления [2003 .. 2005] : '); readln(godpostup);
Writeln('Оценки [1 .. 5] :');
Write('математика: '); readln(matem);
Write('история: '); readln(history);
Write('информатика: '); readln(inform);
Write('английский: '); readln(inglish);
Write('физика: '); readln(fizika);


кому-то будет хуже? Нет, но ты же сама уже никогда не ошибешься при вводе значений...
 К началу страницы 
+ Ответить 
emyly
сообщение 4.05.2006 14:30
Сообщение #3


Новичок
*

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

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


Кстати, С днем Рожденья! Желаю, чтобы всё было и ни фига за это не было good.gif

Я переписала тот кусок-где вводишь данные-действительно-намного легче и проще. Последняя проблема заключается в том, что условие,похоже, не дописано-там где вывод фамилий на "А".

Код
writeln ('Spisok studentov na bukvu A:');
for i:= 1 to 5  do with grupa[i] do
if fio[1] in [‘A’] then
writeln  (fio,'godr',godr:4,'godpostup=', godpostup:4, ocenky);    -{здесь проверьте,пожалуйста}


Сообщение отредактировано: emyly - 4.05.2006 15:09
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
emyly
сообщение 4.05.2006 15:10
Сообщение #4


Новичок
*

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

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


прошу прощения, не успела вовремя отредактировать сообщение wink.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 4.05.2006 15:14
Сообщение #5


Гость






Вот так попробуй:
writeln ('Spisok studentov na bukvu A:');
for i:= 1 to 5 do with grupa[i] do
if fio[1] in ['A'] then
with ocenky do
writeln(fio,'godr: ',godr:4,'godpostup=', godpostup:4,
matem:3, history:3, inform:3, inglish:3, fizika:3);
 К началу страницы 
+ Ответить 
emyly
сообщение 4.05.2006 16:55
Сообщение #6


Новичок
*

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

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


не реагирует. Последняя фраза, что он выводит, это: "список студентов на букву А"
Код
writeln ('Spisok studentov na bukvu A:');-----после двоеточия ведь не указано, что он должен вывести, может в этом ошибка?

Что-то я уже совсем запуталась.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 4.05.2006 17:07
Сообщение #7


Гость






ПРИСОЕДИНИ программу полностью, как ты ее запускаешь. Именно присоедини, а не копируй сюда.

И данные, которые вводишь. Я больше повторять не буду. Не хочешь, чтобы тебе помогали - не надо!
 К началу страницы 
+ Ответить 
emyly
сообщение 4.05.2006 17:37
Сообщение #8


Новичок
*

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

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


воть задача(кол-во студентов сократила до 3).
Ввожу(подряд,как запрашивает):

Иванов
1988
2005
5
3
4
5
4

Сидоров
1987
2003
3
4
2
5
4

Алиева
1988
2005
4
4
5
5
5


Прикрепленный файл  LAB5.PAS ( 992 байт ) Кол-во скачиваний: 350
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 4.05.2006 18:19
Сообщение #9


Гость






В строчке
if fio[1] in ['A'] then
у тебя буква 'A' латинская... Исправь на русскую...

А лучше - сделай 2 буквы во множестве - одна латинская, другая русская...
 К началу страницы 
+ Ответить 
emyly
сообщение 4.05.2006 19:49
Сообщение #10


Новичок
*

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

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


Вообщем,спасибо за всё! Кстати,всё равно не работает. Ну,значит, не судьба smile.gif Спасибо!
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 4.05.2006 20:08
Сообщение #11


Гость






А если вот так попробовать:
program gruppa;
uses crt;
type
student = record
fio: string[20];
godr: 1986..1988;
godpostup:2003..2005;
ocenky:record
matem,fizika,inform,history,english:1..5
end;
end;

var
grupa: array [1..3] of student;
s1: student; i,j: integer;

begin
clrscr;
with s1, ocenky do begin
for i:=1 to 3 do begin
writeln ('vvedi dannie');
write ('fio '); readln (fio);
write ('godr [1986..1988]:'); readln (godr);
write ('godpostup [2003..2005]:');readln (godpostup);
writeln ('ocenky [1..5]:');
write ('matem:'); readln (matem);
write ('fizika:'); readln (fizika);
write ('inform:'); readln (inform);
write ('history:'); readln (history);
write ('english:'); readln (english);
grupa [i]:=s1
end
end;

writeln ('spisok studentov na bukvu A:');
for i:=1 to 3 do with grupa[i] do begin
if fio[1] in ['A'] then { <--- Добавь еще русскую A}
with ocenky do
writeln (fio, ' godr=',godr:4, ' godpostup=', godpostup,
matem:3,history:3,inform:3, english:3,fizika:3);
end;
readln;
end.

?
 К началу страницы 
+ Ответить 
emyly
сообщение 4.05.2006 20:54
Сообщение #12


Новичок
*

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

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


как ни смешно это звучит,но всё без изменений. lol.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
volvo
сообщение 4.05.2006 21:43
Сообщение #13


Гость






А вот этому я просто не верю... Понимаешь? НЕ ВЕРЮ!!! Я гонял эту программу во всех доступных мне компиляторах, и во всех все прекрасно работает. У ТЕБЯ же - почему-то (спрашивается, почему ТОЛЬКО у тебя???) не работает?

НЕ ВЕРЮ!
 К началу страницы 
+ Ответить 
emyly
сообщение 5.05.2006 16:00
Сообщение #14


Новичок
*

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

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


lol.gif lol.gif lol.gif lol.gif lol.gif
А я правду говорила. Именно у Меня эта программа не работала. А вот в универе-всё пучком,с первого раза!
Спасибочки! good.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

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

 



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