Форум программистов, компьютерный форум, киберфорум
Наши страницы
Turbo Pascal
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
M3A7X9
0 / 0 / 0
Регистрация: 09.06.2014
Сообщений: 7
#1

Задача на Двухмерный массив . ! В исходной матрице заменить элементы главной диагонали на единицу

10.06.2014, 17:16. Просмотров 598. Ответов 2
Метки нет (Все метки)

Дан массив из 64 последовательных элементов {a1, a2,…, a64}.
Для вычисления элементов массива используется формула
ai = a0 + i*h, (1)
где a0 , h – переменные, значения которых индивидуальные для каждого варианта задания.
i – порядковый номер элемента массива.
Необходимо массив представить в виде двумерного, размерностью 8х8 (исходный).
Задать: Цвет фона - белый, цвет символов - черный.
В исходной матрице заменить элементы главной диагонали на единицу, а элементы находящиеся выше главной диагонали на элементы числового ряда (b1, b2,…, bi), рассчитываемые по формуле:
bi = b0- k*f(i),
где b0 , k – переменные, значения которых индивидуальные для каждого варианта задания.
f(x) – cos(x);
i – порядковый номер элемента ряда.
a0 - 0
h - 2
b0 - 5.2
k - 0.6
Полученную матрицу вывести на экран.

Добавлено через 34 минуты
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
uses crt;
const nmax=20;
var a:array[1..nmax,1..nmax] of integer;
i,j,n,tmp,k:integer;
begin
textbackground(white);
textcolor(black);
clrscr;
repeat
write('Порядок матрици n=');
readln(n);
until n in [1..nmax];
writeln('Исходная матрица :');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=random(20);
write(a[i,j]:4);
end;
writeln;
end;
writeln('Преобразованная матрица :') ;
for i:=1 to n do
begin
for j:=1 to n do
begin
if j=n-i+1 then
a[i,j]:=1;
write(a[i,j]:4);
end;
writeln;
end;
readkey;
end.

дополните код чтоб он рассчитывал по формуле изложенной выше (((( !!! спасибо заранее
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
10.06.2014, 17:16
Ответы с готовыми решениями:

В исходной матрице заменить нулями все элементы, стоящие на главной диагонали и выше нее
В исходной матрице заменить нулями все элементы, стоящие на главной диагонали и...

Массив. Элементы, расположенные ниже главной диагонали, заменить на единицу
Дана квадратная матрица порядка размерностью 6Х6. Элементы, расположенные ниже...

Заменить в матрице положительные элементы главной диагонали
Заменить в матрице положительные элементы главной диагонали и ниже нее на ноль...

Заменить в матрице элементы главной диагонали нулями
Дано матрицу А размером 6х6. Изменить в матрице элементы главной диагонали...

В матрице заменить элементы, лежащие выше главной диагонали нулями
Написать программу на языке Turbo Pascal, которая в матрице С(5;5) заменяет...

2
Svager
396 / 375 / 406
Регистрация: 14.09.2013
Сообщений: 1,204
10.06.2014, 22:19 #2
какой ужас, Вы не можете формулы вписать ?
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
uses crt;
const nmax=20;
var a:array[1..nmax,1..nmax] of integer;
i,j,n,tmp,k:integer;
begin
textbackground(white);
textcolor(black);
clrscr;
repeat
write('Ïîðÿäîê Г¬Г*òðèöè n=');
readln(n);
until n in [1..nmax];
writeln('ÈñõîäГ*Г*Гї Г¬Г*òðèöГ* :');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=0+i*2;
write(a[i,j]:4);
end;
writeln;
end;
writeln('ÏðåîáðГ*çîâГ*Г*Г*Г*Гї Г¬Г*òðèöГ* :') ;
for i:=1 to n do
begin
for j:=1 to n do
begin
if j=n-i+1 then
a[i,j]:=1;
write(a[i,j]:4);
end;
writeln;
end;
readkey;
end.
1
M3A7X9
0 / 0 / 0
Регистрация: 09.06.2014
Сообщений: 7
11.06.2014, 01:52  [ТС] #3
Svager, это реальный ужасс ... самому стыдно ((( спасибо большое ...
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
11.06.2014, 01:52

В матрице заменить элементы, лежащие выше главной диагонали нулями
В матрице с(5;5) заменить элементы, лежащие выше главной диагонали нулям.

В матрице B все элементы, стоящие ниже главной диагонали, заменить на нуль. Полученную матрицу сложить с матрицей A.
Даны матрици A и B размером (n*n) В матрице B все элементы, стоящие ниже...

Элементы выше главной диагонали заменить на ноль, а ниже главной диагонали – округлить
Всем привет. Очень давно не работал с Pascal'ем и ни как не могу понять, что...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru