Создать Массив Записей

  • Автор темы -
  • Дата начала
Статус
Закрыто для дальнейших ответов.

Гость
#1
Ребята пожалуйста у кого есть какие соображения на счет этой программы, а то я все команды забыл(:)
Создать массив записей А(n), где n<=20, содержащий сведения: фамилии, три оценки на экзаменах. Используя процедуру, определить студентов, успевающий на 5, и упорядочить их массив по алфавиту. В основной программе полученный массив вывести на экран.


Код:
var a : array[1..20]; i, j, n : integer; s : string; t;
begin
write('Количество записей = '); readln(n);
for i := 1 to 20 do begin
write('Фамилия: '); readln(a[i].surname);
write('Оценки: '); readln(a[i].grade);

end;
writeln('Фамилии' : 15, 'Оценки' : 15);
for i := 1 to 20 do
writeln(a[i].surname : 15, a[i].grade : 15);
write('Фамилия, оценки найти: '); readln(s);
j := -1;
for i := 1 to 20 do
if a[i].surname = s then begin
j := i;
break
end;
if j <> -1
then writeln('Оценки: ', a[j].grade)
else writeln('Не найдено');
{сортировка}
for i := 1 to n - 1 do
for j := i + 1 to n do
if a[i].surname > a[j].surname then begin
t := a[i];
a[i] := a[j];
a[j] := t
end;
writeln('Фамилии' : 15, 'Оценки' : 15);
for i := 1 to n do
writeln(a[i].surname : 15, a[i].grade : 15);
end.
По-моему это бред?


и почему прога дает ошибку на uses,type не чего не понимаю(((((((
если что-то типо такого:
Код:
uses crt;
type data=record
fio:string;
num:integer;
end;
var stud: array [1..20] of data;
tmp:data;
i,n,x:integer;

begin
ClrScr;
write ('Kol-vo studentov: '); readln (n);
for i:=1 to n do
begin
writeln('Студент #',i);
write ('Фамилия: '); readln (stud[i].fio);
write ('Оценка: '); readln (stud[i].num);
ClrScr;
end;
for i:=1 to n do
writeln (stud[i].fio, stud[i].num:5);
write ('Введите искомую оценку : '); readln (x);
ClrSCr;
Writeln ('Студенты получившие ',x);
for i:=1 to 20 do
if stud[i].num=x then writeln (stud[i].fio);
readln
end.
 

Cambur

Active Member
20.06.2010
27
0
venezuela@mail.ru
#2
привет! пара риторических вопросов...
почему бы не использовать:
1. визуальные компоненты
2. бд Access
конечно, если есть ограничивающие условия, то никуда не денешься..
 

nayke

Well-Known Member
04.08.2010
310
0
Москва
#3
привет! пара риторических вопросов...
почему бы не использовать:
1. визуальные компоненты
2. бд Access
конечно, если есть ограничивающие условия, то никуда не денешься..
Странные мысли..

По топику - текст ошибки увеличит вероятность, что тебе помогут.
И что значит "что-то типа такого"
 

Cambur

Active Member
20.06.2010
27
0
venezuela@mail.ru
#4
nayke, я бы использовал Tmemo, Tedit для ввода и вывода
или тот-же TStringGrid для вывода, но это как-то не красиво..
определить.., упорядочить.. - можно, конечно, написать процедуры а можно использовать одну строку элементарного Query
всё получится симпатичней, проще и надёжней, если использовать БД
 

nayke

Well-Known Member
04.08.2010
310
0
Москва
#5
nayke, я бы использовал Tmemo, Tedit для ввода и вывода
или тот-же TStringGrid для вывода, но это как-то не красиво..
определить.., упорядочить.. - можно, конечно, написать процедуры а можно использовать одну строку элементарного Query
всё получится симпатичней, проще и надёжней, если использовать БД
В данном случае лабораторная работа, обучающая действиям со списками - достаточно полезная вещь.
В этом случае выводить результ в консоль или на формы безразлично.
Тем более бессмыслица написана с БД, если рассматривать описанную предметную область как реальную задачу, то access здесь противопоказан.
А говорить о разнице списков и БД странно, поскольку это разные области работы - динамическая обработка и хранение данных.

поэтому и написал, что странный комментарий)
 

Cambur

Active Member
20.06.2010
27
0
venezuela@mail.ru
#6
nayke, привет!
... с новым годом!
мне нравится работу с данными перекладывать на базы данных
они и хранят и обрабатывают и оптимизированы дай боже..
вся работа со списками, массивами, ..прочими сверхумностями сводится к паре запросов к БД :)
 
Статус
Закрыто для дальнейших ответов.