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

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

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.04.2016, 19:03   #1
Ucheniza
Новичок
Джуниор
 
Регистрация: 27.04.2016
Сообщений: 4
По умолчанию Масиви, pascal

Найти среднее арифметическое положительных элементов массива
Ucheniza вне форума Ответить с цитированием
Старый 28.04.2016, 07:33   #2
Alex794
Пользователь
 
Регистрация: 25.04.2016
Сообщений: 11
По умолчанию Среднее арифметическое положительных элементов

Код:
N:=0;
S:=0;
for i:=1 to Size do
  if M>0 then
    begin
      Inc(N);
      S:=S+A[i]
    end
WriteLn(S/N);
Alex794 вне форума Ответить с цитированием
Старый 28.04.2016, 08:34   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Alex794, нет.
во-первых, что это за if M>0 ?!
там должно быть if A[i]>0 then

во-вторых,
перед выводом нужно добавить проверку, что N <> 0
(если положительных в массиве нет). Иначе будет вылет с ошибкой деления на ноль.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 28.04.2016, 08:47   #4
Alex794
Пользователь
 
Регистрация: 25.04.2016
Сообщений: 11
По умолчанию

Прально! Писал не думая - первая по пьяни, вторая по недомыслию.
Alex794 вне форума Ответить с цитированием
Старый 01.05.2016, 12:28   #5
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

А моя трезвая голова вот что написала:
Код:
var p:array[1..10] of integer;
    i,n:integer;
    sr:real;
begin
   Randomize;
   For i:=1 to 10 do
   begin
      p[i]:=-10+Random(21);
      Write(p[i]:3,'  ');
   end;
   Writeln;
   Writeln;
   sr:=0;
   n:=0;
   For i:=1 to 10 do
      If p[i]>0 then
      begin
         sr:=sr+p[i];
         n:=n+1;
      end;
   If n>0 then
   begin
      sr:=sr/n;
      Writeln('srednee = ',sr:3:3);
   end else
      Writeln('no!');
   Readln;
end.
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Масиви Djkjlbvbh Общие вопросы C/C++ 1 06.04.2014 14:09
Масиви в с++ Natali11 C++ Builder 0 08.12.2012 17:08
Масиви!!! bohdan1217 Помощь студентам 5 05.10.2012 16:40
масиви в С++ loloverg Помощь студентам 0 26.05.2010 16:32