Вопрос № 112554: Задачи
1. сформулировать квадратную матрицу порядка n по заданному образцу:
1 0 0 + 0 0 n
0 2 0 + 0 n-1 0
0 0 3 + n-2 0 0
. . .
. . .
. . .
0 2 0 + 0 n-1 0
1 0 0 + 0 0 n
2. Дана вещественная матрица разме...Вопрос № 112591: Пожалуйста помогите. Я сам не могу сделать....Вопрос № 112652: Здравствуйте, не хотелось бы вам надоедать, но никак не могу понять как решить следующию задачу: Написать рекурсивную и нерекурсивную процедуру обращения строки. Заранее спасибо ОГРОМНОЕ....
Вопрос № 112.554
Задачи
1. сформулировать квадратную матрицу порядка n по заданному образцу:
1 0 0 + 0 0 n
0 2 0 + 0 n-1 0
0 0 3 + n-2 0 0
. . .
. . .
. . .
0 2 0 + 0 n-1 0
1 0 0 + 0 0 n
2. Дана вещественная матрица размером M*N. Переставляя ее строки и столбцы, добиться того, чтобы наибольший элемент (один из них) оказался в верхнем левом углу.
3. Пусть дана действительная матрица размером M*N. Требуется преобразовать матрицу: поэлементно вычесть последнюю строку из всех
строк, кроме последней.
Люди!!! Помогите решить, очень нужно помочь одному очень хорошему человеку
Отвечает: Зенченко Константин Николаевич
Здравствуйте, Зыков Николай Павлович!
В приложении все 3-и задачи, выполняются последовательно.
Удачи!
Приложение:
--------- И только наступив на грабли мы приобретаем драгоценный опыт!
Ответ отправил: Зенченко Константин Николаевич (статус: Профессионал) Украина, Киев Тел.: +380958380164 Адрес: Украина г.Киев ---- Ответ отправлен: 10.12.2007, 17:05
Вопрос № 112.591
Пожалуйста помогите. Я сам не могу сделать.
Приложение:
Отправлен: 06.12.2007, 12:18
Вопрос задал: Domin9es (статус: Посетитель)
Всего ответов: 2 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Tribak
Здравствуйте, Domin9es!
program www;
uses crt;
const
n=10;
var
i,j,min,max:integer;
a:array [1..n,1..n] of integer;
begin
clrscr;
randomize;
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=random(100);
if a[i,j]<10 then write(' ',a[i,j],' ');
if (a[i,j]>9) then write (a[i,j],' ');
end;
writeln;
end;
max:=0;
for i:=1 to n do
if a[i,i]>max then max:=a[i,i];
min:=100;
writeln('max=',max);
for i:=1 to n do
if a[i,11-i]<min then min:=a[i,11-i];
writeln('min=',min);
if max>min then writeln('PRAVDA');
readln;
end.
Ответ отправил: Tribak (статус: 5-ый класс)
Ответ отправлен: 06.12.2007, 13:41
Отвечает: Артём1983
Здравствуйте, Domin9es!
Размерность массива задаётся константой r.
Признак того что элемент принадлежит главной диагогнали есть (i=j).
Признак того что элемент принадлежит побочной диагогнали есть (j=R-i+1).
Вот, по моему самое сложное в этом примере.
Приложение:
--------- Программирование - дело Путное!
Ответ отправил: Артём1983 (статус: 7-ой класс)
Ответ отправлен: 06.12.2007, 19:41
Вопрос № 112.652
Здравствуйте, не хотелось бы вам надоедать, но никак не могу понять как решить следующию задачу: Написать рекурсивную и нерекурсивную процедуру обращения строки. Заранее спасибо ОГРОМНОЕ.
Отправлен: 06.12.2007, 17:18
Вопрос задала: irishka (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: Delph
Здравствуйте, irishka!
Смысл рекурсии в общем случае сводится к тому, что подпрограмма вызывает сама себя, на каждом следующем шаге решая более простую задачу, чем на предыдущем. В данном случае процедура передаёт своей новой копии входящую строку без последнего символа, который прибавляется (с конца) к строке-результату. В приложении программа, демонстрирующая решение Вашей задачи рекурсивным (Rekurs) и нерекурсивным (NonRekurs) способами.
В этом конкретном случае обычный (нерекурсивный) метод оказался проще, но часто встречаются задачи, в которых рекурсия ЗНАЧИТЕЛЬНО упрощает решение. Пример такой задачи - подсчёт количества файлов в указанной папке и всех вложенных в неё подпапках (функция подсчёта может вызывать сама себя для каждой вложенной папки).
Желаю успехов
Приложение:
--------- Сомневайся во всём! Реальность часто бывает не такой, как мы о ней думаем.
Ответ отправил: Delph (статус: Студент)
Ответ отправлен: 07.12.2007, 09:46