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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 16.12.2008, 17:27   #1
Toxass
Пользователь
 
Регистрация: 12.11.2008
Сообщений: 62
По умолчанию Откоректируйте задание на двумерный массив

Переставить столбцы матрицы соответственно к уменьшению сум отрицательных чисел в столбиках.
Код:
begin
randomize;
for I:=1 to 10 do
a[i]:=random(100);
s:=0;
for i:=1 to 10 do
s:=s+a[i];
sr:=s/10;

for i:=1 to 10 do
  for j:=1 to 10 do
  if a[i]>sr then b[j]:=a[i];
for J:=1 to 10 do
writeln('j[i]=',j);
    end;
    readln;
end.
Toxass вне форума Ответить с цитированием
Старый 16.12.2008, 17:29   #2
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

А где матрица???
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 16.12.2008, 17:30   #3
Toxass
Пользователь
 
Регистрация: 12.11.2008
Сообщений: 62
По умолчанию

Цитата:
Сообщение от alex_fcsm Посмотреть сообщение
А где матрица???
ну вот вышенаписанное это программа, только она почемуто не работает!! Вот я и прошу помочь откорректировать)
Toxass вне форума Ответить с цитированием
Старый 16.12.2008, 17:32   #4
Toxass
Пользователь
 
Регистрация: 12.11.2008
Сообщений: 62
По умолчанию

Вот весь код
Код:
Var  a:array [1..10] of integer;
b:array [1..10] of integer;
  i,j:integer;
   s,sr:real;
begin
  { TODO -oUser -cConsole Main : Insert code here }

begin
randomize;
for I:=1 to 10 do
a[i]:=random(100);
s:=0;
for i:=1 to 10 do
s:=s+a[i];
sr:=s/10;

for i:=1 to 10 do
  for j:=1 to 10 do
  if a[i]>sr then b[j]:=a[i];
for J:=1 to 10 do
writeln('j[i]=',j);
    end;
    readln;
end.
Toxass вне форума Ответить с цитированием
Старый 16.12.2008, 17:32   #5
slips
Форумчанин
 
Аватар для slips
 
Регистрация: 28.10.2008
Сообщений: 350
По умолчанию

в упор не наблюдаю двумерного массива
slips вне форума Ответить с цитированием
Старый 16.12.2008, 17:35   #6
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Инициализация матрицы a:array[1..10,1..10] of integer;
Код:
for i:=1 to 10 do
 for j:=1 to 10 do
   a[i,j]:=random(10);
Предположим что в массиве b:array[1..10] of integer - отрицательные суммы
Код:
for i:=1 to 10 do
 begin
  b[i]:=0;
   for j:=1 to  10 do
     if a[i,j]<0 then b[i]:=b[i]+a[i,j];
 end;
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 16.12.2008, 17:35   #7
Toxass
Пользователь
 
Регистрация: 12.11.2008
Сообщений: 62
По умолчанию

ну тогда пожалуйста помогите сделать как надо!
Toxass вне форума Ответить с цитированием
Старый 16.12.2008, 17:38   #8
Toxass
Пользователь
 
Регистрация: 12.11.2008
Сообщений: 62
По умолчанию

Цитата:
Сообщение от alex_fcsm Посмотреть сообщение
Инициализация матрицы a:array[1..10,1..10] of integer;
Код:
for i:=1 to 10 do
 for j:=1 to 10 do
   a[i,j]:=random(10);
Предположим что в массиве b:array[1..10] of integer - отрицательные суммы
Код:
for i:=1 to 10 do
 begin
  b[i]:=0;
   for j:=1 to  10 do
     if a[i,j]<0 then b[i]:=b[i]+a[i,j];
 end;
Эт куда писать и что вообще с ним делать??
Toxass вне форума Ответить с цитированием
Старый 16.12.2008, 17:49   #9
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Это первые действия в программе
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Старый 16.12.2008, 18:01   #10
alex_fcsm
Участник клуба
 
Аватар для alex_fcsm
 
Регистрация: 10.11.2008
Сообщений: 1,502
По умолчанию

Код:
uses crt;
var i,j,temp,k:integer;
    a:array[1..10,1..10] of integer;
    b,t:array[1..10] of integer;
begin
randomize;
clrscr;
for i:=1 to 10 do
 begin
 for j:=1 to 10 do
  begin
   a[i,j]:=random(100)-random(100);
   write(a[i,j]:5);
  end;
 writeln;
 end;
for j:=1 to 10 do
 begin
  b[j]:=0;
   for i:=1 to  10 do
     if a[i,j]<0 then b[j]:=b[j]+a[i,j];
 end;

for i:=2 to 10 do
    for j:=10 downto i do
      if b[j-1]<b[j] then
        begin
          Temp:=b[j-1];
          b[j-1]:=b[j];
          b[j]:=temp;
          temp:=j;
          for k:=1 to 10 do
           t[k]:=a[k,temp];
          for k:=1 to 10 do
           a[k,temp]:=a[k,temp-1];
          for k:=1 to 10 do
           a[k,temp-1]:=t[k];
        end;
writeln('=================================================');
for i:=1 to 10 do
 begin
  for j:=1 to 10 do
   write(a[i,j]:5);
 writeln;
 end;
writeln('--------------------------------------------------');
writeln;
for i:=1 to 10 do
 write(b[i]:5);
end.
Нормальное состояние техники - нерабочее, все остальное частный случай.
alex_fcsm вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Двумерный массив Анжелика Помощь студентам 3 29.12.2008 21:23
Двумерный массив apetr Паскаль, Turbo Pascal, PascalABC.NET 2 30.11.2008 12:32
Двумерный массив... slim5 Помощь студентам 2 20.06.2008 23:16
Двумерный массив в С++ Draid Помощь студентам 2 07.03.2008 22:06
Двумерный массив help Imperceptible Паскаль, Turbo Pascal, PascalABC.NET 25 02.03.2007 20:00