program vst; var c:array [0..100] of...

0 голосов
77 просмотров

program vst;

var c:array [0..100] of integer;

j,n,k,i:integer;

min:integer;

begin

randomize; writeln('n='); read(n);

{блоквводаэлементовмассива}

for i:=1 to n do c[i]:=5-random(10);

{блок вывода массива на экран}

writeln;

for i:=1 to n do write (c[i],' ');

{нахождение MIN-элемента}

min:=c[1];

for i:=2 to n do

if min>c[i] then min:=c[i];

writeln ('min=',min);

{вставка на место указанного k-го места МIN элемента}

writeln('k='); read(k);

for i:=n+1 downto k do c[i]:=c[i-1];

c[k]:=min;

{блок вывода элементов массива}

writeln; for i:=1 to n+1 do write (c[i],' ');

end.

Набрать программу vst. Просмотреть текст программы и выяснить назначение и работу отдельных блоков.

Изменить блок ввода данных таким образом, чтобы массив заполнялся случайным образом в интервале от –15 до 20.

3. Изменить программу так, чтобы была произведена вставка значения элемента, введенного с клавиатуры. Результаты изменения и выполнения программы записать в тетрадь.



Информатика (249 баллов) | 77 просмотров
Дано ответов: 2
0 голосов
Правильный ответ

Program vst;
var
  c:array [0..100] of integer;
  j,n,k,i:integer;
  min:integer;
begin
  randomize; write('Введите N = '); readln(n);
  for i:=1 to n do
    c[i]:=random(36)-15;
  writeln;
  for i:=1 to n do
    write (c[i],' ');
  writeln;
  min:=c[1];
  for i:=2 to n do
    if min>c[i] then min:=c[i];
  writeln ('min = ',min);
  write('Введите место для вставки минимального элемента К = '); readln(k);
  writeln ('Вывод массива:');
  write('Было:  ');
  for i:=1 to n do
    write (c[i]:3,' ');
  for i:=n+1 downto k do
    c[i]:=c[i-1];
  c[k]:=min;
  writeln;
  write('Стало: ');
  for i:=1 to n+1 do
    write (c[i]:3,' ');
end.

(52.6k баллов)
0 голосов

Чтобы массив заполнялся от -15 до 20:

program vst;
var c:array [0..100] of integer;
j,n,k,i:integer;
min:integer;
begin
randomize; writeln('n='); read(n);
for i:=1 to n do c[i]:=random(36)-15;
writeln;
for i:=1 to n do write (c[i],' ');
min:=c[1];
for i:=2 to n do
if min>c[i] then min:=c[i];
writeln ('min=',min);
writeln('k='); read(k);
for i:=n+1 downto k do c[i]:=c[i-1];
c[k]:=min;
writeln; for i:=1 to n+1 do write (c[i],' ');
end.

---

Чтобы был ручной ввод:

program vst;
var c:array [0..100] of integer;
j,n,k,i:integer;
min:integer;
begin
writeln('n='); read(n);
for i:=1 to n do
readln(c[i]);
writeln;
for i:=1 to n do write (c[i],' ');
min:=c[1];
for i:=2 to n do
if min>c[i] then min:=c[i];
writeln ('min=',min);
writeln('k='); read(k);
for i:=n+1 downto k do c[i]:=c[i-1];
c[k]:=min;
writeln; for i:=1 to n+1 do write (c[i],' ');
end.

(7.2k баллов)