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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.12.2011, 19:15   #1
Julichka1k
Пользователь
 
Регистрация: 17.12.2011
Сообщений: 30
По умолчанию В матрице найти число положительных элементов указанной строки и умножить это число на элементы указанного столбца. (Паскаль)

Задание:

В матрице найти число положительных элементов указанной строки и умножить это число на элементы указанного столбца.

полученный код:
Код:
program lab_2;
var a:array[1..5,1..5] of real;
    n,m,k,i,j,p:byte;
    x:string;
    p:real;
    c:integer;

begin 
writeln('Введите количество строк матрицы');
 readln(n);
 writeln('Введите колиество столбцов матрицы');
 readln(m);
writeln('хотите заполнить матрицу автоматически?');
readln(x);
if (x='нет')then
begin
writeln('введите элементы маирицы');
for i:=1 to n do
for j:=1 to m do
    begin
write('a[',i,',',j,']= ');
readln(a[i,j])
    end;
end
else
begin
randomize;
for i := 1 to n do begin
for j := 1 to n do begin
a[i, j] := random(21)-20;
end;
writeln;
end;

  writeln('Ввод успешно завершен');
writeln('Данная матрица');
{Вывод матрицы}
  for i:=1 to n do
  begin
   for j:=1 to m do
    write(a[i,j]:4:0);
   writeln;
  end;
  writeln('Количество положительных элементов в указанной строке матрицы');
  writeln('введите строку');
  readln(i);
  begin
   k:=0;
   for j:=1 to m do
    if a[i,j] > 0 then
   inc(k);
   writeln('Строка ',i,' элемнтов ',k);
  end;
  writeln('введите столбец');
  readln(j);
  begin
  c:=0;
for i:=1 to n do
c:=c+a[i,j]
  end;

  writeln('уmножение элементов указанного столбца на число элементов строки');
  begin
    p:=p+k*a[i,c];
	writeln(p);
end;
                

end;
end.

много ли недочетов, и что нужно исправить ..


________
1) Название темы по правилам форума должно адекватно отражать суть решаемой задачи/проблемы.
На первый раз я исправил.
В последующем, темы с подобным названием будут закрываться или удаляться,
а автор такой темы будет получать штрафные баллы.

2) Код нужно оформлять по правилам:
тегом [CODE]..[/СODE] (это кнопочка с решёточкой #)

Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 18.12.2011 в 20:18.
Julichka1k вне форума Ответить с цитированием
Старый 18.12.2011, 20:04   #2
Julichka1k
Пользователь
 
Регистрация: 17.12.2011
Сообщений: 30
По умолчанию

почему в этом месте c:=c+a[i,j] выдает ошибку

попытка присвоить переменной типа byte выражения типа real

что сделать?
Julichka1k вне форума Ответить с цитированием
Старый 18.12.2011, 20:09   #3
zhan313
Пользователь
 
Регистрация: 09.12.2011
Сообщений: 44
По умолчанию

потому что
Код:
a:array[1..5,1..5] of real;
c:integer;
zhan313 вне форума Ответить с цитированием
Старый 18.12.2011, 20:10   #4
Mad_Cat
Made In USSR!
Старожил
 
Аватар для Mad_Cat
 
Регистрация: 01.09.2010
Сообщений: 3,657
По умолчанию

Код:
writeln('введите столбец');
readln(j);
begin
for i:=1 to n do
a[i,j]:=K*a[i,j]
end;
writeln('Новая матрица');
{Вывод матрицы}
for i:=1 to n do
begin
for j:=1 to m do
write(a[i,j]:4:1);
writeln;
end;
Readln;
end.
"...В жизни я встречал друзей и врагов.В жизни много всего перевидал.Солнце тело мое жгло, ветер волосы трепал,но я смысла жизни так и не узнал..."
(c) Юрий Клинских aka "Хой"
Mad_Cat вне форума Ответить с цитированием
Старый 18.12.2011, 20:35   #5
Julichka1k
Пользователь
 
Регистрация: 17.12.2011
Сообщений: 30
По умолчанию

а почему матрица вылетает после ручного ввода?
Julichka1k вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вводишь число- дает комбинацию из сумм различных чисел (от 1 до 10)составляющих это число Jonfree C++ Builder 0 05.12.2011 22:08
Дано натуральное число N. Выяснить, сколько положительных элементов содержит матрица |Dima| Общие вопросы C/C++ 1 06.07.2011 03:36
Для первого столбца и первой строки вычислить произведение положительных элементов. Katie Помощь студентам 4 13.01.2010 02:21
В прямоугольной матрице переставить столбцы так, чтобы сумма элементов столбца росла от первого столбца Aleo13 Помощь студентам 5 15.10.2008 18:34
умножить число на элементы матрицы KORT Помощь студентам 2 04.11.2007 02:06