Напишите плиз две проги простеньких
1) Даны описания:
type str = string[12];
Exzam = (Matem,Inform,Ximi);
Student = record
FIO: record F,I,O: STR
end;
GR: 1..3;
OTM: array[Exzam] of 2..5
end;
var
f1,f2: Text;
i,j: integer;
begin
assign(f1,'File1.txt');
rewrite(f1);
assign(f2,'File2.txt');
rewrite(f2);
randomize;
for i:=1 to 25 do begin
writeln(f1,random(200)-1); end;
for i:=1 to 20 do begin
writeln(f2,random(200)-1); end;
close(f1); close(f2);
readln
end.
Спасибо большое, сорри, не доисал немного, вывод в 3й файл еще
Необходимо организовать третий файл File3.txt,в который должны быть переписаны в порядке возрастания все числа из первого и второго файла.причем числа, содержащиеся одновременно в первом и втором файлах,в файле File3.txt повторяться не должны
Но вот первая как раз сейчас особенно актуальна
Во второй задаче при чтении из двух предыдущих файлов ошибка, как записать чтение правильно?
Для сортировки нужно создать массив из 45(20+25) чисел, и как правильно отсортировать, чтобы значения не повторялись?
Можно зделать так if x[i]<>x[i-1] then do типа вывод, else ничего не выводить
но прога будет проверять только предыдущий элемент?
чтения из файлов не проходит, сортировка вроде бы работает...
program laba1;
var
f1,f2,f3: Text;
i,b,j: integer;
a:array [1..45] of integer;
begin
assign(f1,'File1.txt');
rewrite(f1);
assign(f2,'File2.txt');
rewrite(f2);
assign(f3,'File3.txt');
rewrite(f3);
randomize;
for i:=1 to 25 do begin
writeln(f1,random(200)); end;
for i:=1 to 20 do begin
writeln(f2,random(200)); end;
for i:=1 to 25 do
reset(f1);
read(f1, a[i]);
for i:=26 to 45 do
reset(f2);
read(f2, a[i]);
{Исходный массив}
for i:=1 to 45 do writeln (a[i]);
for j:=1 to 44 do for i:=44 downto j do if a[i]>a[i+1] then begin
b:=a[i];
a[i]:=a[i+1];
a[i+1]:=b
end;
{Отсортированный массив}
for i:=1 to 45 do writeln (f3,a[i]);
readln;
close(f1); close(f2); close(f3);
readln
end.
reset(f1); // Тут! До цикла! А НЕ в теле цикла!
for i:=1 to 25 do
read(f1, a[i]);
все, с этой разобрался, первую сделать немогу, хелп