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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.05.2014, 00:17   #1
rik1
 
Регистрация: 19.05.2014
Сообщений: 6
По умолчанию блок-схема

помогите составить блок-схему, и посмотрите если не сложно, правильно ли составлено собственно программа:
условия программы: найти произвидение всех ее положительных элементов и заменить им все диагональные элементы этой матрицы
Код:
program p6;
uses crt;
const n=7;
var a:array [1..n,1..n] of integer;
    d,i,j:integer;
begin  clrscr; randomize;
    for i:=1 to n do begin
     for j:=1 to n do begin
     a[i,j]:=random(17)+4; write(a[i,j]:4); end; writeln; end;
     d:=1;
     for i:=1 to n do
      for j:=1 to n do
      if a[i,j]<0 then d:=d*a[i,j];
 
    writeln(d); 
 
    for i:=1 to n do
     for j:=1 to n do
     if i+j=n+1 then a[i,j]:=d;
 
     for i:=1 to n do begin
     for j:=1 to n do
     write(a[i,j]:4); writeln; end;
 
readkey;
end.

Последний раз редактировалось rik1; 27.05.2014 в 00:20.
rik1 вне форума Ответить с цитированием
Старый 27.05.2014, 06:12   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

1) при таком заполнении
Цитата:
Код:
a[i,j]:=random(17)+4
в матрице отрицательных вообще не будет.

2)
Цитата:
Код:
if a[i,j]<0
- это условие проверки на ОТРИЦАТЕЛЬНЫЕ числа. (Вам нужны положительные, это условие БОЛЬШЕ нуля

3) произведение - это очень быстро растущая функция. даже если умножить не 49 чисел, как у Вас, а всего четыре (20*20*20*20) то получим 160000. Это число, которое значительно превыщает допустимое число в Integer для TurboPascal. А если добавить ещё несколько членов ряда - то и в Integer Delphi/FreePascal не влезет!
я бы уточнил ещё раз исходное задание.

4) в квадратной матрице две основные диагонали.
это главная диагональ. для неё выполняется условие I=J (индекс строки равен индексу столбца)
и побочная диагональ. для неё выполняется условие I = (N+1-J)
у Вас же что-то непонятное написано, надо переделать...

ну, как то так..
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
блок-схема ара Фриланс 7 19.05.2011 14:25
Схема алгоримта (блок схема) на задачу по Паскалю LINCHAK Помощь студентам 0 22.10.2010 16:56
Блок схема dimonpwnz Помощь студентам 0 12.02.2010 19:10
Блок схема алгоритма программы и схема взаимодействия модулей. Lazio Фриланс 3 02.12.2009 23:10