Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Центр помощи > [Delphi] Как вывести числа диагонали SG?


Автор: Марина007 12.1.2012, 22:50
Помогите, пожалуйста, выполнить задание в Delphi: 
1.Создать приложение: расположить на форму таблицу 10х10. При щелчке на кнопку "Заполнить таблицу" ячейки таблицы заполняются числами от 1 до 200 с шагом 2(1,3,5,7,9 и т.д).
2.Вывести числа вспомогательной диагонали.(числа вывести в Edit)
Таблицу я заполнила! Но не пойму как сделать 2 задание! smile ?

Автор: Pawl 28.1.2012, 10:58
Для элементов вспомогательной диагонали выполняется условие I+J=N+1, где I – номер строки, J – номер столбца, N – размерность матрицы.
организуйте проход по матрице типа
Код

for i := 1 to 10 do
    for j := 1 to 10 do
        if i + j = 11 then Writeln(a[i, j]);

Автор: Mirkes 28.1.2012, 17:08
Цитата(Pawl @  28.1.2012,  10:58 Найти цитируемый пост)
Для элементов вспомогательной диагонали выполняется условие I+J=N+1, где I – номер строки, J – номер столбца, N – размерность матрицы.организуйте проход по матрице типаКодincludeSyntax('delphi');for i := 1 to 10 do    for j := 1 to 10 do        if i + j = 11 then Writeln(a[i, j]);highlightSyntax('delphi_iOWY2N','delphi'); 

Круто, но зачем так странно?
по моему проще сделать так
Код

 For I:=1 To 10 Do
   Edit1.Text:=Edit1.Text+SG.Cells[I,11-I];

Конечно результат тот же, но скорость работы в разы меньше. На этом примере очевидно не заметно, но лучше сразу приучаться не гонять лишние циклы.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)