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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.12.2011, 23:43   #1
CookieStar
Новичок
Джуниор
 
Регистрация: 09.12.2011
Сообщений: 3
По умолчанию

ещё вычеркнуть эллемент, стоящий на пересечении этих диагоналей.
Заранее спасибо, буду оочень благодарна!

подскажите как доделать и что у меня не верно

Последний раз редактировалось Stilet; 12.12.2011 в 08:54.
CookieStar вне форума Ответить с цитированием
Старый 10.12.2011, 00:06   #2
Lasur
Форумчанин
 
Аватар для Lasur
 
Регистрация: 13.10.2011
Сообщений: 143
По умолчанию

В чем неверно? У вас есть наработки? Если есть - выложите их.
Все имена, фамилии, ники, даты и события упоминаемые в моих постах, являются вымышленными. Все совпадения с реально существующими - случайны.
Lasur вне форума Ответить с цитированием
Старый 10.12.2011, 00:07   #3
CookieStar
Новичок
Джуниор
 
Регистрация: 09.12.2011
Сообщений: 3
По умолчанию

Код:
const m =9;
type m_rr  = array [1..m,1..m] of integer;
procedure init _ array
(var a: m_arr; m: integer);
var
n, i, j,b,k : integer;
begin
randomize
for i:= 1 to m do
for j:= 1 to m do
a [i,j]:= random (n+10) - 8;
end;
for i:= 1 to m do 
for j:= 1 to m do
begin 
if i=j then b[k] = a[i;j]
if i+j = n+1 then b[k] = a [i;j];
writeln;
end;
end;
procedure processing_array (var a:m_arr; m:integer);
var
i,j, amin, amax: integer;
begin
amin:= a[1,1];
amax:= a[1,1];
for i:= 1 to m do
for j:= 1 to m 
begin
if a [i,j] < amin then amin:= a [i,j];
if a [i,j] > a max then amax:= a [i,j];
ну текст вывода двумерного массива я знаю вроде

на самом деле я понимаю в общих чертах только
а так все это для меня абракадабра
инфы в школе не было на надлежащем уровне
а сейчас ад какой-то начался
я прям не знаю что делать, может книгу какую посоветуете?

я написала ниже, спасибо что откликнулись, значит надежда есть)

Последний раз редактировалось Stilet; 12.12.2011 в 09:05.
CookieStar вне форума Ответить с цитированием
Старый 10.12.2011, 01:20   #4
rUs_LAN
Форумчанин
 
Регистрация: 15.11.2008
Сообщений: 577
По умолчанию

А я в школе ничего не делал, даже ходил туда редко, нафига тебе то паскаль?
неужели в школах теперь заставляют что-то делать о_0

п.с. а если хочешь стать программистом мне кажется лучше учить С + +, но это мое имхо
п.п.с. google translate
rUs_LAN вне форума Ответить с цитированием
Старый 10.12.2011, 01:20   #5
viron
Форумчанин
 
Аватар для viron
 
Регистрация: 02.12.2011
Сообщений: 110
По умолчанию

Код:
const
  m = 9;  // размер массива. число строк и столбцов = 9


var
  a: array[1..m, 1..m] of Integer;  // массив
  i,j: Integer;
  glDiag, pobDiag: array[1..m] of Integer;  // здесь будем хранить главную и побочную диагональ
  t: Boolean;
  temp: Integer;
begin
  Randomize();  // генератор случайных чисел

  // заполняем двумерный массив случайными целыми числами
  for i:= 1 to m do
    for j:= 1 to m do
      a[i,j]:= random(20) - 8;  // random(20) - случайное целое число от 0 до 19


  // печать главной диагонали
  for i:= 1 to 6 do
  begin
    glDiag[i]:= a[i][i];
    Write(glDiag[i], ' ');
  end;

  Writeln;


  // печатаем побочную диагональ
  for i:= 1 to 6 do
  begin
    pobDiag[i]:= a[i][m-i+1];
    Write(pobDiag[i], ' ');
  end;

  Writeln;

  // сортировка главной диагонали
  t:= True;
  while (t = True) do
  begin
    t:= False;
    for i:= 1 to m-1 do
      if glDiag[i] < glDiag[i+1] then
        begin
          temp:= glDiag[i];
          glDiag[i]:= glDiag[i+1];
          glDiag[i+1]:= temp;
          t:= True;
        end;
  end;

  // сортировка побочной диагонали
  t:= True;
  while (t = True) do
  begin
    t:= False;
    for i:= 1 to m-1 do
      if pobDiag[i] < pobDiag[i+1] then
        begin
          temp:= pobDiag[i];
          pobDiag[i]:= pobDiag[i+1];
          pobDiag[i+1]:= temp;
          t:= True;
        end;
  end;

  // напечатаем результат
  for i:= 1 to m do
    Write(glDiag[i], ' ');

  Writeln;

  for i:= 1 to m do
    Write(pobDiag[i], ' ');


  Readln; // чтобы окно сразу не закрывалось
end.
viron вне форума Ответить с цитированием
Старый 10.12.2011, 01:37   #6
rUs_LAN
Форумчанин
 
Регистрация: 15.11.2008
Сообщений: 577
По умолчанию

зачем же так людей путать...

во 1
с++ detected!)
во 2
Код:
const
  m = 9;  // размер массива. число строк и столбцов = 9
Код:
 for i:= 1 to 6 do
?!!

Код:
// печатаем побочную диагональ
  for i:= 1 to 6 do
  begin
    pobDiag[i]:= a[i][m-i+1];
    Write(pobDiag[i], ' ');
  end;
помоему должно быть наоборот тоесть
Код:
pobDiag[i]:= a[m-i+1][i];
и 3 тоесть опять про 1вое
в паскале индеки массивов обозначаются a[i,j] а не а[i][j]
rUs_LAN вне форума Ответить с цитированием
Старый 12.12.2011, 07:44   #7
CookieStar
Новичок
Джуниор
 
Регистрация: 09.12.2011
Сообщений: 3
По умолчанию

Огромное Спасибо!!!
я вас обожаю!
CookieStar вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
отсортировать массив случайных чисел и вывести на экран. PAREN_DEFO Помощь студентам 1 27.05.2011 17:17
Отсортировать массив по четным элементам ,методом пузырька! Babur4iK Помощь студентам 13 27.05.2010 08:52
Отсортировать массив по убыванию в С++ sershok Помощь студентам 5 16.02.2009 00:31
Как вывести на экран двумерный массив случайным образом? Stager Общие вопросы C/C++ 5 07.01.2009 20:53