Головна сторінка
Top.Mail.Ru Яндекс.Метрика
Форум: "Початківцям";
Поточний архів: 2018.12.23;
Завантажити: [xml.tar.bz2];

Вниз

memo. запис в рядок Знайти схожі гілки


Arthur   (2016-09-28 00:38) [0]

ось частина коду ... є матриця і мемо ... потрібно вивести кількість непарних чисел в кожному столбе..как зробити щоб в мемо числа виводилися в один рядок (тобто. під кожним стовпом)



Arthur   (2016-09-28 00:38) [1]

procedure TForm1.Button2Click (Sender: TObject);
var x: array of array of integer;
i, j, Cod, counter: integer;
починати
SetLength (x, n, m);
counter: = 0;
for j: = 0 to m-1 do
begin
for i: = 0 to n-1 do
begin
Val (StringGrid1.Cells [j, i], x [i, j], Cod);
if Cod <> 0 then begin
ShowMessage ( "помилка синтаксису в матриці");
SetLength (x, 0,0); Exit;
end;
if x [i, j] mod 2 = 1 then
counter: = counter + 1;
end;
SendMessageA (Memo1.Handle, EM_SETHANDLE, LongInt (counter), 0);
Memo1.Lines.Add (IntToStr (counter));
counter: = 0;
end;
end;



kilkennycat ©   (2016-09-28 02:51) [2]


> Як зробити щоб в мемо числа виводилися в один рядок (т.
> Е. Під кожним стовпом)


для цього головне: використовувати моноширинний шрифт - де ширина у всіх символів, в тому числі прогалин, однакова.


> SendMessageA (Memo1.Handle, EM_SETHANDLE, LongInt (counter), 0);

це навіщо, та ще в циклі?

> Val

застаріла.



kilkennycat ©   (2016-09-28 02:55) [3]


> For j: = 0 to m-1 do
> begin
> For i: = 0 to n-1 do
> begin
> Val (StringGrid1.Cells [j, i]

небезпечне звернення до масиву осередків, немає перевірки і \ або обробки виходу за межі



Игорь Шевченко ©   (2016-09-28 10:25) [4]


>> Val
>
> Застаріла.


Ніфіга. У цій функції є корисна властивість - повертати індекс першого нечислового символу.



kilkennycat ©   (2016-09-28 15:24) [5]


> Ігор Шевченко © (28.09.16 10: 25) [4]

да, забув про це. але і шкідливий властивість теж є - сепаратори не підтримуються.



Arthur   (2016-09-28 18:47) [6]

> Це навіщо, та ще в циклі?

щоб вивести кількість непарн чисел під кожним стовпом, щас спробую



Arthur   (2016-09-28 18:51) [7]

> Kilkennycat © (28.09.16 02: 51) [2]

а куди вставити цей рядок?



kilkennycat ©   (2016-09-29 00:53) [8]


> Arthur (28.09.16 18: 47) [6]
> Щоб вивести кількість непарн чисел під кожним стовпом,
> Щас спробую

Так?
тоді що робить ця:
Memo1.Lines.Add (IntToStr (counter)); ?



kilkennycat ©   (2016-09-29 00:56) [9]

а взагалі, я правильно розумію, що це все виглядає як стрінггрід з розташованим під ним мемо ??



kilkennycat ©   (2016-09-29 01:01) [10]


> Kilkennycat © (29.09.16 00: 56) [9]

в цьому випадку чому б просто не малювати це все в останньому рядку стрінггріда?
якщо проблема пов'язана з вертикальним скролінгом, то малювати самому в TStringGrid.OnDrawCell, виводячи в останній рядок замість "даних" стрінггріда то саме кількість чисел. Іншим кольором. або на іншому тлі.



Arthur   (2016-09-29 02:17) [11]

> А взагалі, я правильно розумію, що це все виглядає як стрінггрід з розташованим під ним мемо ??

та правильно.

> В цьому випадку чому б просто не малювати це все в останньому рядку стрінггріда?

це занадто для мене)



kilkennycat ©   (2016-09-29 15:53) [12]

ну тоді якось так:
procedure TForm1.Button2Click (Sender: TObject); var col, row, err, chislo, counter: integer; s: string; begin counter: = 0; s = ""; // тут пробілами задається перший відступ for row: = 0 to StringGrid1.RowCount-1 do begin for col: = 0 to StringGrid1.ColCount-1 do begin Val (StringGrid1.Cells [col, row], chislo, err); if err <> 0 then begin ShowMessage ( "помилка синтаксису в матриці"); Exit; end; if chislo mod 2 = 1 then inc (counter); end; s: = s + IntToStr (counter) + ""; // тут пробілами задається відстань між числами counter: = 0; end; Memo1.Text = s; end;



kilkennycat ©   (2016-09-29 15:54) [13]


> S = ""; // тут пробілами задається перший відступ

двокрапка пропустив. s: = "";



сторінки: 1 вся гілка

Форум: "Початківцям";
Поточний архів: 2018.12.23;
Завантажити: [xml.tar.bz2];

Вгору





Пам'ять: 0.59 MB
Час: 0.015 c
2-1474380433
океан
2016-09-20 17:07
2018.12.23
IDHTTP post не отримує весь текст сторінки


2-1476258939
Алекс Сєров
2016-10-12 10:55
2018.12.23
Delphi 2010, вкладка InterBase


15-1475245332
Йоп
2016-09-30 17:22
2018.12.23
задачка


15-1475791274
Германн
2016-10-07 01:01
2018.12.23
Світла пам'ять Анатолію Підгорецькому!


6-1286616123
посилання
2010-10-09 13:22
2018.12.23
WebBrowser Парсер





африкаанс албанський арабська вірменин азербайджанець баскський білоруський болгарська каталонський Китайська (спрощене письмо) Китайський традиційний) хорватський чеська данську мову нідерландський Ukranian естонець Філіппінська фінську мову французький
галісійська грузинський німецький грецький гаїтянський креольський давньоєврейську хінді угорський ісландський індонезієць ірландський італійський японський корейський латиська литовець македонець малайський мальтійський норвежець
перс полірування португальська румунський російська сербський словацький словенський іспанська суахілі шведську мову тайський турецька український урду в'єтнамський валлійський ідиш бенгальський боснійський
кебуано есперанто гуджараті хауса хмонг ігбо яванський каннада кхмерская Лао латинь маорі маратхі монгольський непальська панджабі сомалійський тамільська телугу йоруба
зулуський
Англійська Французький Німецький Італійський Португальська Русский Іспанська