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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.07.2009, 00:31   #11
Вавел из ГМТУ
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 896
По умолчанию

Я было начал делать, но забил.. Вот что наработал

Код:
Var
  x, y, Summ : Integer;
  Mass : Array [1..10, 1..6] Of Integer;
Begin
Randomize;
Summ := 0;
//Заполняем массив
For x := 1 To 10 Do
  Begin
    For y := 1 To 6 Do
      Begin
        Mass[x,y] := 2 - Random(5);
        Write(IntToStr(Mass[x,y]) + ' ');
      End;
    Writeln;
  End;

//Прсуммируем и выведем на экран "характеристики" строк.
Writeln;
For x := 1 To 10 Do
  Begin
    For y := 1 To 6 Do If (y mod 2 = 0) And (Mass[x,y] > 0) Then Summ := Summ + Mass[x, y];
    Writeln(Summ);
    Summ := 0;
  End;
Readln;
End.
А вот что дальше делать/изменять я думать не стал. Я только понимаю что тут надо подумать
Вавел из ГМТУ вне форума Ответить с цитированием
Старый 04.07.2009, 14:32   #12
tipson
Пользователь
 
Регистрация: 01.04.2009
Сообщений: 76
По умолчанию

puporev сделал задачу на много проще, я аж удивился ))
ща ссылю дам

Код:
program matrica;
uses crt;
var a:array[1..20,1..20] of integer;{дополнительный массив не нужен}
    n,i,j,l:byte;
    sm,b:integer;{сумма, буфер для обмена}
begin
clrscr;
randomize;
write('Размер матрицы n=');
readln(n);
for i:=1 to n do
for j:=1 to n do
a[i,j]:=random(20)-2;
for i:=1 to n do{идем по строкам}
 begin
  sm:=0;
  for j:=1 to n do
  if (a[i,j] mod 2=0) and (a[i][j]>0) then sm:=sm+a[i,j];{считаем сумму нужных в строке}
  a[i,n+1]:=sm;{записываем ее в дополнительный столбец матрицы}
 end;
writeln('Исходная матрица:');
writeln('Сумма':n*4+6);
for i:=1 to n do
 begin
  for j:=1 to n+1 do
  if j<=n then write(a[i,j]:4){сама матрица}
  else write(a[i,j]:6);{дополнительный столбец}
  writeln;
 end;
for i:=1 to n-1 do {сортируем все столбцы матрицы по возрастанию}
for l:=i+1 to n do
if a[i,n+1]>a[l,n+1] then{одновременно с сортировкой дополнительного столбца}
for j:=1 to n+1 do
 begin
  b:=a[i,j];
  a[i,j]:=a[l,j];
  a[l,j]:=b;
 end;
writeln('Измененная матрица:');
writeln('Сумма':n*4+6);
for i:=1 to n do
 begin
  for j:=1 to n+1 do
  if j<=n then write(a[i,j]:4)
  else write(a[i,j]:6);
  writeln;
 end;
readln
end.
http://programmersforum.ru/showthread.php?t=56767
tipson вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
характеристика ноутбука???? Betty Компьютерное железо 6 07.08.2011 22:56
Обработка Матриц(Упорядочивание Элементов,Вывод На Экран Матриц При Условии...) timepoka Помощь студентам 8 01.07.2011 13:20
Преобразование матриц bpystep Помощь студентам 8 23.03.2009 12:54
транспонирование матриц kate158 Общие вопросы Delphi 7 21.12.2008 16:39
Характеристика ГОСТ 28 147-89 beegl Помощь студентам 2 10.10.2008 10:22