Разное - Паскаль! создать массив целых чисел и записать его в файл

Ответить
Аватара пользователя
Desvi

Разное - Паскаль! создать массив целых чисел и записать его в файл

Сообщение Desvi »

Помогите пожалуйста, Составить программу, которая создает массив целых чисел и записывает его в файл разными способами (с использованием процедур write или blockwrite, read или blockread), а также вычисляет значение среднего арифметического всех элементов, записанных в файл.



Я набросал массив, если есть ошибки исправте пожалуйста





Код:

Код: Выделить всё

uses crt;
var a: file of integer; i: byte;
    mas:array[1..100] of integer; n:integer;
begin
assign(a,'file.bin');
reset(a);   
clrscr;
writeln ('Vvedite kol-vo elementov ');
readln (n);
writeln('vvedite zna4enie massiva: ');
for i:=1 to n do
write('a[',i,'] = ');
readln(a[i]);
end;
begin
read(a,mas[i]);
write(mas[i],'   ');
end;
close(a);
end.
Аватара пользователя
lxa85

Re: Разное - Паскаль! создать массив целых чисел и записать его в файл

Сообщение lxa85 »

Desvi, прокомментируй код пожалуйста.

Т.к. не совсем понятно что и где ты хочешь сделать.

Прости, но пока это больше похоже на набор бессвязных команд.



uses crt;

var

a: file of integer;

i: byte;

mas:array[1..100] of integer;

n:integer;

begin

assign(a,'file.bin');

reset(a); // что делает reset?

clrscr;

writeln ('Vvedite kol-vo elementov ');

readln (n);

writeln('vvedite zna4enie massiva: ');



for i:=1 to n do

write('a[',i,'] = '); // при данном расположении операторных скобок (begin, end) write - единственный оператор, который будет выполнятся в цикле for

readln(a); //что и откуда читаем? Вопрос кстати не праздный

end; // к чему относится этот end?



begin //этот begin тоже не понятен. Что хоть тут происходит, или что должно происходить?

read(a,mas);

write(mas,' ');

end;



close(a);

end.
Аватара пользователя
Desvi

Re: Разное - Паскаль! создать массив целых чисел и записать его в файл

Сообщение Desvi »

Немного исправил, но массив не записывается в файл, подскажите в чем ошибка? И как с файла посчитай средне арифметическое?







Код:

Код: Выделить всё

USES CRT;
var f:text;
    n,i:integer;
    nf:string;
    a: array[1..10] of integer;
begin
clrscr;
randomize;
write('Imya faila ');
readln(nf);
nf:=nf+'.txt';
assign(f,nf);
rewrite(f);
write('Skolko 4isel v massive n=');
readln(n);
for i:=1 to n do
 begin
randomize;
for i:=1 to n do
begin
a[i]:=random(n);
write(a[i],'     ');
end;
end;
close(f);
end.
Аватара пользователя
lxa85

Re: Разное - Паскаль! создать массив целых чисел и записать его в файл

Сообщение lxa85 »

Desvi, КОММЕНТАРИИ!!! Скоро на лбу у каждого студента писать буду!

(Без обид, но это уже надоедает. Благо программа маленькая разобраться можно, но привыкать не стоит.)



По коду:

Randomize надо вызвать один раз в начале программы. Это правильное его использование. (Что вообще делает randomize - читай в документации, гугле)



Покажи мне команду записи в файл. Где она?

Зачем тебе двойной вложенный цикл for i = 1 to n, причем не правильно написанный?
Ответить

Вернуться в «Программирование и базы данных»