|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
08.05.2010, 14:55 | #1 |
Регистрация: 08.05.2010
Сообщений: 8
|
как вывести на экран локальные минимумы в среде delphi ?
Здравствуйте. Мне по программированию дали задачи. Вычислить среднее арифметическое элементов массива, после этого найти и вывести на экран все локальные минимумы данного массива. С первой задачей я справилась, а как вторую делать не доходит. Может кто знает или объяснит хотя бы ? Просто предмет появился впервые, у меня физико-математическое образование, так что delphi даётся тяжеловато ) заранее спасибо.
что такое локальный минимум я знаю ( в моём одномерном массиве - это элемент меньший двух своих соседей по бокам). за ссылки на полезную теорию или минимальные объяснения также буду благодарна =) |
08.05.2010, 15:13 | #2 | |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,715
|
Цитата:
|
|
08.05.2010, 15:15 | #3 |
Регистрация: 08.05.2010
Сообщений: 8
|
ок. спасибо ) когда будет готов полный вариант, выложу сюда. вместе посмотрим )
|
08.05.2010, 16:54 | #4 |
Регистрация: 08.05.2010
Сообщений: 8
|
так, ну вот я и вернулась ) прога работает , но с ошибкой. она мне почему-то выводить лишь один один лок.минимум, когда я явно задала элементы массива так, чтобы их было 2. ну и номер элемента выводит равным самому элементу.
например : 42 25 34 11 12 лок. минимум : 11 номер элемента : 11 это мне комп выводит. прога работает как-то не до конца. вот мой код ( копирну всю прогу) : unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, Grids, StdCtrls; type TForm1 = class(TForm) Label1: TLabel; StringGrid1: TStringGrid; Button1: TButton; Label2: TLabel; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); const SIZE=5; var a : array[1..SIZE] of integer; // массив целых чисел i: integer; // индекс lokM: integer;// локальный минимум begin // ввод массива // считаем, что если ячейка пустая, то соответствующий // ей элемент массива равен нулю for i:= 2 to SIZE do if Length(StringGrid1.Cells[i-1, 0]) <>0 then a[i] := StrToInt(StringGrid1.Cells[i-1,0]) else a[i] := 0; // обработка массива for i :=1 to SIZE do if (a[i] < a[i-1]) and (a[i] < a[i + 1]) then lokM:=a[i]; // вывод результата Label2.Caption := 'Локальный минимум: ' + IntToStr(lokM) + #13+'номер элемента:' + FloatToStr(lokM); end; end. |
08.05.2010, 17:29 | #5 |
Старожил
Регистрация: 15.02.2010
Сообщений: 15,715
|
Код:
Код:
Заюзайте Мемо иличто-то подобное. |
08.05.2010, 17:36 | #6 |
Регистрация: 08.05.2010
Сообщений: 8
|
|
08.05.2010, 17:36 | #7 |
Старожил
Регистрация: 06.08.2007
Сообщений: 2,183
|
Код:
|
08.05.2010, 17:40 | #8 |
Регистрация: 08.05.2010
Сообщений: 8
|
Alter, программа в итоге всё равно выводит лишь последний локальный минимум.
|
08.05.2010, 18:46 | #10 |
Пользователь
Регистрация: 22.01.2010
Сообщений: 37
|
Локальный минимум
Поместите на форму ListBox и Button.
# procedure TForm1.Button1Click(Sender: TObject); var i: integer; c: string; begin ListBox1.Clear; for i:=2 to kol_vo-1 do begin if ((m[i]<m[i-1]) and (m[i]<m[i+1])) then begin c:=FloatToStr(m[i]); ListBox1.Items.Add(c); end; end; end; # m, kol_vo массив и кол-во элементов в массиве соответственно |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как вывести на экран \n в С++ | nicklan | Общие вопросы C/C++ | 4 | 30.03.2010 17:02 |
как вывести текст на экран (TASM) | Аlex | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 2 | 05.03.2010 19:53 |
Delphi. вывести на экран таблицу | world12_tk | Помощь студентам | 2 | 18.10.2009 17:26 |
Как вывести на экран... (Делфи)!!! | DjVidan | Помощь студентам | 14 | 09.03.2009 16:31 |
Локальные минимумы и их номера. | f4rr3l | Паскаль, Turbo Pascal, PascalABC.NET | 5 | 06.01.2009 21:51 |