0 / 0 / 0
Регистрация: 08.05.2018
Сообщений: 20
1

Для каждой строки массива найти среднее арифметическое четных элементов

08.05.2018, 18:04. Показов 1501. Ответов 9
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
• для каждой стоки массива найти среднее арифметическое четных элементов;
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
var x,s:integer;
r:real;
begin
for i:=1 to m-1 do begin
x:=0; s:=0; r:=0;
If ((a[i,j] mod 2) = 0) then begin
s:=s+a[i,j];
x:=x+1;
end;
r:=s/x;
r:=roundto(r,-1);
ListBox1.Items[j]:=floattostr(r);
end;
Выводит ошибку: Unable to insert a line.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
08.05.2018, 18:04
Ответы с готовыми решениями:

Для каждой строки двумерного массива найти среднее арифметическое четных элементов
для каждой строки двумерного массива найти среднее арифметическое четных элементов

Найти для каждой строки матрицы среднее арифметическое положительных элементов
Дана матрица A из N строк и N столбцов. Если в матрице А нет элементов, абсолютная величина которых...

Для каждой строки матрицы с нечетным номером найти среднее арифметическое ее элементов
Дана матрица размера MxN. Для каждой строки матрицы с нечетным номером найти среднее арифметическое...

Найти среднее арифметическое положительных элементов для каждой строки для данной квадратной матрицы
Можно без ввода/вывода. Условие: найти среднее арифметическое положительных элементов для каждой...

9
5249 / 4197 / 1038
Регистрация: 29.08.2013
Сообщений: 26,561
Записей в блоге: 3
08.05.2018, 18:10 2
что такое j?
ListBox1.Items[j] - существует строка с таким номером?
0
0 / 0 / 0
Регистрация: 08.05.2018
Сообщений: 20
08.05.2018, 18:19  [ТС] 3
Цитата Сообщение от qwertehok Посмотреть сообщение
что такое j?
ListBox1.Items[j] - существует строка с таким номером?
переменные массива - A[i,j]
0
5249 / 4197 / 1038
Регистрация: 29.08.2013
Сообщений: 26,561
Записей в блоге: 3
08.05.2018, 18:22 4
они не объявлены и j нигде не задается
0
0 / 0 / 0
Регистрация: 08.05.2018
Сообщений: 20
08.05.2018, 18:27  [ТС] 5
Цитата Сообщение от qwertehok Посмотреть сообщение
они не объявлены и j нигде не задается
Delphi
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
unit Unit1;
 
interface
 
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls, Buttons, Grids, Math;
 
type
  TForm1 = class(TForm)
    StringGrid1: TStringGrid;
    BitBtn1: TBitBtn;
    Edit1: TEdit;
    Label1: TLabel;
    Button1: TButton;
    ListBox1: TListBox;
    Button2: TButton;
    Button3: TButton;
    BitBtn2: TBitBtn;
    BitBtn3: TBitBtn;
    BitBtn4: TBitBtn;
    procedure FormActivate(Sender: TObject);
    procedure BitBtn1Click(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure BitBtn2Click(Sender: TObject);
    procedure BitBtn4Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;
 
var
  Form1: TForm1;
 
implementation
 
{$R *.dfm}
Var A: array of array of integer;
    i,j,n,m:integer;
 
procedure TForm1.FormActivate(Sender: TObject);
begin
stringGrid1.Cells[0,0]:='Ìàññèâ';
for i:=1 to stringgrid1.ColCount do stringgrid1.Cells[i,0]:=inttostr(i);
for i:=1 to stringgrid1.rowcount do stringgrid1.Cells[0,i]:=inttostr(i);
edit1.SetFocus;
edit1.Enabled:=true;
bitbtn1.Enabled:=true;
bitbtn2.Enabled:=false;
bitbtn4.Enabled:=false;
button1.Enabled:=false;
button2.Enabled:=false;
button3.Enabled:=false;
end;
 
procedure TForm1.BitBtn1Click(Sender: TObject);
begin
if bitbtn1.tag=0 then begin
try
n:=strtoint(edit1.Text )
except
showmessage('Ââåäèòå öåëîå ÷èñëî!');
edit1.Clear;
edit1.setfocus;
exit
end;
if n<=0 then begin
showmessage('Ââåäèòå öåëîå ÷èñëî!');
edit1.Clear;
edit1.setfocus;
exit
end;
bitbtn1.tag:=1;
edit1.Clear;
Label1.Caption:='Êîë-âî ñòîëáöîâ';
edit1.setfocus
end
else begin
try
m:=strtoint(edit1.Text)
except
showmessage('Ââåäèòå öåëîå ÷èñëî!');
edit1.Clear;
edit1.setfocus;
exit
end;
if m<=0 then begin
showmessage('Ââåäèòå öåëîå ÷èñëî!');
edit1.Clear;
edit1.setfocus;
exit
end;
bitbtn1.Enabled:=false;
edit1.Enabled:=false;
button1.Enabled:=true;
button2.Enabled:=true;
button3.Enabled:=true;
SetLength(A,n,m);
StringGrid1.ColCount:=m+1;
StringGrid1.RowCount:=n+1;
for i := 1 to stringgrid1.ColCount do stringgrid1.Cells[i,0]:=inttostr(i);
for i := 1 to stringgrid1.rowcount do stringgrid1.Cells[0,i]:=inttostr(i);
StringGrid1.Enabled:=True;
Randomize;
for i:=0 to n-1 do
for j:=0 to m-1 do
begin
A[i,j]:=random(500);
if random(2)=1 then A[i,j]:=-A[i,j];
StringGrid1.Cells[j+1,i+1]:=inttostr(A[i,j]);
end;
end;
end;
 
 
procedure TForm1.Button1Click(Sender: TObject);
var min:integer;
count:integer;
begin
listbox1.Clear;
for j:=0 to n-1 do begin
min:=A[0,j];
for i:=1 to m-1 do
if A[i,j]<min then
min:=A[i,j];
ListBox1.Items[j]:=inttostr(min);
end;
button1.Enabled:=false;
button2.Enabled:=false;
button3.Enabled:=false;
bitbtn2.Enabled:=true;
bitbtn4.Enabled:=true;
end;
 
procedure TForm1.Button2Click(Sender: TObject);
var x,s:integer;
r:real;
begin
for i:=1 to m-1 do begin
x:=0; s:=0; r:=0;
If ((a[i,j] mod 2) = 0) then begin
s:=s+a[i,j];
x:=x+1;
end;
r:=s/x;
r:=roundto(r,-1);
ListBox1.Items[j]:=floattostr(r);
end;
listbox1.Clear;
button1.Enabled:=false;
button2.Enabled:=false;
button3.Enabled:=false;
bitbtn2.Enabled:=true;
bitbtn4.Enabled:=true;
end;
0
5249 / 4197 / 1038
Регистрация: 29.08.2013
Сообщений: 26,561
Записей в блоге: 3
08.05.2018, 18:31 6
я не вижу где ты данные пишешь в ListBox с помощью ListBox1.Items.Add()

ЗЫ и не забывай про теги, читать твою простыню невозможно
0
0 / 0 / 0
Регистрация: 08.05.2018
Сообщений: 20
08.05.2018, 18:39  [ТС] 7
Цитата Сообщение от qwertehok Посмотреть сообщение
я не вижу где ты данные пишешь в ListBox с помощью ListBox1.Items.Add()
не понимаю вас
0
5249 / 4197 / 1038
Регистрация: 29.08.2013
Сообщений: 26,561
Записей в блоге: 3
08.05.2018, 18:41 8
Цитата Сообщение от mashunela Посмотреть сообщение
ListBox1.Items[j]
ты пытаешься записать данные в Listbox, а этой строки НЕТ
ее сначала нужно добавить

в пустой ListBox нельзя записать 5 строку, сначала нужно 5 раз сделать Add
0
0 / 0 / 0
Регистрация: 08.05.2018
Сообщений: 20
08.05.2018, 19:05  [ТС] 9
Цитата Сообщение от qwertehok Посмотреть сообщение
ты пытаешься записать данные в Listbox, а этой строки НЕТ
ее сначала нужно добавить

в пустой ListBox нельзя записать 5 строку, сначала нужно 5 раз сделать Add
поменяла на memo ошибку не выдает, но теперь считает и выводит какую то чушь
0
Почетный модератор
64291 / 47589 / 32740
Регистрация: 18.05.2008
Сообщений: 115,181
08.05.2018, 19:19 10
Лучший ответ Сообщение было отмечено mashunela как решение

Решение

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
for i:=0 to m-1 do
 begin
  x:=0;
  s:=0;
  for j:=0 to n-1 do
  if a[i,j] mod 2=0 then
   begin
    s:=s+a[i,j];
    x:=x+1;
   end;
  if x=0 then Memo1.Lines.Add('в строке '+inttostr(i)+' четных элементов нет')// или Lisbox
  else Memo1.Lines.Add('в строке '+inttostr(i)+' среднее четных элеметов='+formatfloat('0.00',s/x);
end;
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.05.2018, 19:19
Помогаю со студенческими работами здесь

Двумерный массив. Как найти среднее арифметическое элементов для каждой строки, у которых последняя нечетная цифра
Двумерный массив. Как найти среднее арифметическое элементов для каждой строки, у которых последняя...

Найти среднее арифметическое элементов для каждой строки двухмерного массива.
1) Найти среднее арифметическое элементов для каждой строки двухмерного массива. 2) Упорядочить...

Найти среднее арифметическое элементов для каждой строки заданного двухмерного массива
Найти среднее арифметическое элементов для каждой строки заданного двухмерного массива. Значения...

Для каждой строки массива найдите среднее арифметическое положительных чётных чисел
в целочисленном массиве A(n,m) для каждой строки найдите среднее арифметическое положительных...


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

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru