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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 18.05.2011, 20:49   #1
swillrocker
Пользователь
 
Регистрация: 04.05.2011
Сообщений: 44
По умолчанию Процедуры

Вот составил программы, но нужно их переделать с процедурами, так чтобы,
основная программа состояла бы только из последовательности вызовов подпрограмм.
В первой составить процедуру ввода массива вместо (a[1]:=3; a[2]:=2; a[3]:=1;...и.т.д)

1)
Код:
Program lab4rr;
const
  m=3;
  n=4;
type
  TA = array [1..m] of integer;
  TB = array [1..n] of integer;
  TC = array [1..m+n] of integer;
procedure someproc(a:TA;b:TB;var c:TC);
var
  i:integer;
  ixA,ixB:integer;
begin
  ixA:=1;
  ixB:=1;
  for i := 1 to m+n do
    if (a[ixA]>b[ixB]) or (ixB>n) then
      begin
        c[i]:=a[ixA];
        inc(ixA)
      end
    else
      begin
        c[i]:=b[ixB];
        inc(ixB)
      end
end;
var
  a:TA;
  b:TB;
  c:TC;
  i:integer;
begin
  a[1]:=3;
  a[2]:=2;
  a[3]:=1;
  b[1]:=8;
  b[2]:=5;
  b[3]:=3;
  b[4]:=1;
  someproc(a,b,c);
  writeln;
  for i := 1 to m+n do
    write(c[i],',');
  writeln;
  readln;
end.
2)
Код:
uses crt;
const n=10;
var matrix:array[1..n,1..n] of integer;
    i,j,k:byte;
    flag:boolean;
    skal:integer;
begin
clrscr;
writeln('Введите ',n*n,' элементов матрицы:');
for i:=1 to n do
for j:=1 to n do
read(matrix[i,j]);
readln;
clrscr;
writeln('Исходная матрица:');
for i:=1 to n do
  begin
   for j:=1 to n do
   write(matrix[i,j]:3);
   writeln;
  end;
writeln;
i:=1;
flag:=true;
repeat
j:=1;
repeat
skal:=0;
for k:=1 to n do
skal:=skal+matrix[i,k]*matrix[j,k];
if ((i=j) and (skal<>1)) or ((i<>j) and (skal<>0)) then flag:=false;
j:=j+1
until not(flag) or (j=n+1);
i:=i+1
until not (flag) or (i=n+1);
if flag=true then writeln ('Ортонормированна')
else writeln ('Не ортонормированна');
readln
end.

Последний раз редактировалось swillrocker; 18.05.2011 в 20:51.
swillrocker вне форума Ответить с цитированием
Старый 18.05.2011, 21:16   #2
swillrocker
Пользователь
 
Регистрация: 04.05.2011
Сообщений: 44
По умолчанию

Помогите пожалуйста, одну процедуру мне друг помог сделать... Не понимаю я в них ничего.
swillrocker вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Использование имени процедуры в качестве параметра другой процедуры Alexey355 Помощь студентам 1 23.04.2011 13:59
закончить выполнение процедуры из тела другой процедуры Alaysor Общие вопросы Delphi 14 23.01.2011 05:26
Процедуры kGxDD Паскаль, Turbo Pascal, PascalABC.NET 3 08.06.2010 16:24
Управляющие структуры, процедуры Function и процедуры Sub Natalo4ka Помощь студентам 0 17.05.2010 22:00
Запуск процедуры из процедуры с дополнением 1sal1 Общие вопросы Delphi 3 06.10.2008 21:54