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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 14.11.2009, 20:24   #1
JOHN1992
Пользователь
 
Регистрация: 04.11.2009
Сообщений: 11
Восклицание двумерный массив

1. Ввести двумерный массив А NxN(NxN маленькие), вывести его. Если значение суммы элементов его главной диагонали превышает число элементов побочной, то квадратом полученной разности заменить отрицательные элементы под побочной диагональю
помогите составтиь программу на паскале заранее спасибо !
JOHN1992 вне форума Ответить с цитированием
Старый 14.11.2009, 20:41   #2
Alex Cones
Trust no one.
Старожил
 
Аватар для Alex Cones
 
Регистрация: 07.04.2009
Сообщений: 6,526
По умолчанию

http://www.programmersforum.ru/showthread.php?t=70310
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ
GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ
Alex Cones вне форума Ответить с цитированием
Старый 15.11.2009, 08:03   #3
JOHN1992
Пользователь
 
Регистрация: 04.11.2009
Сообщений: 11
По умолчанию

ну и на этом спасибо как говорится...
JOHN1992 вне форума Ответить с цитированием
Старый 15.11.2009, 08:07   #4
VilAm
Пользователь
 
Аватар для VilAm
 
Регистрация: 14.11.2009
Сообщений: 56
По умолчанию

Код:
 {Ввести двумерный массив А NxN(NxN маленькие), вывести его.
  Если значение суммы элементов его главной диагонали превышает
  число элементов побочной, то квадратом
  полученной разности заменить отрицательные элементы под побочной диагональю}
var i,j:Integer;
     n:Integer;
     sg,sp:Integer;
     r:Integer;
     k:integer;
     a:array[1..100,1..100] of Integer;
begin
  Randomize;
  Writeln('input n');
  Readln(n);
  sg:=0;
  sp:=0;
  k:=0;
  for i:=1 to n do
    for j:=1 to n do
    a[i,j]:=Random(30)-20; (*для ручного ввода заменить на readln(a[i,j]);*)
    Writeln('****MATRIX****');
    for i:=1 to n do begin
    for j:=1 to n do
    write(a[i,j]:6);
    Writeln;
    end;
    Writeln('**********************');
    for i:=1 to n do begin
     sg:=sg+a[i,i];
     sp:=sp+a[i,n-i+1];
    end;
     r:=sg-sp;
    Writeln('sum of main diagonal=',sg:8);
    Writeln('sum of sideline diagonal=',sp:8);
    Writeln('difference=',r:6);
    Writeln('**********************');
    if r>0 then
    for i:=1 to n do
    for j:=1 to n do
    if (i+j-1>n) and (a[i,j]<0) then
    begin
      a[i,j]:=Sqr(r);
      k:=k+1;
    end;
    if k >0 then begin
      Writeln('made substitutions=',k:6);
      Writeln('******NeW Matrix******');end
    else Writeln('***MATRIX not changed***');
      for i:=1 to n do begin
    for j:=1 to n do
    write(a[i,j]:6);
    Writeln;
    end;
    Writeln('*Press any key to exit*');
    Readln;
end.
Мы чужды себе, мы, познающие, мы сами чужды себе

Последний раз редактировалось VilAm; 15.11.2009 в 08:35.
VilAm вне форума Ответить с цитированием
Старый 15.11.2009, 08:51   #5
JOHN1992
Пользователь
 
Регистрация: 04.11.2009
Сообщений: 11
По умолчанию

а вам огромное спасибо)
JOHN1992 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двумерный массив, одномерный массив. Branbal Помощь студентам 14 18.11.2009 12:40
Двумерный массив. Джеймс1275 Помощь студентам 4 04.11.2009 14:09
Двумерный массив Лоя Помощь студентам 10 20.04.2009 19:56
Двумерный массив. kGxDD Паскаль, Turbo Pascal, PascalABC.NET 0 15.04.2009 21:43
Двумерный массив в С++ Draid Помощь студентам 2 07.03.2008 22:06