Одномерные массивы

Автор работы: Пользователь скрыл имя, 01 Декабря 2011 в 22:41, лабораторная работа

Описание работы

Цель работы: в одномерном массиве, состоящем из n целочисленных элементов, вычислить:
А) Номер максимального элемента массива
Б) Произведение элементов массива, расположенных между первым и вторым нулевыми элементами.
В) Преобразовать массив таким образом, чтобы в первой его половине располагались элементы, стоящие в нечётных позициях, а во второй половине — элементы, стоящие в чётных позициях.

Файлы: 1 файл

massiv1.docx

— 5.91 Кб (Скачать файл)
 

СПБ НИУ ИТМО 
 
 
 
 

Лабораторная  работа №4 

«Одномерные массивы» 
 
 
 
 
 
 
 
 

Выполнил: Григорьев А. С.

гр. 1108 
 
 
 

Вариант №___

  1. Цель работы: в одномерном массиве, состоящем из n целочисленных элементов, вычислить:

А) Номер  максимального элемента массива

Б) Произведение элементов массива, расположенных  между первым и вторым нулевыми элементами.

В) Преобразовать  массив таким образом, чтобы в  первой его половине располагались  элементы, стоящие в нечётных позициях, а во второй половине — элементы, стоящие в чётных позициях.

  1. Блок-схема программы:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
  1. Код программы:

program massiv;

uses crt;

const n = 9;

var

a,b : array [1..10] of integer;

max, t, o, c :real;

i, j, k, n1, n2, pr :integer;

begin

clrscr;

pr := 1;

for i := 1 to n do readln (a[i]);

max := a[1];

k := 1;

writeln('1)');

for I := 1 to n do begin

      if (a[i]>max) then begin

            max := a[i];

            k := i;

      end;

end;

writeln ('max element= ',max,' nomer= ',k);

k := 0;

n1 := 0;

n2 := 0;

for i := 1 to n do begin

      if a[i] = 0 then begin

            n1 := i;

      end;

      if (n1 <> 0) then break;

end;

for i := 1 to n do begin

      if (a[i]=0) and (i <> n1) then begin

      n2:=i;

      end;

      if (n2 <> 0) then break;

end;

writeln ('2)');

if (n1 = 0) or (n2 = 0) then begin

      writeln ('v massive menshe dvuh nulej');

      end else begin

      for i := (n1+1) to (n2-1) do begin

            pr := pr * a[i];

      end;

end;

writeln ('proizvedenie= ', pr);

j := 0;

for i := 1 to n do

      if (i mod 2 = 1) then begin

            j := j + 1;

            b[j] := a[i];

      end;

for i := 1 to n do

      if (i mod 2 = 0) then begin

            j := j + 1;

            b[j] := a[i];

      end;

writeln ('3)');

for i := 1 to n do begin

      writeln (b[i],' ');

end;

readln;

end. 

  1. Таблица значений:

зададим одномерный массив

 1 2 3 4 5 6 7 8 9

Max = 9, номер = 9

=================================

v massive menshe dvuh nulej

=================================

После перестановки массив выглядит так

1 3 5 7 9 2 4 6 8

Информация о работе Одномерные массивы