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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.12.2012, 10:25   #1
Александр 19
 
Аватар для Александр 19
 
Регистрация: 17.12.2012
Сообщений: 5
Сообщение Pascal ABC одномерные массивы

Помогите решить

1.Найти среднее арифметическое положительных и отрицательных элементов массива S(10).Исходный массив заполнить с помощью случайных целых чисел (Задача на обработку элементов одномерного массива, с использованием базовых алгоритмов: нахождение суммы и количества по определенному условию).

2.В заданном c клавиатуры одномерном массиве Z(n) найти максимальный элемент среди всех отрицательных элементов. (Задача на обработку элементов одномерного массива, с использованием базового алгоритма - нахождение максимального элемента).
Александр 19 вне форума Ответить с цитированием
Старый 17.12.2012, 16:15   #2
Aranea tela telam
Пользователь
 
Аватар для Aranea tela telam
 
Регистрация: 11.01.2012
Сообщений: 51
По умолчанию

1 Задача
Код:
Program pr1;
var
a:array [1..10] of integer;
i,i1,i2,i3,i4:integer;
c1,c2:real;
begin
i1:=0;
i2:=0;
i3:=0;
i4:=0;
randomize;
for i:=1 to 10 do
begin
a[i]:=-100+random(200);
if a[i]<0 then 
begin
inc(i1);
i3:=i3+a[i];
end
else
if a[i]>0 then 
begin
inc(i2);
i4:=i4+a[i];
end;
end;
c1:=round(i3/i1);
Writeln('средне арифмитическое отрицательных чисел = ',c1);
c2:=round(i4/i2);
Writeln('средне арифмитическое положительных чисел = ',c2);
end.
Я учусь на своих ошибках, но порой их слишком много
Aranea tela telam вне форума Ответить с цитированием
Старый 17.12.2012, 16:21   #3
Aranea tela telam
Пользователь
 
Аватар для Aranea tela telam
 
Регистрация: 11.01.2012
Сообщений: 51
По умолчанию

2 Задача
Код:
Program User;
var 
a:array of int64;
i,b,n:int64;
begin
randomize;
b:=0;
Readln(n);
setlength(a,n);
for i:=0 to n-1 do
begin
a[i]:=Random(100);
if b<a[i] then b:=a[i];
end;
Writeln('Наибольший элемент = ',b);
end.
Я учусь на своих ошибках, но порой их слишком много
Aranea tela telam вне форума Ответить с цитированием
Старый 17.12.2012, 17:22   #4
Александр 19
 
Аватар для Александр 19
 
Регистрация: 17.12.2012
Сообщений: 5
По умолчанию

Спасибро большое, первая задача отлично работает а вторая выдаёт ошибку на команде Var a:array of int64;
Александр 19 вне форума Ответить с цитированием
Старый 17.12.2012, 17:42   #5
Aranea tela telam
Пользователь
 
Аватар для Aranea tela telam
 
Регистрация: 11.01.2012
Сообщений: 51
По умолчанию

Цитата:
Сообщение от Александр 19 Посмотреть сообщение
Спасибро большое, первая задача отлично работает а вторая выдаёт ошибку на команде Var a:array of int64;
замени int64 на integer;
Я учусь на своих ошибках, но порой их слишком много
Aranea tela telam вне форума Ответить с цитированием
Старый 19.12.2012, 10:50   #6
shablakov
Пользователь
 
Регистрация: 18.12.2012
Сообщений: 14
По умолчанию

всёровно не работает
shablakov вне форума Ответить с цитированием
Старый 19.12.2012, 11:28   #7
Sciv
Старожил
 
Аватар для Sciv
 
Регистрация: 16.05.2012
Сообщений: 3,211
По умолчанию

Цитата:
2.В заданном c клавиатуры одномерном массиве Z(n)
При чем тут рандом?

Цитата:
максимальный элемент среди всех отрицательных элементов.
Почему b инициализируется нулем?

А еще - в долбанутом на голову АБЦпаскале компилятор не пропускает записи array of integer.

Код:
Program User;
var 
a:array [1..10] of integer;
i,b,n:integer;
begin
  b:=-10000;
  repeat
    Readln(n);
  until (n>0) and (n<=10);
  for i:=1 to n do begin
    ReadLn(a[i]);
    if b<a[i] then b:=a[i];
  end;
Writeln('Наибольший элемент = ',b);
end.
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
Sciv вне форума Ответить с цитированием
Старый 19.12.2012, 11:32   #8
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

так то
Код:
 if (b<a[i]) and (a[i]<0)then b:=a[i];
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 26.12.2012, 14:16   #9
Darica
Новичок
Джуниор
 
Регистрация: 26.12.2012
Сообщений: 1
По умолчанию

и всё равно спс большое у меня дкр эти две задачи есть))))
Darica вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Pascal ABC. массивы lyulka Помощь студентам 1 20.12.2012 13:54
МАССИВЫ PASCAL ABC Sofiaa Помощь студентам 0 25.05.2011 02:14
Pascal abc. массивы philadelpia Помощь студентам 1 11.05.2011 09:29
PASCAL ABC. массивы XIMAGAN Помощь студентам 8 09.06.2010 07:21
Pascal ABC, массивы Russia Помощь студентам 8 23.05.2009 12:23