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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.12.2015, 11:24   #1
languor_una
Новичок
Джуниор
 
Регистрация: 20.12.2015
Сообщений: 1
По умолчанию Пожалуйста, помогите с массивами

Не первый день бьюсь над заданием курсовой работы, нашла ошибки и ума не приложу, как их исправить.
1.Вычислить значения 34 элементов одномерного целочисленного массива в интервале(-10.10) с использованием генератора случайных чисел.
2. Вычеслить среднегармоническое значение нечетных по значению элементов второй четверти массива.
3. Определить наименьший по модулю элемент среди ненулевых элементов всего массива.
4. Упорядочить отрицательные элементы первой четверти массива по убыванию модулей обратных значений.
Пожалуйста, помогите с массивами

3 пункт будет правильным, если повезет выпасть 1 в первой четверти массива, а четвёртый просто вместо того что бы упорядочить выдает элементы массива, буду благодарна если найдете еще ошибки.

Код:
var a:array[1..100] of integer;
    n,m,i,j,k,t,min,x:integer;
    b,sg,s:real;
begin
n:=34;{заполняем массив}
writeln('Исходный массив:');
for i:=1 to n do
 begin
  a[i]:=random(20)-10;
  write(a[i]:4);
 end;
 writeln;
 for i:=1 to n do  {ищем среднегармоническое  значение }
t:=n div 4; 
for i:=2*t+1 to 3*t do 
if a[ i ] mod 2 <> 0 then 
for j := 1 to n do 
s := s + (1 / a[i]);
sg:=s+a[ i ]; 
s := n / s;
writeln('Sg = ',sg); 
 writeln;
  for i:=1 to n do {наименьший по модулю элемент среди ненулевых элементов всего массива.  }
 if a[i]<>0 then
 min:=n;
 if abs(a[i])< min then
 min:=a[i];
 writeln('min = ',min); 
 writeln;
for i:=t+1 to 3*t do {. Упорядочить отрицательные элементы первой четверти массива по убыванию модулей обратных значений. }
for j:=i+1 to n do
if(a[i]<0)and(a[j]<0)and(abs(1/a[i])<abs(1/a[j]))then
 begin
x:=a[i];
a[i]:=a[j];
a[j]:=x;
write(x:4);
end;
end.
languor_una вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
помогите с массивами пожалуйста Конь Антон Паскаль, Turbo Pascal, PascalABC.NET 17 17.11.2015 10:33
С# помогите пожалуйста с массивами _kisa_ Помощь студентам 1 11.12.2013 00:08
помогите пожалуйста с двумерными массивами (с++) dima95 Помощь студентам 0 10.12.2013 23:12
Помогите пожалуйста решить задачу с массивами. katbka Помощь студентам 2 07.09.2008 11:18
Помогите с массивами пожалуйста neomaximus Помощь студентам 5 08.07.2008 17:48