Аватар для Krolichek
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 32

Процедуры

23.02.2010, 15:59. Показов 902. Ответов 17
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый вечер,посмотрите пожалуйста программу,мне ее нужно с процедурами написать,явно есть косяки,но я их устранить не пойму как,вот исходный код:

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
44
Program kate;
type MATR=array[1..100,1..100] of real;
var A:MATR;
M,N: integer;
procedure VVOD(var MAS:MATR;M1,N1:integer);
 var i,j:integer;
 begin(*nachalo procedury VVOD*)
  writeln('vvodi dannie massiva');
   for i:=1 to M1 do
   for j:=1 to N1 do
begin
 write('element[',i,',',j,'=]);
  read(M1[i],N1[j]);
procedure VIVOD(var MAS:MATR;M1,N1:integer);
  var i,j:integer;
begin(*nachalo procedury VIVOD*)
 for i:=1 to M1 do
begin
 for j:=1 to N1 do
  write(MAS[i,j]:4,'_ _');
   writeln;
end;
end;(*konec procedury VIVODA*)
 procedure OBR(var MAS:MATR;M1,N1:integer);
  var i,j,k:integer;
   obrab:=real;
begin
 obrab:=MAS[1,1]
  for i:=1 to M1 do
   for j:=1 to N1 do
    k[i,m-j+1]:=A[i,j]
end;
begin(*nachalo osnovnoy programmy kate*)
 write('vvedi kol-vo strok=');
  readln(M);
   writeln('vvedi kol-vo stolbcov=');
    readln(N);
VVOD(A,M,N);
writeln('ishod.massiv');
VIVOD(A,M,N);
obrab(A,M,N);
writeln('poluch.massiv');
VIVOD(A,M,N)
end.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
23.02.2010, 15:59
Ответы с готовыми решениями:

Процедуры и функции. Процедуры с числовыми параметрами
Описать процедуру RectPS (x1, y1, x2, y2, P, S), вычисляющую периметр P и площадь S прямоугольника со сторонами, параллельными осям...

Процедуры и функции: решить через процедуры S=a*x+b*y+c*z.
Пожалуста помогите решить через процедуры S=a*x+b*y+c*z.

процедуры
решите пожалуйста Точки А(5.I,2.9,-3.7),В(0.8,-1.5,3.9),С(2.2,0.8,5.4) и D(-3.3,2.5,0.7) принадлежат поверхностям шаров с центром в...

17
 Аватар для Splitter
203 / 145 / 16
Регистрация: 13.01.2009
Сообщений: 554
23.02.2010, 16:11
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
44
45
46
47
48
49
50
Program kate;
type MATR=array[1..100,1..100] of real;
var A:MATR;
M,N: integer;
 
procedure VVOD(var MAS:MATR;M1,N1:integer);
 var i,j:integer;
 begin(*nachalo procedury VVOD*)
  writeln('vvodi dannie massiva');
   for i:=1 to M1 do
   for j:=1 to N1 do
begin
 write('element[',i,',',j,'=]);
  read(M1[i],N1[j]);
end;
end;
 
procedure VIVOD(var MAS:MATR;M1,N1:integer);
  var i,j:integer;
begin(*nachalo procedury VIVOD*)
 for i:=1 to M1 do
begin
 for j:=1 to N1 do
  write(MAS[i,j]:4,'_ _');
   writeln;
end;
end;(*konec procedury VIVODA*)
 
procedure OBR(var MAS:MATR;M1,N1:integer);
  var i,j,k:integer;
   obrab:=real;
begin
 obrab:=MAS[1,1]
  for i:=1 to M1 do
   for j:=1 to N1 do
    k[i,m-j+1]:=A[i,j]
end;
 
begin(*nachalo osnovnoy programmy kate*)
 write('vvedi kol-vo strok=');
  readln(M);
   writeln('vvedi kol-vo stolbcov=');
    readln(N);
VVOD(A,M,N);
writeln('ishod.massiv');
VIVOD(A,M,N);
obrab(A,M,N);
writeln('poluch.massiv');
VIVOD(A,M,N)
end.
[/QUOTE]

end для процедуры vvod забыли, а так вроде нормально, где ошибка выдается?
0
 Аватар для Krolichek
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 32
23.02.2010, 16:40  [ТС]
ошибку 8 выдает в 12 строке,в результате прога должна мне менять в массивах местами столбцы первый с последним,2-й с предпоследним и т.д.
0
 Аватар для Splitter
203 / 145 / 16
Регистрация: 13.01.2009
Сообщений: 554
23.02.2010, 17:29
так, M1 и N1 - у нас integer, что такое M1[i] и N1[j] в коде?
0
 Аватар для Kizer
80 / 82 / 36
Регистрация: 20.11.2009
Сообщений: 326
23.02.2010, 18:31
Splitter, там не только с этими переменными чехарда, но и с "к" в какой-то из следующих процедур...

Задание нужно.

в частности, что это вот такое за процедура? :
Pascal
1
2
3
4
5
6
7
8
9
procedure OBR(var MAS:MATR;M1,N1:integer);
  var i,j,k:integer;
   obrab:=real;
begin
 obrab:=MAS[1,1]
  for i:=1 to M1 do
   for j:=1 to N1 do
    k[i,m-j+1]:=A[i,j]
end;
0
#define книжный_червь Я
 Аватар для ][акер
185 / 96 / 21
Регистрация: 30.01.2010
Сообщений: 780
23.02.2010, 18:35
Цитата Сообщение от Splitter Посмотреть сообщение
write('element[',i,',',j,'=]);
Не хватает кавычки!
0
 Аватар для Kizer
80 / 82 / 36
Регистрация: 20.11.2009
Сообщений: 326
23.02.2010, 18:36
][акер, поверьте, там не только в кавычках дело...
0
 Аватар для Krolichek
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 32
23.02.2010, 18:44  [ТС]
Вот задание:получить матрицу [B ij], i,j=1 to M do из матрицы [A i,j],i, j=1 путем перестановки столбцов-первого с последним,второго с предпоследним и т.д.
Это задание,а вот программа изначальная:
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
Program laba4;
var
a,b:array[1..100,1..100] of integer;
 i,j,m:integer;
begin
 write('m=');
  readln(m);
   for i:=1 to m do
    for j:=1 to m do
begin
 write('vvedi a[',i,',',j,']=');
  readln(a[i,j]);
 end;
 for i:=1 to m do
begin
 for j:=1 to m do
  write(a[i,j]:4,' ');
   writeln;
end;
writeln;
 for i:=1 to m do
  for j:=1 to m do
  b[i,m-j+1]:=a[i,j];
 
 for i:=1 to m do
begin
 for j:=1 to m do
  write(b[i,j],' ');
   writeln;
end;
readln;
end.
Но теперь мне ее надо с процедурами написать,подобно как раз этой моей "чехарде",как вы и сказали,только я не особо понимаю эти процедуры,поэтому и спросила,что не так,а "к"-это переходная ячейка,вот.
0
#define книжный_червь Я
 Аватар для ][акер
185 / 96 / 21
Регистрация: 30.01.2010
Сообщений: 780
23.02.2010, 18:48
Kizer, я знаю! Мне лень всё проверять. Я так! Бегло всё просмотрел!
0
 Аватар для Krolichek
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 32
23.02.2010, 18:52  [ТС]
скажите тогда мне,потому что мне завтра надо,а я,мягко говоря,не вкупаю(((.Только не ругайтесь,я реально печенька в этом(
0
#define книжный_червь Я
 Аватар для ][акер
185 / 96 / 21
Регистрация: 30.01.2010
Сообщений: 780
23.02.2010, 19:04
Ладна!
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
44
45
46
47
Program kate;
type MATR=array[1..100,1..100] of real;
var A:MATR;
M,N: integer;
procedure VVOD(var MAS:MATR;M1,N1:integer);
 var i,j:integer;
 begin(*nachalo procedury VVOD*)
  writeln('vvodi dannie massiva');
   for i:=1 to M1 do
   for j:=1 to N1 do
begin
 write('element[',i,',',j,'=]');
  read(MAS[i,j]);
end;
end;
procedure VIVOD(var MAS:MATR;M1,N1:integer);
  var i,j:integer;
begin(*nachalo procedury VIVOD*)
 for i:=1 to M1 do
begin
 for j:=1 to N1 do
  write(MAS[i,j]:4,'_ _');
   writeln;
end;
end;(*konec procedury VIVODA*)
 procedure OBR(var MAS:MATR;M1,N1:integer);
  var i,j:integer;
  k,a: array [1..100,1..100] of integer;
   obrab:real;
begin
 obrab:=MAS[1,1];
  for i:=1 to M1 do
   for j:=1 to N1 do
    k[i,m-j+1]:=A[i,j]
end;
begin(*nachalo osnovnoy programmy kate*)
 write('vvedi kol-vo strok=');
  readln(M);
   writeln('vvedi kol-vo stolbcov=');
    readln(N);
VVOD(A,M,N);
writeln('ishod.massiv');
VIVOD(A,M,N);
obr(A,M,N);
writeln('poluch.massiv');
VIVOD(A,M,N)
end.
0
Почетный модератор
 Аватар для Puporev
64312 / 47609 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
23.02.2010, 19:10
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
44
45
46
47
48
49
Program laba4;
uses crt;
const nmx=20;
type matr=array[1..nmx,1..nmx] of integer;
procedure Vvod(var mt:matr;var x:byte);
var i,j:byte;
begin
repeat
write('Razmer matricy do ',nmx,' = ');
readln(x);
until x in [1..nmx];
writeln('Vvedite elementy matricy:');
for i:=1 to x do
for j:=1 to x do
 begin
  write('vvedi el[',i,',',j,']=');
  readln(mt[i,j]);
 end;
clrscr;
end;
procedure Vyvod(var mt:matr;x:byte;c:char);
var i,j:byte;
begin
writeln('Matrica ',c);
for i:=1 to x do
 begin
  for j:=1 to x do
  write(mt[i,j]:4,' ');
  writeln;
 end;
writeln;
end;
procedure NewMatr(m1:matr;x:byte; var m2:matr);
var i,j:byte;
begin
for i:=1 to x do
for j:=1 to x do
m2[i,j]:=m1[i,x-j+1];
end;
var a,b:matr;
    n:byte;
begin
clrscr;
Vvod(a,n);
Vyvod(a,n,'A');
NewMatr(a,n,b);
Vyvod(b,n,'B');
readln
end.
0
#define книжный_червь Я
 Аватар для ][акер
185 / 96 / 21
Регистрация: 30.01.2010
Сообщений: 780
23.02.2010, 19:16
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
44
45
46
47
Program kate;
type MATR=array[1..100,1..100] of real;
var A:MATR;
M,N: integer;
procedure VVOD(var MAS:MATR;M1,N1:integer);
 var i,j:integer;
 begin(*nachalo procedury VVOD*)
  writeln('vvodi dannie massiva');
   for i:=1 to M1 do
   for j:=1 to N1 do
begin
 write('element[',i,',',j,'=]');
  read(MAS[i,j]);
end;
end;
procedure VIVOD(var MAS:MATR;M1,N1:integer);
  var i,j:integer;
begin(*nachalo procedury VIVOD*)
 for i:=1 to M1 do
begin
 for j:=1 to N1 do
  write(MAS[i,j]:4,'_ _');
   writeln;
end;
end;(*konec procedury VIVODA*)
 procedure OBR(var MAS:MATR;M1,N1:integer);
  var i,j:integer;
  k,a: array [1..100,1..100] of integer;
   obrab:real;
begin
 obrab:=MAS[1,1];
  for i:=1 to M1 do
   for j:=1 to N1 do
    k[i,m-j+1]:=A[i,j]
end;
begin(*nachalo osnovnoy programmy kate*)
 write('vvedi kol-vo strok=');
  readln(M);
   writeln('vvedi kol-vo stolbcov=');
    readln(N);
VVOD(A,M,N);
writeln('ishod.massiv');
VIVOD(A,M,N);
obr(A,M,N);
writeln('poluch.massiv');
VIVOD(A,M,N)
end.
0
 Аватар для Krolichek
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 32
23.02.2010, 20:13  [ТС]
Ошибку пишет 202(((
0
Почетный модератор
 Аватар для Puporev
64312 / 47609 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
23.02.2010, 20:18
Krolichek, Возьмите мой код или уменьшите объявленный размер матриц, 2 матрицы размером 100х100 для Паскаля это много. Тем более что я не думаю что Вы будете вбивать с клавы 10000 элементов.
0
 Аватар для Krolichek
0 / 0 / 0
Регистрация: 15.11.2009
Сообщений: 32
23.02.2010, 20:22  [ТС]
Просто дело в том,что те данные или библиотеки,точно не помню,как они называются,типа uses и clrscr мы не проходили,хотя я знаю,что это очистка экрана,у нас докапываются до оформления,поэтому так,как написал Хакер,так мне и нужно,но только там ошибку 202 выдает при вбивке результатов,вот в чем дело
0
Почетный модератор
 Аватар для Puporev
64312 / 47609 / 32742
Регистрация: 18.05.2008
Сообщений: 115,181
23.02.2010, 20:40
Krolichek, Вы читать умеете? Я же написал, уменьшите объявленный размер матриц, памяти не хватает для 20 000 элементов.
А убрать из кода 2 строки, это видимо Вам вообще не под силу.
0
#define книжный_червь Я
 Аватар для ][акер
185 / 96 / 21
Регистрация: 30.01.2010
Сообщений: 780
24.02.2010, 00:50
А да! Блин, иногда забываю про память! Конечно, надо уменьшить массив!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
24.02.2010, 00:50
Помогаю со студенческими работами здесь

Процедуры
Описать процедуру NMin(A,N,NMin) находящую номер минимального элемента вещественного массива А размера N. Выходной параметр целого типа:...

Процедуры!!
1. Заданы три матрицы А(первого порядка), В(второго порядка) и С(третьего порядка). Выяснить и напечатать, сколько из них являются...

Процедуры
Помогите пожалуйста составить процедуру, исх данными которой являются матрица A(NxN). Результаты процедуру указаны ниже. Для проверки...

Процедуры
Даны действительные числа a, b, c, d. Вычислить: y=(pa+pb+pc+pd)/4, если px=4{x}^{4}+3{x}^{3}+2{x}^{2}+x+0,5.

процедуры
1)Дано натуральное число n и действительное число x.Вычислить S=sinx+sinsinx+...+sinsin...sinx(n раз) 2)Дано целое число n>0.Найти...


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

Или воспользуйтесь поиском по форуму:
18
Ответ Создать тему
Опции темы

Новые блоги и статьи
Интеграция Hangfire с RabbitMQ в проектах C#.NET
stackOverflow 18.04.2025
Разработка современных . NET-приложений часто требует выполнения задач "за кулисами". Это может быть отправка email-уведомлений, генерация отчётов, обработка загруженных файлов или синхронизация. . .
Построение эффективных запросов в микросервисной архитектуре: Стратегии и практики
ArchitectMsa 18.04.2025
Микросервисная архитектура принесла с собой много преимуществ — возможность независимого масштабирования сервисов, технологическую гибкость и четкое разграничение ответственности. Но как часто бывает. . .
Префабы в Unity: Использование, хранение, управление
GameUnited 18.04.2025
Префабы — один из краеугольных элементов разработки игр в Unity, представляющий собой шаблоны объектов, которые можно многократно использовать в различных сценах. Они позволяют создавать составные. . .
RabbitMQ как шина данных в интеграционных решениях на C# (с MassTransit)
stackOverflow 18.04.2025
Современный бизнес опирается на множество специализированных программных систем, каждая из которых заточена под решение конкретных задач. CRM управляет отношениями с клиентами, ERP контролирует. . .
Типы в TypeScript
run.dev 18.04.2025
TypeScript представляет собой мощное расширение JavaScript, которое добавляет статическую типизацию в этот динамический язык. В JavaScript, где переменная может свободно менять тип в процессе. . .
Погружение в Kafka: Концепции и примеры на C# с ASP.NET Core
stackOverflow 18.04.2025
Apache Kafka изменила подход к обработке данных в распределенных системах. Эта платформа потоковой передачи данных выходит далеко за рамки обычной шины сообщений, предлагая мощные возможности,. . .
Коммуникация в реальном времени с SignalR в C# на примере создания чата
UnmanagedCoder 17.04.2025
Современный веб стремительно эволюционирует от статичных страниц к динамичным приложениям, где пользователи ожидают мгновенной реакции на свои действия. Представим, что вы отправляете сообщение. . .
Реализация CQRS с MediatR на C# .NET
stackOverflow 17.04.2025
Современная разработка программного обеспечения постоянно ищет пути повышения эффективности организации кода. Архитектурные паттерны появляются, эволюционируют, и те, что проявляют свою. . .
Verilog и интеллектуальная собственность - "глазами" обученной LM модели.
Hrethgir 17.04.2025
В сети встречаются участники, заявляющие что код на Verilog ни о чём не говорит. Но вот патентная практика на самом деле показывает обратное ими утверждаемому. То-есть код на Verilog включают в. . .
Свап-файл дополнительно к разделу (если вдруг не хватает или не создан)
jigi33 17.04.2025
ПОДКЛЮЧЕНИЕ ДОПОЛНИТЕЛЬНОГО SWAP ПРОСТРАНСТВА, Т. О. , РАСШИРЕНИЕ ЕГО РАЗМЕРА В Linux можно использовать как раздел подкачки (swap), так и файл подкачки (swap-файл). Чтобы создать swap-файл вместо. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru