Типовые задачи на Паскале (массивы)

  • docx
  • 10.11.2021
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала Л2-00303.docx

Типовые задачи на Паскале (массивы)

Массив - это упорядоченный набор однотипных элементов, обозначаемых одним именем; доступ к элементу массива осуществляется по его номеру.

Для записи элементов массива в память компьютера нужно выделить для их хранения необходимое количество ячеек памяти, которое определяется размером массива.

В программе для каждого массива должны быть указаны его параметры: имя, размерность и размер. Бывают одномерные, двумерные и т.д. массивы. Это называется размерностью.

Одномерные массивы (последовательности).

A: 3,-4,0,3,-5,10,0

A[1]=3, A[3]=0, A[7]=0

I - номер элемента, A[I] - элемент массива, стоящий на I-ом месте

1.                  Сформировать и вывести на экран последовательность из n элементов, заданных датчиком случайных чисел на интервале [-23, 34].

Program posled;

Var a: array[1..100] of integer;

      i, n: integer;

Begin

  Write ('Сколько элементов? '); 

  Readln(n);

   For i:=1 to n do

       begin      

            a[i]:= Random(58)-23;

             write (a[i],' ');

       end;

End.

2. Найти произведение элементов одномерного массива, состоящего из n элементов. Элементы вводятся с клавиатуры.

 

Program proisveden;

Var a: array[1..100] of integer;

      i, n, p: integer;

Begin

  Write ('Сколько элементов? ');  Readln (n);

  p:=1;

  For i:=1 to n do

     begin

       write ('введите число '); readln (a[i]);

       p:=p*a[i];

     end;

     writeln('произведение элементов равно:  ',p);

End.

3. Найти сумму элементов одномерного массива. Размер произвольный. Элементы вводятся с клавиатуры.

Program summa;

Var a: array[1..100] of real;

      i, n: integer;

        s: real;

Begin

  Write ('сколько элементов '); Readln (n);

  s:=0;

  For i:=1 to n do

     begin

       write ('введите число '); readln (a[i]);

       s:=s+a[i];

     end;

     writeln('сумма  элементов равна  ',s);

End.

 

4. Задан массив А, состоящий из n чисел. Найти среднее арифметическое его элементов. Элементы вводятся с клавиатуры.

Program srednee;

Var a: array[1..100] of  real;

      i, n: integer;

        s,sred: real;

Begin

  Write ('сколько элементов '); Readln (n);

  s:=0;

  For i:=1 to n do

     begin

       write ('введите число '); readln (a[i]);

       s:=s+a[i];

     end;

   sred:=s/n;    

  writeln('среднее арифметическое  элементов: ',sred);

End.

5. Найти сумму элементов массива с четными номерами, содержащего N элементов. Элементы вводятся с клавиатуры.

Program sumshet;

Var a: array[1..100] of  real;

      i, n: integer;

        s: real;

Begin

  Write ('сколько элементов '); Readln (n);

  s:=0;

  For i:=1 to n do

     begin

       write ('введите число '); readln (a[i]);

       if i mod 2 = 0 then s:=s+a[i];

     end;

   writeln('сумма элементов с четными номерами: ',s);

End.

6. Сформировать и вывести на экран массив, элементы которого заданы датчиком случайных чисел на интервале [-19, 26] (размер произвольный). Найти произведение элементов с нечетными номерами.

Program proisvednechet;

Var a: array[1..100] of  integer;

      i, n, p: integer;

Begin

  Write ('Сколько элементов? ');  Readln (n);

  P:=1;  

  For i:=1 to n do

       begin      

            a[i]:= Random(46)-19;

             writeln (a[i],' ');

            if i mod 2 <> 0 then P:=P*a[i];

       end;

  Writeln('Произведение элементов с нечетными номерами: ', P);

End.

7. Сформировать и вывести на экран массив, элементы которого заданы датчиком случайных чисел на интервале [-56, 47] (размер произвольный). Найти произведение элементов с четными номерами, которые превосходят некоторое число t.

Program proisvedchetbolt;

Var a: array[1..100] of integer;

      i, n, p, t: integer;

Begin

  Write ('Сколько элементов? ');  Readln (n);

  Write ('Введите t '); Readln (t);

  P:=1;

  For i:=1 to n do

       begin      

            a[i]:= Random(104)-56;  writeln (a[i],' ');

            if (i mod 2 = 0) and (a[i]>t) then P:=P*a[i];

       end;

  Writeln('Произведение элементов с четными номерами, превосходящие число t:', P);

End.


 

Посмотрите также