Показать сообщение отдельно
Старый 08.06.2009, 16:47   #87 (permalink)
Vladimir_S
Специалист
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 27,807
Сказал(а) спасибо: 340
Поблагодарили 583 раз(а) в 208 сообщениях
Репутация: 113184
По умолчанию

Цитата:
Сообщение от igorit Посмотреть сообщение
Помогите нужно срочно, желательно сегодня.
Задача 1.
Сгенерировать и вывести на экран массив А размером 10x10 из случайных реальных чисел в диапазоне
от 1 до 9. Определить и вывести массив В также размером 10x10 по одному из следующих принципов:
1)элементы главной диагонали определить как суммы по соответствующим строкам;
2)элементы главной диагонали определить как произведение по соответствующим столбцам;
3)элементы главной диагонали определить как произведение по соответствующим строкам и столбцам.

CONST
N=10;
VAR
a,b1,b2,b3:ARRAY[1..N,1..N] of REAL;
i,j:INTEGER;

BEGIN
Randomize;
FOR i:=1 TO N DO
FOR j:=1 TO N DO
a[i,j]:=RANDOM*8+1;
Writeln('Array a:');
FOR i:=1 TO N DO
BEGIN
FOR j:=1 TO N DO
Write(a[i,j]:7:3);
WriteLn;
END;
Writeln('Press "Enter" to continue...');
ReadLn;
b1:=a;
b2:=a;
b3:=a;
FOR i:=1 TO N DO
b1[i,i]:=0;
FOR i:=1 TO N DO
FOR j:=1 TO N DO
b1[i,i]:=b1[i,i]+b1[i,j];
Writeln('Array b1:');
FOR i:=1 TO N DO
BEGIN
FOR j:=1 TO N DO
Write(b1[i,j]:7:3);
WriteLn;
END;
Writeln('Press "Enter" to continue...');
ReadLn;
FOR i:=1 TO N DO
b2[i,i]:=1;
FOR i:=1 TO N DO
FOR j:=1 TO N DO
b2[i,i]:=b2[i,i]*b2[i,j];
Writeln('Array b2:');
FOR i:=1 TO N DO
BEGIN
FOR j:=1 TO N DO
IF i<>j THEN
Write(b2[i,j]:7:3) ELSE
Write(' ',b2[i,j]:5);
Writeln;
END;
Writeln('Press "Enter" to continue...');
ReadLn;
FOR i:=1 TO N DO
b3[i,i]:=1;
FOR i:=1 TO N DO
FOR j:=1 TO N DO
b3[i,i]:=b3[i,i]*b3[i,j]*b3[j,i];
Writeln('Array b3:');
FOR i:=1 TO N DO
BEGIN
FOR j:=1 TO N DO
IF i<>j THEN
Write(b2[i,j]:7:3) ELSE
Write(' ',b2[i,j]:5);
WriteLn;
END;
ReadLn;
END.
Vladimir_S вне форума  
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070