IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Задачи на матрицы (двумерные массивы), 6 задач.
сообщение
Сообщение #1


Гость






1.Создать 2-х мерный массив 20х15 целых чисел заданных через randomize и найти их сумму.
2.Создать матрицу 5х5 значение каждого элемента = сумме № строки и столбца на пересечении которого он находиться. Вычислить сумму элементов каждой строки.
3.Создать 2-х мерный массив 4х4 и найти максимальный по абсолютному значению а также укажите номер строки и столбца содержащие этот элемент.
4.Создать 2-х мерный массив через randomize и определите и определите есть ли в нем элементы с одинаковым значением
5.Создать 2-х мерный массив вещественных чисел 3х5 выведите на экран затем разделить каждый элемент на среднее арифметическое значение элементов строки в котором они расположены.
6.Создайте программу проверяющую образуют ли элементы массива "Магический квадрат".(маг. квадрат- суммы по всем горизонталям вертикалям и 2-ум диагоналям - равны
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов(1 - 10)
сообщение
Сообщение #2


Ищущий истину
******

Группа: Пользователи
Сообщений: 4 825
Пол: Мужской
Реальное имя: Олег

Репутация: -  45  +


1.
Код

var
a:array[1..20,1..15] of integer;
i,j,s:integer;
begin
randomize
for i:=1 to 20 do for j:=1 to 15 do begin a[i,j]:=random(200); s:=s+a[i,j] end;
end.


--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Ищущий истину
******

Группа: Пользователи
Сообщений: 4 825
Пол: Мужской
Реальное имя: Олег

Репутация: -  45  +


2.
Код

var
a:array[1..5,1..5] of integer;
i,j:integer;
begin
for i:=1 to 5 do for j:=1 to 5 do a[i,j]:=i+j;
end.



3.
Код

var
a:array[1..4,1..4] of integer;
i,j,m,si,sj:integer;
begin
randomize
for i:=1 to 4 do for j:=1 to 4 do
begin
a[i,j]:=random(200);
If a[i,j]>m then
begin
 m:=a[i,j]; si:=i,sj:=j;
end;
end;
writeln(m,' ',si,' ',sj);
end.



--------------------
Помогая друг другу, мы справимся с любыми трудностями!
"Не опускать крылья!" (С)
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






4.
Код

const
 n = 10;
var
 a:array[1..n] of integer;
 i,j:integer;
begin
 for i := 1 to n do
   a[i] := random(10);
 for i := 1 to n-1 do
   begin
     for j := i+1 to n do
       begin
         if a[i] = a[j] then
           break;
       end;
       if j < 10 then break;
   end;
   if i < 9 then writeln('Все элементы массива одинаковы')
     else writeln('Есть различный элементы');
end.

 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






5. (Если я правильно понял условие) smile.gif
Код

const
 n = 3;
 m = 5;
var
 a:array[1..n,1..m] of real;
 i,j:integer;
 sum,mdl:real;
begin
 for i := 1 to n do
   for j := 1 to m do
     begin
       a[i,j] := random;
     end;
 for i := 1 to n do
   begin
     WriteLn;
     for j := 1 to m do
       Write(a[i,j]:4:3,' ');
   end;
 for i := 1 to n do
   begin
     sum := 0;
     for j := 1 to m do
       sum := sum + a[i,j];
     mdl := sum/m;
     for j := 1 to m do
       a[i,j] := a[i,j] / mdl;
   end;
end.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






mithquessir
В решении 4-ой задачи не имел ли ты в виду вот это:
Код

if i < 9 then writeln('В массиве есть одинаковые элементы')
 else writeln('все элементы различны');
rolleyes.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Гость






volvo
maybe, maybe :D
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Гость






Спасибо за помощь! :D rolleyes.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Извиняюсь, чушь написал.
Щас попробую 6-ю написать.

Сообщение отредактировано: klem4 -


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Гость






klem4
Все просто:
Код

const
 n = 3;
 a: array[1 .. n, 1 .. n] of integer =
   ((1, 2, 1), (1, 1, 1), (1, 1, 1));

var
 i, j, s, main: integer;
 b: boolean;
begin
 s := 0; b := true;

 for i := 1 to n do
   s := s + a[i, i];
 main := s;

 for i := 1 to n do
   s := s - a[i, n - i + 1];
 b := b and (s = 0);

 if b then
   for i := 1 to n do
     begin
       s := main;
       for j := 1 to n do
         s := s - a[i, j];
       b := b and (s = 0)
     end;

 if b then
   for j := 1 to n do
     begin
       s := main;
       for i := 1 to n do
         s := s - a[i, j];
       b := b and (s = 0)
     end;

 writeln('magic: ', b)
end.

smile.gif
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Perl. Just code it!
******

Группа: Пользователи
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


Ага, а я так жестоко раскатал .... :D
Код
uses crt;
const n=3;
var x:array[1..n,1..n] of integer;
   i,j,s,snew:integer;
   bo:boolean;

Begin
  clrscr;
  randomize;
 {*************************************}
  for i:=1 to n do
   begin
      for j:=1 to n do
       begin
          readln(x[i,j]);
          write(x[i,j]);
          write(' ');
       end;
       writeln;
   end;
 {**************************************}
   bo:=true;
   s:=0;
   j:=1;
 {**************************************}
   for i:=1 to n do
    s:=s+x[i,j];
   writeln('s=',s);
 {**************************************}
  j:=1;
  while j<=n do
   begin
      snew:=0;
      for i:=1 to n do
       snew:=snew+x[i,j];
      if snew<>s then
       bo:=false;
      if bo=false then break;
      inc(j);
   end;
 {***************************************}
 i:=1;
 while i<=n do
  begin
     snew:=0;
     for j:=1 to n do
      snew:=snew+x[i,j];
     if snew<>s then
      bo:=false;
     if bo=false then break;
     inc(i);
  end;

 {***************************************}
 snew:=0;
 for i:=1 to n do
  snew:=snew+x[i,i];
 if snew<>s then
  bo:=false;
 {***************************************}
 snew:=0;
  j:=1;
for i:=n downto 1 do
 begin
    snew:=snew+x[i,j];
    inc(j);
 end;
 if snew<>s then
  bo:=false;
 {***************************************}
 writeln(bo);
 if bo=true then writeln('Magichesky')
  else writeln('Ne mahichsky');

readln;
 end.



Сообщение отредактировано: klem4 -


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.03.2024 17:29
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name