nickfreeman
30.03.2005 17:44
Pleaze Как решить 1-ю задачу в 7-м уроке (там где про циклы)?
Если условия задачи привести прямо здесь - то процесс помощи ускорится.
nickfreemanЭта задача?
Цитата
1. По теме "циклы": - напишите программу, печатающую столбик строк такого вида:
1 0 0 0 0 0 0 0 0
0 2 0 0 0 0 0 0 0
0 0 3 0 0 0 0 0 0
0 0 0 4 0 0 0 0 0
0 0 0 0 5 0 0 0 0
0 0 0 0 0 6 0 0 0
0 0 0 0 0 0 7 0 0
0 0 0 0 0 0 0 8 0
0 0 0 0 0 0 0 0 9
я сналала подумал,что это уроки с сайта, но нет....
nickfreeman
30.03.2005 18:45
Цитата(volvo @ 30.03.05 14:54)
nickfreeman
Эта задача?
Ага, эта
Код
...
For i:=1 to 9 do
Begin
For j:=1 to 9 do
If j=i then Write(j,' ') else Write('0 ');
Writeln;
End;
...
Ну, тогда так: заметь, что все элементы матрицы = 0, кроме тех, которые находятся на пересечении строки и столбца с одним номером. Поэтому, если одним проходом обнулить всю матрицу, а вторым пройти по элементам a[i, i] (с одинаковым индексом строки и столбца) ,то получишь то что нужно...
Но это решение не очень хорошее. Можно заполнить матрицу за один проход. Тогда нужно двумя вложенными циклами перебрать все строки и столбцы, и в тех из них, где индекс строки = индексу столбца поставить этот индекс, иначе ставить 0.
Я не хочу приводить код для этой задачи, ты должен его написать сам, тогда ты поймешь, как это делается...
nickfreeman
30.03.2005 19:13
A если так.
Код
var k,l:string;
a,b:byte;
begin
for a:=1 to 9 do
begin
l:='0 0 0 0 0 0 0 0 0';
k:='123456789';
l[a+b]:=k[a];
inc(B);
writeln (l);
end;
readln
end.
(Сложнее, зато сам допетрил)
зачем так сложно ???
Код
for i:=1 to n do
x[i,i]:=i;