Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
0 / 0 / 0
Регистрация: 05.09.2014
Сообщений: 38

Переделать процедуры в функции

31.03.2015, 21:55. Показов 2193. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Можно ли переделать процедуры в функцию?

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
uses crt;
const n=4;
type mtr=array[1..n,1..n] of integer;
procedure vvod(var a:mtr);
var i,j:byte;
begin
for i:=1 to n do
for j:=1 to n do
a[i,j]:=1+random(10);
end;
procedure vyvod(a:mtr;s:string);
var i,j:byte;
begin
writeln(s);
for i:=1 to n do
 begin
  for j:=1 to n do
  write(a[i,j]:4);
  writeln;
 end;
end;
procedure umn(a,b:mtr;var c:mtr);
var i,j,k:byte;
begin
for i:=1 to n do
for j:=1 to n do
 begin
  c[i,j]:=0;
  for k:=1 to n do
  c[i,j]:=c[i,j]+a[i,k]*b[k,j];
 end;
end;
var a,b,c:mtr;
begin
randomize;
vvod(a);
vvod(b);
vyvod(a,'Матрица А');
vyvod(b,'Матрица B');
umn(a,b,c);
vyvod(c,'Матрица C=А*B');
end.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
31.03.2015, 21:55
Ответы с готовыми решениями:

Переделать на процедуры или функции
дан двумерный массив. Сформировать результирующий одномерный массив, элементами которого являются строчные суммы. Вот сама задача, помогите...

Переделать программу, используя подпрограммы (процедуры и функции)
Напечатать все слова, отличные от последнего слова. Для каждого слова указать сколько раз оно встречается в полученном предложении....

Переделать программы под процедуры или функции
Помогите переделать вот эти программы под процедуры или функции. 1) Program qq; var a: array of real; i,n:integer; s,sred:real; ...

5
72 / 72 / 64
Регистрация: 30.04.2014
Сообщений: 214
01.04.2015, 10:52
В Вашем случае нужно использовать ИМЕННО процедуры, так как функция в Паскале может возвращать только одно значение
0
 Аватар для APALoff
1648 / 1077 / 1081
Регистрация: 03.07.2013
Сообщений: 4,507
01.04.2015, 11:24
Цитата Сообщение от PogrKup Посмотреть сообщение
так как функция в Паскале может возвращать только одно значение
Бред!

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
Var t : Integer;
 
Function Sum(a,b : Integer; Var ss : integer) : Boolean;
Begin
  ss:=a+b;
  Sum:=a>b;
end;
 
Begin
  Writeln('3 > 7 ',Sum(3,7,t));
  Writeln('3+7 = ',t);
end.
0
72 / 72 / 64
Регистрация: 30.04.2014
Сообщений: 214
01.04.2015, 11:34
Цитата Сообщение от APALoff Посмотреть сообщение
Бред!
Я имелл виду, что ИМЕННО САМА ФУНКЦИЯ может иметь ОДНО значение. А параметров возвращать может много. Но тогда какой смыл для данной программы в использовании функции, если процедура прекрасно справляется со своей задачей?! Это будет просто извращение
0
Супер-модератор
Эксперт функциональных языков программированияЭксперт Python
 Аватар для Catstail
38193 / 21126 / 4309
Регистрация: 12.02.2012
Сообщений: 34,732
Записей в блоге: 14
01.04.2015, 12:07
Цитата Сообщение от APALoff Посмотреть сообщение
Бред!
- излишне категорично. Функция возвращает одно (но это не значит "одно и то же") значение. При умножении матриц функция должна просто возвращать массив. Это должно быть допустимо.
0
Почетный модератор
 Аватар для Puporev
64315 / 47611 / 32743
Регистрация: 18.05.2008
Сообщений: 115,167
01.04.2015, 12:37
Лучший ответ Сообщение было отмечено rodan1217 как решение

Решение

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
uses crt;
const n=4;
type mtr=array[1..n,1..n] of integer;
function matrix:mtr;
var i,j:byte;
begin
for i:=1 to n do
 begin
  for j:=1 to n do
   begin
    result[i,j]:=1+random(10);
    write(result[i,j]:4);
   end;
  writeln;
 end;
end;
function umn(a,b:mtr):mtr;
var i,j,k:byte;
begin
for i:=1 to n do
for j:=1 to n do
 begin
  result[i,j]:=0;
  for k:=1 to n do
  result[i,j]:=result[i,j]+a[i,k]*b[k,j];
 end;
for i:=1 to n do
 begin
  for j:=1 to n do
  write(result[i,j]:4);
  writeln;
 end;
end;
var a,b,c:mtr;
begin
randomize;
writeln('Матрица А');
a:=matrix;
writeln('Матрица B');
b:=matrix;
writeln('Матрица C=A*B');
c:=umn(a,b);
end.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
01.04.2015, 12:37
Помогаю со студенческими работами здесь

Переделать программу чтоб в ней были процедуры и функции
очень надо, помогите , в ней сейчас нет процедур и функций ,но надо переделать чтоб они там были, очень срочно , заранее спасибо ...

Переделать из процедуры в функцию
var d1,d2:real; x,y,d:real; procedure dl (x,y:real;var d:real); begin d:=sqrt(sqr(x)+sqr(y)); end; begin writeln('Введите...

Переделать задачу в процедуры
uses crt; var a: array of integer; b: array of real; c: array of real; n,i,j,k:integer; Begin clrscr; randomize; ...

Переделать программу через процедуры
Переделать программу через процедуры!!! Случайным образом заполнить матрицу символов 6х6. Сформировать вектор: если в строке матрицы...

Переделать программу с использованием процедуры
Помогите...нужно в этом коде использовать где-нибудь "процедуру"! var A : array of byte; M, i : byte; begin randomize;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Krabik - рыболовный бот для WoW 3.3.5a
AmbA 21.03.2026
без регистрации и смс. Это не торговля, приложение не содержит рекламы. Выполняет свою непосредственную задачу - автоматизацию рыбалки в WoW - и ничего более. Однако если админы будут против -. . .
Программный отбор значения справочника
Maks 21.03.2026
Процедура ВодителиНачалоВыбора(Элемент, ДанныеВыбора, ВыборДобавлением, СтандартнаяОбработка) / / Отключаем стандартную обработку (стандартное открытие формы выбора без фильтров) . . .
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru