Мальчики помогите

За вознаграждение или нахаляву (если повезёт)

Модераторы: Хыиуду, MOTOCoder, Medved, dr.Jekill

Ответить
milaska
Сообщения: 2
Зарегистрирован: 16 окт 2007, 19:10

Мальчики помогите пожалуйста с задачкой очень сроочно

Имеется матрица А(4,4),необходимо взять все элементы, лежащие выше побочной диагонали и записать их в одномерный массив В.

и если не сложно мне надо еще тоже самое сделать для главной

пажалуйста я очень на вас надеюсь... ;)
milaska
Сообщения: 2
Зарегистрирован: 16 окт 2007, 19:10

ну неужели это так сложно?у меня контролльная скоро(((
Аватара пользователя
Новенький
Сообщения: 73
Зарегистрирован: 01 июн 2007, 17:35
Откуда: Чусовой (Пермский край)
Контактная информация:

вот код этой программы:

Код: Выделить всё

uses crt;
var a:array[1..4,1..4]of integer; {матрица}
    b, b2:array[1..6]of integer; {одномерный массив}
    i,j,k:integer; {счетчики}
begin
  clrscr; {очистка экрана}
  randomize; {включение датчика случайных чисел}
  {заполнение матрицы случайными числами и вывод матрицы на экран}
  for i:=1 to 4 do
    begin
      for j:=1 to 4 do
        begin
          a[i,j]:=random(30);
          write(a[i,j]:3);
        end;
      writeln;
    end;

  k:=1; {счетчик для одномерного массива}
  writeln;
write('выше побочной: ');
  {для побочной диагонали}
  for i:=1 to 4 do
    for j:=1 to 4 do
      if (i+j<5) {если выше побочной диагонали}
      then begin
        b[k]:=a[i,j]; {вносим число в массив}
        write(b[k]:3); {выводим число на экран}
        k:=k+1; {изменяем счетчик по массиву}
      end;

  k:=1;
  writeln;
  write('выше главной: ');
  {для главной диагонали}
  for i:=1 to 4 do
    for j:=1 to 4 do
      if (j-i>0) {если выше главной диагонали}
      then begin
        b2[k]:=a[i,j]; {вносим число в массив}
        write(b2[k]:3); {выводим число на экран}
        k:=k+1; {изменяем счетчик по массиву}
      end;

  readln;
end.
Программирование - хорошая штука
Ответить