Вычислить номер максимального по модулю элемента массива - Turbo Pascal (34002)

Формулировка задачи:

В одномерном массиве, состоящем из n вещественных элементов, вычислить 1 Номер максимального по модулю элемента массива. 2 Сумму элементов массива, расположенных после первого положительного элемента. Преобразовать массив такие образом, чтобы сначало располагались все элементы, целая часть которых лежит в интервале [а,б], а потом все остальные.


textual

Код к задаче: «Вычислить номер максимального по модулю элемента массива - Turbo Pascal (34002)»

const
  k = 10;
 
var
  B, C: array[1..100] of real;
  a, S, max: real;
  n, i, imax, p: integer;
  bln: boolean;
 
begin
  write('n = ');
  readln(n);
  write('a = ');
  readln(a);
  bln := true;
  S := 0;
  max := -k;
  write('Введим массив ', n, ' случайных вещественных чисел:');
  randomize;
  for i := 1 to n do begin
    b[i] := k * (2 * random - 1);
    write('  ', b[i]:0:3);
    if abs(b[i]) > max then begin
      max := abs(b[i]);
      imax := i
    end;
    if bln then begin
      if b[i] > 0 then bln := false
    end
    else S := S + b[i]    
  end;
  writeln;
  writeln('Номер максимального по модулю элемента: ', imax);
  writeln('Сумма элементов массива после 1-го положительного: ', S:0:3);
  writeln;
  p := 0;
 { Делаем преобразование: }
  for i := 1 to n do
    if ((int(b[i]) >= a)and(int(b[i]) <= 6)) then begin 
      inc(p);
      c[p] := b[i]
    end;
  for i := 1 to n do
    if ((int(b[i]) < a)or(int(b[i]) > 6)) then begin
      inc(p);
      c[p] := b[i]
    end;
  writeln('Выводим преобразованный массив:');
  for i := 1 to p do write('  ', c[i]:0:3);
end.
Эта работа вам не подошла?

Вы всегда можете заказать любую учебную работу у наших авторов от 20 руб.


СДЕЛАЙТЕ РЕПОСТ

10   голосов, оценка 4.100 из 5

Источник