Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.01.2018, 17:54   #1
UnrealOui
Новичок
Джуниор
 
Регистрация: 29.01.2018
Сообщений: 2
По умолчанию Нахождения среднего арифметического

Разработайте программу для нахождения среднего арифметического элементов массива А, больших числа с, введенного с клавиатуры.
Больших числа с - я не знаю как сделать!
Код:
program pr;
 
var
  a: array [1..100] of integer;
  i, n, cout, sum: integer;
  avg: real;
 
begin
  cout := 0;
  sum := 0;
  writeln('Введите размер массива');
  readln(n);
  for i := 1 to n do
  begin
    a[i] := random(21);   // диапазон любой ставь( здесь от 0 до 20);
    write(a[i]:3);
    if i mod 2 = 0 then
    begin
      cout := cout + 1;
      sum := sum + a[i];
    end;
  end;
  writeln;
  writeln('Среднее арифметическое: ', sum / cout);
end.
UnrealOui вне форума Ответить с цитированием
Старый 29.01.2018, 18:44   #2
ZX Spectrum-128
Участник клуба
 
Регистрация: 05.11.2013
Сообщений: 1,602
По умолчанию

Код:
program pr;

var
  a: array [1..100] of integer;
  c, i, n, cout, sum: integer;
  avg: real;

begin
  randomize;
  cout := 0;
  sum := 0;
  writeln('Введите число С: ');
  readln(c);
  writeln('Введите размер массива: ');
  readln(n);
  for i := 1 to n do
  begin
    a[i] := random(21);   // диапазон любой ставь( здесь от 0 до 20);
    write(a[i]:4);
    if a[i] > c then
    begin
      cout := cout + 1;
      sum := sum + a[i];
    end;
  end;
  writeln;
  if cout <> 0 then
    writeln('Среднее арифметическое: ', sum / cout)
  else
    writeln('Нет таких чисел');
end.

Последний раз редактировалось ZX Spectrum-128; 29.01.2018 в 18:51.
ZX Spectrum-128 вне форума Ответить с цитированием
Старый 29.01.2018, 18:57   #3
type_Oleg
Старожил
 
Аватар для type_Oleg
 
Регистрация: 02.03.2008
Сообщений: 2,538
По умолчанию

А если вместо этого:
Код:
begin
    a[i] := random(21);   // диапазон любой ставь( здесь от 0 до 20);
    write(a[i]:4);
    if a[i] > c then
    begin
      cout := cout + 1;
      sum := sum + a[i];
    end;
  end;
это:
Код:
begin
    a[i] := random(21);   // диапазон любой ставь( здесь от 0 до 20);
    write(a[i]:4);
    if a[i] <= c then Continue;
    cout := cout + 1;
    sum := sum + a[i];
  end;
то будет чуть короче.
type_Oleg вне форума Ответить с цитированием
Старый 29.01.2018, 20:46   #4
digitalis
Старожил
 
Аватар для digitalis
 
Регистрация: 04.02.2011
Сообщений: 4,534
По умолчанию

Думается, короче будет в записи исходника, а при компиляции - монофигственоо.
digitalis вне форума Ответить с цитированием
Старый 05.02.2018, 11:24   #5
zentie1st
Новичок
Джуниор
 
Регистрация: 05.02.2018
Сообщений: 2
По умолчанию

Вот так сообразилоь:
Код:
program qwerty;

var
  a: array of real;
  summa, resultat: real;
  n: integer;

begin
  print('Введите количество чисел:');
  readln(n);
  setlength(a, n);
  for var i := 1 to n do 
  begin
    write('Введите ', i, '-е число: ');
    readln(a[i - 1]);
  end;
  summa := a.Sum;
  resultat := summa / n;
  println('Среднее арифметическое число:', resultat);
end.
zentie1st вне форума Ответить с цитированием
Старый 05.02.2018, 11:29   #6
zentie1st
Новичок
Джуниор
 
Регистрация: 05.02.2018
Сообщений: 2
По умолчанию

Ещё короче:
Код:
program qwerty;

var
  a: array of real;
  n: integer;

begin
  print('Введите количество чисел:');
  readln(n);
  setlength(a, n);
  for var i := 1 to n do 
  begin
    write('Введите ', i, '-е число: ');
    readln(a[i - 1]);
  end;
  println('Среднее арифметическое число:', a.Sum / n);
end.
zentie1st вне форума Ответить с цитированием
Старый 05.02.2018, 11:30   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

Цитата:
Вот так сообразилоь
А где в сообразилось условие - больше числа c? Да и массив для этой задачки совсем не нужен ))
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 05.02.2018, 13:01   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от zentie1st Посмотреть сообщение
a.Sum
а это вообще не Паскаль (а упырь PascalABC.NET)
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите с выводом массивов и нахождения среднего арифметического (Delphi) Daniyar22 Помощь студентам 6 20.05.2014 10:48
Составьте блок-схему алгоритму для нахождения: среднего арифметического n заданных чисел; Alexander2810 Помощь студентам 0 24.02.2014 16:17
Программа нахождения суммы,среднего арифметического,минимума функции vralayala Паскаль, Turbo Pascal, PascalABC.NET 0 28.05.2013 12:10
отклонение от среднего арифметического KOLANICH Помощь студентам 3 24.10.2011 18:40
Нахождение среднего арифметического AliVe Паскаль, Turbo Pascal, PascalABC.NET 1 12.04.2007 00:25