![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
|
Нуждаюсь в помощи срочно, выручайте =)
2 за дачи, 1 - на одномерный массив, 2 - на двумерный 1) Дана последовательность из 10 различных чисел. Найти сумму чисел этой последовательности, расположенных между макс. и мин. числами (в сумму включить оба этих числа). // ввод элементов массива нужно организовать двумя способами : ручным и автоматическим 2) Дана вещественная матрица размером NxM. Переставляя ее строки и столбцы добиться того, чтобы наибольший элемент (один из них) оказался в верхнем углу. Помогите пожалуйста разобраться с программами, буду очень благодарен =) |
|
#2
|
|||
|
|||
|
Ну и где ваш код? Помогите разобраться - это значит, что что-то не получается, соответсвенно, где код, в котором не получается?
Если помогите разобраться - сделайте за меня, то вам в другой раздел (Работа). |
|
#3
|
|||
|
|||
|
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Grids;
const n=10;
type y = array of Real;
type
TForm1 = class(TForm)
strngrd1: TStringGrid;
btn2: TButton;
btn3: TButton;
btn4: TButton;
edt1: TEdit;
procedure btn2Click(Sender: TObject);
procedure btn4Click(Sender: TObject);
procedure btn3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
x :y;
i : Integer;
s : Real;
implementation
{$R *.dfm}
procedure TForm1.btn2Click(Sender: TObject);
begin
for i := 0 to n-1 do
x[i] := StrToFloat (Strngrd1.Cells[i,0]) ;
end;
procedure TForm1.btn4Click(Sender: TObject);
begin
edt1.Text := '';
end;
procedure TForm1.btn3Click(Sender: TObject);
var nmin, nmax : Integer;
min, max : Real;
begin
s := 0;
min := x[0];
nmin := 0;
max := x[0];
nmax := 0;
for i := 1 to n-1 do
begin if min>x[i] then begin min := x[i]; nmin := i; end;
if max<x[i] then begin max := x[i]; nmax := i; end;
end;
if nmin<nmax then begin
for i := nmin to nmax-1 do
s := s+x[i];
end
else begin
for i := nmax to nmin-1 do
s := s+x[i];
end;
edt1.Text := FloatToStr(s);
end;
end. |