Функции И Массивы

Тема в разделе "Pascal and Delphi", создана пользователем OlgaN, 3 янв 2013.

  1. OlgaN

    OlgaN New Member

    Регистрация:
    2 янв 2013
    Сообщения:
    1
    Симпатии:
    0
    ЗадаН массив целого типа А[1.99]. Оформить в виде функции вычисление среднего арифметического тех элементов матрицы, значения которых больше Х и меньше Y. Вывод среднего выполнить во внешнем блоке.
     
  2. IgorSh

    IgorSh New Member

    Регистрация:
    10 янв 2013
    Сообщения:
    1
    Симпатии:
    0
    Как я понил вопрос, числа задаются в промежутке от 1 до 99. Если я некорректно понял вопрос напишите. Среднее арифмитическое считается с округлением.

    Program SredArifm;
    VAR
    A:array[1..100] of integer;
    i,N,res,x,y:integer;
    function SredArifm(x,y:integer):integer;
    var
    j,s:integer;
    begin
    s:=1;
    for i:=x to y do
    s:=s+A;
    res:=S div 2;
    end;
    BEGIN
    readln(N); ///кол-во чисел в массиве 1..99,1..200
    for i:=1 to n do ///формирование массива
    begin
    A[1]:=1;
    A[i+1]:=A+1;
    end;
    for i:=1 to n do
    write(A,' ');
    readln(x,y);
    SredArifm(x,y);
    writeln(res);
    END.
     
  3. gpatron

    gpatron Active Member

    Регистрация:
    13 авг 2009
    Сообщения:
    26
    Симпатии:
    0

    не совсем корректная реализация алгоритма.. есть ошибки:
    вместо:
    Код (Delphi):
    function SredArifm(x,y:integer):integer;
    var
    j,s:integer;
    begin
    s:=1;
    for i:=x to y do
    s:=s+A[i];
    res:=S div 2;
    end;
    должно быть:
    Код (Delphi):
    function SredArifm(x,y:integer):integer;
    var s:integer;
    begin
    s:=0;
    for i:=x to y do s:=s+A[i];
    SredArifm:=S div (y-x);
    end;
    также при заполнении массива, вместо:
    Код (Delphi):
    for i:=1 to n do  ///формирование массива
    begin
    A[1]:=1;
    A[i+1]:=A[i]+1;
    end;
    должно быть:
    Код (Delphi):
    A[1]:=1;
    for i:=1 to n-1 do  ///формирование массива
    begin
    A[i+1]:=A[i]+1;
    end;
    ну или так:
    Код (Delphi):
    for i:=1 to n do  ///формирование массива
    begin
    A[i]:=i;
    end;

    а вообще скорее всего ты не так понял:
    массив размерностью [1..99] т.е. 99 элементов. В массиве могут быть различные целые числа, не только от 1 до 99.
     
Загрузка...
Похожие Темы - Функции Массивы
  1. Fazer77777
    Ответов:
    1
    Просмотров:
    1.662
  2. Генералл
    Ответов:
    2
    Просмотров:
    55
  3. rn3rjd
    Ответов:
    0
    Просмотров:
    448
  4. Sanchezz86
    Ответов:
    1
    Просмотров:
    586
  5. Sentim
    Ответов:
    1
    Просмотров:
    627

Поделиться этой страницей