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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 02.10.2011, 11:41   #1
Руся93
Пользователь
 
Регистрация: 02.10.2011
Сообщений: 27
По умолчанию Вводится 10 чисел. Найти среднее арифметическое положительных чисел и произведение отрицательных.

Вот что написал я
Код:
program m;
uses crt;
var i,j,cr,pr,sum,k:integer;
begin
clrscr;
sum:=0;
pr:=1;
j:=0;
for i:=1 to 10 do
begin
sum:=sum+k; j:=j+1; cr:=sum/j;
end;
else
pr:=pr*k;
end;
writeln(cr);
writeln(pr);
readkey;
end.
Программа не работает выдает ошибку Error26: Type mismatch. В паскале не силен, поэтому даже незнаю как её исправить.


________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 02.10.2011 в 12:27.
Руся93 вне форума Ответить с цитированием
Старый 02.10.2011, 12:02   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

a else тут к чему? не вижу ни 1 if.
Цитата:
cr:=sum/j;
тут div вместо / либо cr должен быть не целочисленного типа.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 02.10.2011, 12:08   #3
Руся93
Пользователь
 
Регистрация: 02.10.2011
Сообщений: 27
По умолчанию

Значит else не нужно?
Руся93 вне форума Ответить с цитированием
Старый 02.10.2011, 12:19   #4
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Цитата:
Значит else не нужно?
ну else может быть в условном операторе (if-then-else/если-то-иначе), тут он непонятно для чего.

но мне кажется этот код не решает задачу, потому что как минимум
Цитата:
Вводится 10 чисел
не вижу ни 1 ввода чего-либо
Цитата:
положительных чисел и ... отрицательных.
и определения положительное это число или отрицательное (скорее всего для этого и был if, от которого остался else).
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 02.10.2011 в 12:27.
Alex11223 вне форума Ответить с цитированием
Старый 02.10.2011, 12:28   #5
Руся93
Пользователь
 
Регистрация: 02.10.2011
Сообщений: 27
По умолчанию

Подскажите что нужно, чтобы задача решалась?
Руся93 вне форума Ответить с цитированием
Старый 02.10.2011, 12:30   #6
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

else нужен. но к нему ещё и if должен быть.
который проверяет, положительное число или отрицательное.

Дальше. А где собственно ВВОД 10 чисел?!!
Serge_Bliznykov вне форума Ответить с цитированием
Старый 02.10.2011, 12:33   #7
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Вводить в цикле 10 чисел. Если число положительное — прибавить его к переменной, в которой считается сумма положительных чисел и еще надо считать их кол-во, чтобы после цикла сумму разделить на кол-во и получить сред.арф. Иначе (если отрицательное) считать их произведение в другой переменной (кстати, не забудь перед циклом присвоить ей значение 1, ибо 0*любое_число=0).
Примерно такой алгоритм.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.

Последний раз редактировалось Alex11223; 02.10.2011 в 12:37.
Alex11223 вне форума Ответить с цитированием
Старый 02.10.2011, 12:40   #8
Руся93
Пользователь
 
Регистрация: 02.10.2011
Сообщений: 27
По умолчанию

Посмотрите пожалуйста, написал без ошибок но не считает
Код:
program g;
uses crt;
var i,j,cr,pr,sum,k:integer;
begin
clrscr;
sum:=0;
pr:=1;
j:=0;
for i:=1 to 10 do
begin
read(k);
if k>0 then 
begin
sum:=sum+k;
j:=j+1;
cr:=sum div j:
end
else
pr:=pr*k;
end;
writeln(cr);
writeln(pr);
readkey;
end.

________
Руся93, а Вы по русски читаете?!

Повторяю: Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)
Не забывайте об этом!
Модератор.

Последний раз редактировалось Serge_Bliznykov; 02.10.2011 в 12:51.
Руся93 вне форума Ответить с цитированием
Старый 02.10.2011, 12:47   #9
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

cr — это среднее арифметическое? Его после цикла (for) надо считать.
Хотя и так все должно считать. Только в той же строке опечатка — : вместо ;
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 02.10.2011, 12:56   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Код:
program g;
uses crt;
var i, j, sum, k: integer;
  pr : real;
begin
  clrscr;
  sum := 0;
  pr := 1;
  j := 0;
  for i := 1 to 10 do
  begin
    read(k);
    if k >= 0 then
    begin
      sum := sum + k;
      j := j + 1;
    end
    else
      pr := pr * k;
  end;
  if j=0 then WriteLn('Положительных чисел нет!')
  else WriteLn('Среднеарифметическое положительных: ', (sum/j):0:3);
  writeln('Произведение отрицательных: ', pr:0:0);
  readkey;
end.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
текст. числа, разделённые пробелами. Найти количество положительных чисел. Удалить строку с min количеством чисел (на С) lady_koshe4ka Помощь студентам 0 30.06.2011 12:20
Найти среднее арифметическое всех четных чисел Кристиш@ Паскаль, Turbo Pascal, PascalABC.NET 3 21.12.2010 18:54
Найти количество положительных, отрицательных и нулевых чисел!! Александр Маслов Помощь студентам 2 21.12.2010 00:32
Среднее арифмитическое положительных и отрицательных чисел в массиве dimit4 Общие вопросы C/C++ 3 24.06.2010 18:49
Найти среднее арифметическое отрицательных элементов, лежащих в нижней треугольной матрице массива А(m,m) bratello41 Паскаль, Turbo Pascal, PascalABC.NET 11 24.06.2010 18:49