программа на файлы в Turbo Pascal

  • Автор темы uiivalet
  • Дата начала
U

uiivalet

Гость
#1
помогите пожалуйста... в файлах на паскале совсем плохо понимаю(((
Создать программу которая создаёт на диске файл "Ведомость успеваемости учащихся класса" со следующей информацией:
фамилия и имя учащегося, название предмета, 3 предмета, 2 контрольные.
Программа должна обладать вводом, редактированием, выводом списка учащихся.
Вывод учащихся осуществлять по:
1. выполнившим хотя бы одну работу на "5".
2. все работы на "4" и "5".
3. две работы на "4" и "5".

заранее спасибо.
 

acorn

PHP Developer
29.08.2004
585
3
#2
вам прайс-лист показать или вы предложите свою попытку решения?
 

1ive

Well-Known Member
12.09.2010
621
0
#3
Это разве задачка?!
На ТЗ уже больше похоже.

Добавлено: Если не понимаешь только работу с файлами, то легче просто почитать
http://atomas.ru/tp/5/5_6.html
 

nayke

Well-Known Member
04.08.2010
310
0
#5
Вообще больше похоже на работу с базами данных а не с файлами.. может в задание про файлы не говорилось? И какого рода требуется помощь? код.. направление.. готовая программа?
 
B

bleene

Гость
#6
я не стал создавать отдельную тему и да простят меня модераторы а решил изложить свою проблему тут

само задание:
Даны три числа. Поменять местами большее и меньшее из этих чисел.

моё творчество:

Код:
var a:array[1..100]of integer;
x,y,i,min,max:integer;

begin

writeln('Введите 3 числа');
for i:=1 to 3 do read(a[i]);
min:=1;
max:=2;
for i:=1 to 3 do if a[i] > a[max] then max:=i else if a[i] < a[min] then min := i;
writeln('MAX = A[',max,'] = ', a[max]);
writeln('MIN = A[',min,'] = ', a[min]);
readln;
for i:=1 to 3 do write(a[i]);
end.
как поменять максимальное и минимально местами я понять не могу
 
F

flashkpi

Гость
#7
Не хочу разбираться в Ваших творениях, вот код, не проверял на работоспособность, но обязан работать, к-во чисел выбираете самостоятельно
Код:
const n =3;
var a:array[1..n] of integer;
obm,i,min,max:integer;
n,k,k1:integer;
begin
randomize; 

for i:=1 to n do 
begin
a[i]:=random(100);
write(a[i],' ');
end;
writeln;
min:=a[1];
max:=a[1];
for i:=2 to n do 

if a[i] < min then 
begin  
min:=a[i];
k:=i;
End;
for i:=2 to n do 
if a[i] > max then 
begin
max:=a[i];
k1:=i;
end;

obm:=a[k];
a[k]:=a[k1];
a[k1]:=obm;

for i:=1 to n do
write(a[i],' ');
end.
 
F

flashkpi

Гость
#10
НУ я ж написал, вы сами вводите любое количество, которое нужно, для Вашего частного случая вводите 3, и будет Вам массив из 3-х чисел, неужели даже это непонятно ?
 
F

flashkpi

Гость
#11
Отредактировал код, теперь 3, если уж так тяжело переделать...
 
B

bleene

Гость
#12
НУ я ж написал, вы сами вводите любое количество, которое нужно, для Вашего частного случая вводите 3, и будет Вам массив из 3-х чисел, неужели даже это непонятно ?
это-то понятно, затруднение вот что вызвало

Шибка: 0 - выход за границы диапазона изменения индекса строка 31....