Форум программистов, компьютерный форум, киберфорум
Pascal (Паскаль)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
1 / 1 / 1
Регистрация: 17.11.2010
Сообщений: 32

Удаление из массива и подсчет среднего арифметического

25.11.2010, 21:18. Показов 1654. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Даны 3 задания.
1)Вычислить массив R[1:n] по формуле r[i]=0.9sin(2ax-ih)
2) Из этого же массива ( после вычисления его по формуле ) удалить все положительные элементы, расположенные ДО максимального.
3) В полученном массиве R[1:k] ( к - число элементов, оставшихся после удаления ) подсчитать среднее арифметическое элементов, расположенных между максимальным и минимальным элементами.

Надо переписать 2 и 3 задание, т.е. получить два новых массива и вывести их на экран. Первый,который получится после удаления положительных ДО максимального. И второй - полученный массив, в нем посчитать среднее арифметическое элементов, расположенных между Макс и Мин элементами ( если среднее арифм = 0, то вывести сообщение "нет среднего" ).

Вот код программы:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
Program Tri_zadanija;
var
 r:array[1..20] of real;
 nmax,nmin,i,n,q,m:integer;
 a,x,h,max,min,summ:real;        
 begin
    {Задание 1}
    writeln('Введите длину массива,n>0');    {Ввод данных}
    readln(n);
    writeln('Введитеa,x,h');
    readln(a,x,h);
    for i:=1 to n do              {Вычисляем массив}
       r[i]:=0.9*sin(2*a*x-i*h);
    writeln('Массив r[i]:');
    for i:=1 to n do             { Вывод массива }
       write(r[i]:10:4);
    readln;
 
    {Задание 2}
    nmax:=1;             {Находим максимальный элемент массива и его номер}
    max:=R[1];
    for i:=2 to n do
    if  R[i]>max then
 begin
      max:=r[i];
      nmax:=i;
 end;
    writeln;
    writeln('Максимальный элемент массива= ',max,' Его номер= ',nmax);
    writeln;
 
    {задание 3}
    nmin:=1;                {Находим минимальный элемент массива и его номер }
    min:=r[1];
    for i:=2 to n do
    if r[i]<min then
begin
     min:=r[i];
     nmin:=i;
end;
     writeln('Минимальный элемент массива=', min,' Его номер=: ',nmin);
     writeln;
             n:=nmin;    {Подсчет суммы элементов между максимальным и минимальным хначением }
             summ:=r[nmin];
             While n<>nmax do
     Begin
             n:=n+1;
             summ:=summ+r[i];
     end;
             summ:=summ / (Abs(nmax-nmin)+1);    {Превращаем сумму элементов в среднее арифметическое }
             Writeln ('Ответ= ', summ);
End.
Помогите пожалуйста, а то 6 часов не могу додумать, как сделать 2 и 3 задание.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
25.11.2010, 21:18
Ответы с готовыми решениями:

Удаление, поиск среднего арифметического элем. массива.
Здравствуйте! В одной программе надо написать 3 задания. Помогите написать код программы! Особенно 3 часть не понимаю как написать. Вот...

Заменить все элементы массива, меньшие среднего арифметического, значением среднего арифметического
В одномерном массиве целых чисел заменить все элементы, меньшие среднего арифметического,значением среднего арифметического,округленного до...

Подсчёт среднего арифметического матрицы, и отклонения от среднего у элементов первой строки
Дана целочисленная матрица. Составить программу подсчёта среднего арифметического значения матрицы. Найти отклонение от среднего у...

2
Почетный модератор
 Аватар для Puporev
64316 / 47612 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
25.11.2010, 22:07
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
uses crt;
const nmax=100;
var r:array[1..nmax] of real;
    n,k,i,j,imx,imn,i1,i2:byte;
    a,x,h,mx,mn,sr:real;
begin
clrscr;
repeat
write('Размер массива до ',nmax,' n=');
readln(n);
until n in [1..nmax];
writeln('Введите a,x,h');
readln(a,x,h);
writeln('Массив:');
for i:=1 to n do
 begin
  r[i]:=0.9*sin(2*a*x-i*h);
  write(r[i]:6:2);
 end;
writeln;
writeln;
imx:=1;mx:=r[1];
for i:=1 to n do
if r[i]>r[imx] then
 begin
  imx:=i;
  mx:=r[i];
 end;
writeln('Максимальный элемент равен ',mx:0:2,' его индекс=',imx);
writeln;
if imx=1 then writeln('Максимальный элемент первый, удалений нет')
else
 begin
  k:=n;
  i:=1;
  while r[i]<mx do
  if r[i]>0 then
   begin
    for j:=i to k-1 do
    r[j]:=r[j+1];
    k:=k-1;
    imx:=imx-1;
   end
  else i:=i+1;
  writeln('Удаление положительных до максимального:');
  for i:=1 to k do
  write(r[i]:6:2);
 end;
writeln;
writeln;
imn:=1;mn:=r[1];
for i:=1 to k do
if r[i]<r[imn] then
 begin
  imn:=i;
  mn:=r[i];
 end;
writeln('Минимальный элемент равен ',mn:0:2,' его индекс=',imn);
writeln;
if abs(imn-imx)=1 then writeln('Нет среднего')
else
 begin
  if imn<imx then
   begin
    i1:=imn;
    i2:=imx;
   end
  else
   begin
    i1:=imx;
    i2:=imn;
   end;
  sr:=0;
  for i:=i1+1 to i2-1 do
  sr:=sr+r[i];
  sr:=sr/(imn-imx+1);
  write('Среднее между максимальным и минимальным=',sr:0:2);
 end;
readln
end.
0
1 / 1 / 1
Регистрация: 17.11.2010
Сообщений: 32
25.11.2010, 22:20  [ТС]
Как я вам благодарен!!!! Спасибо большое!
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
25.11.2010, 22:20
Помогаю со студенческими работами здесь

Подсчет среднего арифметического массива
Компилирую программу: tasm.exe prog1.asm - все нормально. tlink.exe prog1.obj - Выдает ошибку &quot;Fatal: No program entry point&quot; ...

Подсчёт среднего арифметического из массива
#include &lt;iostream&gt; #include &lt;cstdlib&gt; #include &lt;windows.h&gt; using namespace std; /*____Описание класса МАССИВ с конструктором...

Подсчет среднего арифметического элементов массива
Необходимо написать программу для решения задачи: Дан целочисленный массив из N элементов ( N ≤ 1000 ). Элементы массива могут...

Подсчет среднего арифметического отрицательных элементов массива
дан одномерный динамический массив вещественных чисел. посчитать среднее арифметическое отрицательных элементов. Функции: ввода массива,...

Подсчет среднего арифметического элементов массива (ошибка в Code::Blocks)
Нужно составить программу считающую среднее арифметическое массива. Ошибка Process returned -1073741571 (0xC00000FD) #include...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
модель ЗдравоСохранения 8. Подготовка к разному выполнению заданий
anaschu 08.04.2026
https:/ / github. com/ shumilovas/ med2. git main ветка * содержимое блока дэлэй из старой модели теперь внутри зайца новой модели 8ATzM_2aurI
Блокировка документа от изменений, если он открыт у другого пользователя
Maks 08.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа, разработанного в конфигурации КА2. Задача: запретить редактирование документа, если он открыт у другого пользователя. / / . . .
Система безопасности+живучести для сервера-слоя интернета (сети). Двойная привязка.
Hrethgir 08.04.2026
Далее были размышления о системе безопасности. Сообщения с наклонным текстом - мои. А как нам будет можно проверить, что ссылка наша, а не подделана хулиганами, которая выбросит на другую ветку и. . .
Модель ЗдрввоСохранения 7: больше работников, больше ресурсов.
anaschu 08.04.2026
работников и заданий может быть сколько угодно, но настроено всё так, что используется пока что только 20% kYBz3eJf3jQ
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru