Версия для печати
Убрать все задачи
Дан массив. Требуется вставить в него на место номер B элемент, равный C,
сдвинув все последующие элементы (включая элемент, стоящий на B-ом месте)
вправо.
Входные данные
Во входном файле записано сначала число N - количество элементов массива
(2<=N<=100), затем N чисел из диапазона Integer - элементы массива,
затем число B (1<=B<=N) и число C (из диапазона Integer).
Выходные данные
В выходной файл выведите N+1 число - элементы массива с вставленным элементом.
Примечание
Вы должны вставить элемент непосредственно в массив, а не сделать
вид при выводе данных, что у вас появился такой элемент. Также вы не
должны для этого заводить в программе дополнительный массив.
То есть ввод данных осуществляется следующим фрагментом:
read(fi,n);
for i:=1 to n do read(fi,a[i]);
read(fi,b,c);
А вывод - следующим:
for i:=1 to n+1 do write(fo,a[i],' ');
Необходимые фрагменты вы можете найти в файле P129.PAS
Пример входного файла
5
1 3 5 6 7
2 10
Пример выходного файла
1 10 3 5 6 7
Текст программы P129.PAS
const nmax=100;
var a:array[1..nmax] of integer;
n:integer;
i:integer;
b,c:integer;
fi,fo:text;
begin
assign(fi,'input.txt');
reset(fi);
assign(fo,'output.txt');
rewrite(fo);
read(fi,n);
for i:=1 to n do read(fi,a[i]);
read(fi,b,c);
{Вы должны писать здесь}
for i:=1 to n+1 do write(fo,a[i],' ');
close(fi);
close(fo);
end.

Решение
Пусть
α ,
β ,
γ – плоские углы
трёхгранного угла
SABC с вершиной
S , противолежащие
рёбрам
SA ,
SB ,
SC соответственно;
A ,
B ,
C –
двугранные углы при этих рёбрах. Докажите, что
cos α =
,
cos β =
,
cos γ =
.

Решение