диля1234567асем
23.08.2021 18:37

Программисты
с pascal
написать сортировку массива методом простого выбора
через процедуры(разбить программу на блоки)
на подобии этого :

program pr_81;
uses crt;
const n=20;
type mass=array [1..n] of integer;
var m: mass; kod: integer;
k: integer;
procedure zp(var a: mass; k: integer);
var i: byte;
begin
for i: =1 to k do
a[i]: = random(5); //-random(11);
end;
procedure ms(var a: mass; k: integer);
var i: byte;
begin
for i: =1 to k do
write(a[i]: 4);
writeln;
end;
procedure sr( var a: mass; k: integer);
var j,i,h: integer; b: mass;
begin
for i: =1 to k do b[i]: =-1000;
for i: =1 to k do begin
h: =0;
for j: =1 to k do
if a[i]> a[j] then inc(h);
while (h+1< =k)and(a[i]=b[h+1]) do inc(h);
b[h+1]: =a[i];
end;
a: =b;
end;
function po(a: mass; k: integer): boolean;
var i,q,z: integer;
begin
write('введите удаляемое число');
po: =false;
while a[i]< > 0 do begin
if (a[i]=q) then begin po: =true; z: =i end;
write(z);
end;
end;
procedure menu;
begin
writeln('1.заполнение массива');
writeln('2.вывод массива');
writeln('3.сортировка массива');
writeln('4.удаление');
writeln('5.exit');
end;
begin
write('введите количество элементов=');
read(k);
repeat
menu;
readln(kod);
case kod of
1: zp(m,k);
2: ms(m,k);
3: sr(m,k);
4: po(m,k)
end;
until kod=5;
end.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
znayka001
10.01.2022 19:11

var G,F:file of integer;

   i,j,n:integer;

   s:integer;

   c,c1,c2:integer;

begin

writeln;

write('Vvedite n:');

readln(n);

Assign(G,'C:\g.txt');

Assign(F,'C:\f.txt');

Rewrite(F);

for i:=1 to n do

begin

c1:=1;

c2:=1;

for j:=1 to i+1 do begin

if j<i+1 then c1:=c1*2;

c2:=c2*3;

end;

c:=c1+c2;

write(F,c);

end;

Close(F);

Reset(F);

Rewrite(G);

s:=0;

while not Eof(f) do

begin

read(F,c);

if c>0 then c:=c*(-1);

write(G,c);

s:=s+c;

end;

write(G,s);

close(F);

close(G);

reset(G);

writeln('Komponenty fajla j:');

while not Eof(G) do

begin

read(G,c);

write(c);

end;

readln;

end.

Приклад.Виведення таблиці значень функції у файл.

Програма:

program file_of_values;

var

х : Real;

k : Word;

out_file : Text; {тип Text відповідає файлу. що складається із рядків тексту}

function F(x: Real): Real;  

begin

F := x/d.O + x);  

end;

begin

Assign(out_file, 'c:\user\ivanov\table.dat');

Rewrite(out_file);

x := 0.0;

WriteLn(out_file, 'Таблиця значень функції F(x) = x/(l + x)');

WriteLn(out_file);

WriteLn(out_file, 'x':9, 'F(x)':19);

WriteLn(out_file);

for k := 0 to 50 do  

begin

WriteLn(out_file, x:9:3, F(x):19:9);

x := x + 0.1:

if k mod 10 = 9 then WriteLn(out_file);  

end;

Close(out_file);  

end.

0,0(0 оценок)
Ответ:
annaoroku3
08.10.2020 08:35
Var
  arr: array[1..27] of integer;
  summ: integer;
begin
  Randomize;
  for var i := 1 to 27 do
  begin
    arr[i] := random(-5, 5);
    summ := summ + arr[i];
  end;
  writeln('Массив: ',arr);
  writeln('Сумма всех элементов массива = ',summ);
  for var i := 1 to 27 do if arr[i] = 0 then arr[i] := summ;
  writeln('Массив: ',arr);
end.

пример работы:
Массив: [5,-1,1,5,4,-2,-3,0,3,5,-3,-4,3,0,-1,-4,5,-2,1,-4,5,2,-4,5,4,-5,-1]
Сумма всех элементов массива = 14
Массив: [5,-1,1,5,4,-2,-3,14,3,5,-3,-4,3,14,-1,-4,5,-2,1,-4,5,2,-4,5,4,-5,-1]

var
  arr: array of integer;
  n,k,m: integer;
begin
  write('Введи n: ');
  readln(n);
  Randomize;
  arr:= new integer[n];
  for var i := 0 to n-1 do arr[i] := random(-5, 5);
  writeln('Массив: ',arr);
  for var i := 0 to n-1 do
  begin
    if arr[i]<0 then inc(k);
    if (i>=1) and (i<=6) then inc(m);
    if (i>=6) and (arr[i]>=0) then arr[i]:=1;
  end;
  writeln('Количество отрицательных элементов массива = ',k);
  writeln('Количество элементов массива в интервале [2..7] = ',m);
  writeln('Массив: ',arr);
end.

Пример работы:
Введи n: 5
Массив: [0,1,-4,1,3]
Количество отрицательных элементов массива = 1
Количество элементов массива в интервале [2..7] = 4
Массив: [0,1,-4,1,3]

Введи n: 15
Массив: [0,1,4,3,-3,5,-4,-1,1,-2,3,1,-4,1,3]
Количество отрицательных элементов массива = 5
Количество элементов массива в интервале [2..7] = 6
Массив: [0,1,4,3,-3,5,-4,-1,1,-2,1,1,-4,1,1]
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота