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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2016, 19:11   #1
maxwelln1
Пользователь
 
Регистрация: 07.10.2016
Сообщений: 23
По умолчанию Разбить код на функции.

Код:
function reverce(s: string): string; 
var a:array[1..15,1..15]of Integer;
i,j,n:Integer;
begin
Randomize;
Write('Порядок квадратной матрицы:');
Readln(n);
Writeln('Исходная матрица:');
for i:=1 to n do
begin
for j:=1 to n do
begin
a[i,j]:=Random(100)-50;
Write(a[i,j]:4);
end;
Writeln;
end;
Writeln('Полученная матрица:');
for i:=1 to n do 
begin
a[i,i]:=a[i,n-i+1];
for j:=1 to n do Write(a[i,j]:4);
Writeln;
end;
Readln;
end.
Разбить код на функции. Спасибо БОЛЬШОЕ
maxwelln1 вне форума Ответить с цитированием
Старый 30.10.2016, 14:44   #2
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

Код:
type
   arr=array[1..15,1..15]of Integer;

procedure Vvod(var a:arr; var n:integer);
var i,j:integer;
begin
   Randomize;
   Write('Порядок квадратной матрицы:');
   Readln(n);
   Writeln('Исходная матрица:');
   for i:=1 to n do
   begin
      for j:=1 to n do
      begin
         a[i,j]:=Random(100)-50;
         Write(a[i,j]:4);
      end;
      Writeln;
   end;
end;

procedure reverce(a:arr; n:integer);
var i,j:integer;
begin
   Writeln('Полученная матрица:');
   for i:=1 to n do
   begin
      a[i,i]:=a[i,n-i+1];
      for j:=1 to n do Write(a[i,j]:4);
      Writeln;
   end;
end;

var a:arr;
    n:Integer;
begin
   Vvod(a,n);
   reverce(a,n);
   Readln;
end.
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Старый 30.10.2016, 16:23   #3
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

newerow1989, ну, может быть и сойдёт, а может быть, и нет, ведь в паскале процедуры и функции описываются по разному...
Serge_Bliznykov вне форума Ответить с цитированием
Старый 30.10.2016, 16:38   #4
newerow1989
Я самый любопытный
Участник клуба
 
Аватар для newerow1989
 
Регистрация: 24.07.2012
Сообщений: 1,949
По умолчанию

А что результатом функций будет???
С запрограммированным приветом, Неверов Евгений!
Сайт: http://newerow1989.ru
[Паскаль] [Delphi]
newerow1989 вне форума Ответить с цитированием
Старый 30.10.2016, 19:48   #5
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от newerow1989 Посмотреть сообщение
А что результатом функций будет???
хороший вопрос.
во-первых, автор топика зачем-то описал функцию
Цитата:
Код:
function reverce(s: string): string;
может быть, ему достаточно, если будет одна функция реверсиющая строку массива или весь массив.

во-вторых, функция может, например, возвращать результат - сам массив:
Код:
function GenerateArray(var n:integer):arr;
var i,j:integer;
begin
   Randomize;
   Write('Порядок квадратной матрицы:');
   Readln(n);
   Writeln('Исходная матрица:');
   for i:=1 to n do
   begin
      for j:=1 to n do
      begin
         GenerateArray[i,j]:=Random(100)-50;
         Write(GenerateArray[i,j]:4);
      end;
      Writeln;
   end;
end;
в-третьих, в особо тяжёлых случаях, когда функция явно ничего не должна возвращать (ну, например, процедура ВывестиМассивНаЭкран())
преподаватель упёрся и требует, чтобы процедура была функцией,
но тогда можно пойти на формальное выполнение требований, ну, например, можно сделать процедуру функцией и возвращать true (признак успешного вывод массива на экран )

тут уже всё зависит от того, что требует преподаватель и что знает/умеет делать ученик. В конце концов, это его задача и ему её сдавать.
Serge_Bliznykov вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите разбить код на отдельные функции max.sokol Помощь студентам 9 03.01.2016 15:07
разбить код на функции dissable1 Помощь студентам 0 24.12.2014 18:01
как разбить код на 2 части курбанниязов Помощь студентам 4 09.06.2014 13:19
Разбить код на классы gessi Фриланс 6 17.11.2010 10:58
Разбить на функции dma Помощь студентам 1 10.03.2009 07:21