М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
vladyslav2523
vladyslav2523
16.11.2022 06:04 •  Информатика

Содномерным массивом, состоящим из n вещественных элементов, произвести следующие операции: 1) найти номер минимального элемента массива; 2) вычислить сумму элементов массива, расположенных между первым и вторым отрицательными элементами; 3) преобразовать массив таким образом, чтобы сначала располагались, все элементы, модуль которых не превышает 1, а потом – все остальные. примечание: размеры массивов именованными константами. все операции над массивами выполняются отдельными процедурами и функциями в том порядке, в котором они описаны в . элементы массивов одним из двух генерация случайным образом или ввод с клавиатуры заполнения массива выбирается пользователем. реальную размерность массива программа должна спрашивать у пользователя (в диапазоне от единицы до значения, определяемое константой).

👇
Ответ:
doc2934
doc2934
16.11.2022
//Pascal ABC.NET 3.1 сборка 1219

Const
 nc=10000;

Type
 ty=array[1..nc] of real;

 function minind(ar:ty;n:integer):integer;
Var
 i,mini:integer;
 min:real;
begin
min:=11;
  for i:=1 to n do
   if ar[i]<min then
    begin
     min:=ar[i];
     mini:=i;
    end;
minind:=mini;
end;

function sum1to2(ar:ty;n:integer):real;
 Var
 i,t1,t2:integer;
 r:real;
begin
 for i:=1 to n do
  if ar[i]<0 then
    begin
    t1:=i;
    break;
   end;
 for i:=t1+1 to n do
  if ar[i]<0 then
   begin
    t2:=i;
    break;
   end;
for i:=t1+1 to t2-1 do
r:=r+ar[i];
sum1to2:=r;
end;

procedure stransort(var ar:ty;n:integer);
Var i,j,nd:integer;
begin
nd:=0;
 for i:=1 to n do
  if abs(ar[i])<=1 then
   begin
    inc(nd);
    swap(ar[i],ar[nd]);
   end;
end; 

Var
 ar:ty;
 i,n:integer;
begin
randomize;
 readln(n);
writeln('Array:');
for i:=1 to n do
 begin
  ar[i]:=random(-3,3);
  write(ar[i]:4);
 end;
writeln;
writeln('Index of minimum:',minind(ar,n));
writeln('Sum=',sum1to2(ar,n));
stransort(ar,n);
writeln('Final array:');
for i:=1 to n do
write(ar[i]:4);
end.
Пример ввода:
5
Пример вывода:
Array:
   3   2   1   2   1
Index of minimum:3
Sum=0
Final array:
   1   1   3   2   2
4,6(71 оценок)
Открыть все ответы
Ответ:
PolinaCat29
PolinaCat29
16.11.2022
// PascalABC.NET 3.1, сборка 1200 от 13.03.2016

function gcd(a,b:integer):integer;
// Нахождение НОД
begin
  while b<>0 do
  begin
    a:=a mod b;
    var i:=b; b:=a; a:=i
  end;
  Result:=a
end;

procedure Shorter(var a,b:integer);
// "сокращатель" дроби
begin
  var k:=gcd(a,b);
  a:=a div k;
  b:=b div k
end;

begin
  var a,b:integer;
  Writeln('Введите числитель и знаменатель дроби: ');
  Read(a,b);
  Write(a,'/',b,'='); Shorter(a,b); Writeln(a,'/',b)
end.

Тестовое решение:
Введите числитель и знаменатель дроби:
25 15
25/15=5/3
4,7(68 оценок)
Ответ:
Cat4ik
Cat4ik
16.11.2022
//Вот программа, которая кодирует слова в системах счисления от 2 до 10
//Первый ввод - число, второй - система счисления
//Pascal ABC.NET v3.0

var
 a,i,b,r,n,j,bug:integer;
 s,se,slo,slof:string;

procedure preob(var a,b,n:integer; var se:string);
 begin
  repeat
   b:=a mod n;
   a:=a div n;
   str(b,se);
   s+=se;
  until (a<=n-1);
 end;

begin
readln(slo);
readln(n);
for j:=1 to length(slo) do
begin;
a:=ord(slo[j]);
preob(a,b,n,se);
str(a,se);
s+=se;
for i:=1 to length(s) div 2 do
begin;
se:=s[i];
s[i]:=s[length(s)-i+1];
s[length(s)-i+1]:=se[1];
end;
write(s,'-');
slof:=slof+s;
delete(s,1,length(s));
end;
end.

//Слово Программа она кодирует как 11001111-11110000-11101110-11100011-11110000-11100000-11101100-11101100-11100000-
4,7(55 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ