Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 14.11.2009, 19:36   #1
hardrace
Новичок
Джуниор
 
Регистрация: 12.11.2009
Сообщений: 5
По умолчанию возведение в квадрат элементов главной диагонали матрицы. Паскаль

здравствуйте, мне в институте(на первом курсе) дали такое задание: задана квадратная матрица(n*n). получить последовательность из членов главной диагонали, расположенной слева направо, возведённых в квадрат и расположенных по возрастающей, последовательность вывести на печать.
кому не трудно можете код программы дать?...
+ещё по делфи дали но это потом
проблема в том что эти языки в технаре мы не изучали(паскаль не успели-препод ушёл) поэтому щас приходится туго
hardrace вне форума Ответить с цитированием
Старый 14.11.2009, 19:48   #2
VilAm
Пользователь
 
Аватар для VilAm
 
Регистрация: 14.11.2009
Сообщений: 56
По умолчанию

Код:
VAR I,J,K,N,TMP:INTEGER;
 A:ARRAY[1..50] OF INTEGER;
 B:ARRAY[1..50,1..50] OF INTEGER;
SWOP:BOOLEAN;
BEGIN
  n:=5;
FOR I:=1 TO N DO
FOR J:=1 TO N DO
B[I,J]:=RANDOM(50);
FOR I:=1 TO N DO BEGIN
FOR J:=1 TO N DO
WRITE(B[I,J]:4);
WRITELN;END;
FOR I:=1 TO N do
A[i]:=SQR(B[I,I]);
K:=N;
repeat
swop:=false;
for i:=1 to K-1 do
if A[i]>A[i+1] then begin
TMP:=A[I+1];
A[I+1]:=A[i];
A[i]:=TMP;
 swop:=true; end;
K:=K-1;
until not swop;
FOR I:=1 TO N do
WRITE(A[i]:8);
READLN;
END.
Мы чужды себе, мы, познающие, мы сами чужды себе

Последний раз редактировалось VilAm; 14.11.2009 в 22:16.
VilAm вне форума Ответить с цитированием
Старый 14.11.2009, 19:58   #3
sadfeel
Новичок
Джуниор
 
Регистрация: 14.11.2009
Сообщений: 10
По умолчанию

uses crt;
var
n,i,j,p : integer;
a : array[1..100,1..100] of integer;
posled : array[1..100] of integer;

begin
clrscr;
writeln('vvedite colvo elementov');
readln(n);

for i:=1 to n do
for j:=1 to n do
begin
write('a[',i,']','[',j,']');
readln(a[i,j]);
end;

for i:=1 to n do
for j:=1 to n do
if i = j then posled[i] := sqr(a[i,j]);

for j:=1 to n do
for i:=2 to n do
if posled[i] < posled[i-1] then
begin
p := posled[i];
posled[i] := posled[i-1];
posled[i-1] := p;
end;

writeln('novaya posledovatel`nost');
for i:=1 to n do
write(posled[i],' ');
readkey;
end.

Писал в блокноте...........должно работать.............
sadfeel вне форума Ответить с цитированием
Старый 14.11.2009, 20:38   #4
hardrace
Новичок
Джуниор
 
Регистрация: 12.11.2009
Сообщений: 5
По умолчанию

всем огромное спасибо
hardrace вне форума Ответить с цитированием
Старый 14.11.2009, 22:11   #5
hardrace
Новичок
Джуниор
 
Регистрация: 12.11.2009
Сообщений: 5
По умолчанию

VilAm ввожу n и программа ничего не делает, что не так?
sadfeel программа работает но похоже немного не так-я ввёл 9 элементов(1,2,3,4,5,6,7,8,9) поидее должна быть последовательность 1,5,9 но прога выдала 1,2,5,8,1 и почему-то в квадрат не возводит. что делать?
hardrace вне форума Ответить с цитированием
Старый 14.11.2009, 22:16   #6
VilAm
Пользователь
 
Аватар для VilAm
 
Регистрация: 14.11.2009
Сообщений: 56
По умолчанию

вот рабочий код
Код:
VAR I,J,K,N,TMP:INTEGER;
 A:ARRAY[1..50] OF INTEGER;
 B:ARRAY[1..50,1..50] OF INTEGER;
SWOP:BOOLEAN;
BEGIN
  n:=5;{заменить на readln(n);}
FOR I:=1 TO N DO
FOR J:=1 TO N DO
B[I,J]:=RANDOM(50);
FOR I:=1 TO N DO BEGIN
FOR J:=1 TO N DO
WRITE(B[I,J]:4);
WRITELN;END;
FOR I:=1 TO N do
A[i]:=SQR(B[I,I]);
K:=N;
repeat
swop:=false;
for i:=1 to K-1 do
if A[i]>A[i+1] then begin
TMP:=A[I+1];
A[I+1]:=A[i];
A[i]:=TMP;
 swop:=true; end;
K:=K-1;
until not swop;
FOR I:=1 TO N do
WRITE(A[i]:8);
READLN;
END.
Цитата:
прога выдала 1,2,5,8,1
она выдала 1 25 81 квадраты 1 5 9
Мы чужды себе, мы, познающие, мы сами чужды себе

Последний раз редактировалось VilAm; 14.11.2009 в 22:21.
VilAm вне форума Ответить с цитированием
Старый 14.11.2009, 22:19   #7
sadfeel
Новичок
Джуниор
 
Регистрация: 14.11.2009
Сообщений: 10
По умолчанию вот исправил..........пробуй

Цитата:
Сообщение от hardrace Посмотреть сообщение
VilAm ввожу n и программа ничего не делает, что не так?
sadfeel программа работает но похоже немного не так-я ввёл 9 элементов(1,2,3,4,5,6,7,8,9) поидее должна быть последовательность 1,5,9 но прога выдала 1,2,5,8,1 и почему-то в квадрат не возводит. что делать?
uses crt;
var
n,i,j,p : integer;
a : array[1..100,1..100] of integer;
posled : array[1..100] of integer;

begin
clrscr;
writeln('vvedite colvo elementov');
readln(n);

for i:=1 to n do
for j:=1 to n do
begin
write('a[',i,']','[',j,'] - ');
readln(a[i,j]);
end;
clrscr;
for i:=1 to n do
begin
for j:=1 to n do
write(a[i,j],' ');
writeln;
end;

for i:=1 to n do
posled[i] := sqr(a[i,i]);

for j:=1 to n do
for i:=2 to n do
if posled[i] < posled[i-1] then
begin
p := posled[i];
posled[i] := posled[i-1];
posled[i-1] := p;
end;

writeln('novaya posledovatel`nost');
for i:=1 to n do
write(posled[i],' ');
readkey;
end.




VilAm НУ МЫ ВЫДАЕМ ППЦ))

Последний раз редактировалось sadfeel; 14.11.2009 в 22:20. Причина: бо
sadfeel вне форума Ответить с цитированием
Старый 14.11.2009, 22:54   #8
hardrace
Новичок
Джуниор
 
Регистрация: 12.11.2009
Сообщений: 5
По умолчанию

отлично-спасибо вам-всё работает
что бы я без этого форума делал-не знаю...
hardrace вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Матрица. Сумма элементов главной диагонали RECREATOR Помощь студентам 13 11.05.2011 22:12
Вычислить сумму элементов матрицы, расположенные на главной диагонали и выше нее MariyaVo Паскаль, Turbo Pascal, PascalABC.NET 9 10.05.2009 21:19
Найти сумму парных элементов матрицы v[4][4].Расположенных ниже главной диагонали. Black_Angel91 Помощь студентам 11 21.04.2009 20:51
произведение всех элементов, расположенных на главной диагонали и выше ее матрицы размером 4х4, Pascal __FIRST__ Помощь студентам 2 12.12.2008 02:43
Найти отношения суммы элементов главной диагонали и суммы элементов побочной диагонали квадратной матрицы Elmander Помощь студентам 2 21.06.2007 07:15