Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
3 / 3 / 0
Регистрация: 10.03.2013
Сообщений: 37
1

Исправьте ошибку в модуле

06.04.2014, 20:17. Показов 447. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите исправить ошибку в модуле и в программе, использующей модуль.
И как вообще правильно прикрутить модуль к программе? В первый раз с ними работаю, написал вроде нормально, компилируется модуль, но программа выдаёт ошибку "ошибочная ссылка на процедуру или функцию" на строке a:=summa(c); в программе

Задача - вывести массив одномерный, в нём посчитать сумму чисел больших 25 и заменить числа больше 100 на 100 и меньше 0 на 0
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
unit mod1;
interface
         const n=25;
         type massiv=array[1..n] of real;
         procedure vvod (var z:massiv);
         procedure vyvod (z:massiv);
         procedure summa (z:massiv; k:real);
         procedure zamena (z:massiv);
implementation
procedure vvod (var z:massiv);
    var i:integer;
    begin
         for i:=1 to n do
             z[i]:=round(201*random-50);
    end;
procedure vyvod (z:massiv);
    var i:integer;
    begin
         for i:=1 to n do
             write(z[i]:4:0);
    end;
procedure summa (z:massiv; k:real);
    var i:integer;
    begin
         k:=0;
         for i:=1 to n do
             if z[i]>=25 then
             k:=k+z[i];
    end;
procedure zamena (z:massiv);
    var i:integer;
    begin
          for i:=1 to n do
              if z[i]>100 then z[i]:=100
                 else if z[i]<0 then z[i]:=0;
end;
end.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
program kontrol;
uses crt,mod1;
var
   c:massiv;
   a:real;
begin
     clrscr;
     writeln('Ishodnyy massiv:');
     vvod(c);
     vyvod(c);
     writeln('Summa chisel bolshih 25:');
     a:=summa(c);
     writeln('izmenennyi massiv:');
     zamena(c);
     vyvod(c);
     readln;
end.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.04.2014, 20:17
Ответы с готовыми решениями:

Ищу ошибку с модуле
Здравствуйте. Помогите найти ошибку в модуле. Суть программы : 2 процедуры отвечают за ввод матриц,...

Исправьте ошибку.(ошибка 0)
помоги найти ошибку.Возникла после переделки программы в модули uses op, obrabotka; var a:mas;...

Исправьте ошибку в программе
program control; const nmax=20; mmax=20; type vector=array of integer; ...

Исправьте ошибку в графике
Исправьте пожалуйста ошибку в графике. Он когда строит, пишет &quot;ошибка проверки диапазона&quot;. uses...

1
Почетный модератор
64300 / 47595 / 32743
Регистрация: 18.05.2008
Сообщений: 115,181
07.04.2014, 07:31 2
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
unit mod1;
interface
const n=25;
type massiv=array[1..n] of real;
procedure vvod (var z:massiv);
procedure vyvod (z:massiv);
function summa (z:massiv):real;
procedure zamena (var z:massiv);
implementation
procedure vvod (var z:massiv);
var i:integer;
begin
for i:=1 to n do
z[i]:=-50+201*random;
end;
procedure vyvod (z:massiv);
var i:integer;
begin
for i:=1 to n do
write(z[i]:4:0);
writeln
end;
function summa (z:massiv):real;
var i:integer;
    k:real;
begin
k:=0;
for i:=1 to n do
if z[i]>25 then k:=k+z[i];
summa:=k
end;
procedure zamena (var z:massiv);
var i:integer;
begin
for i:=1 to n do
if z[i]>100 then z[i]:=100
else if z[i]<0 then z[i]:=0;
end;
end.
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
program kontrol;
uses crt,mod1;
var c:massiv;
begin
clrscr;
writeln('Ishodnyy massiv:');
vvod(c);
vyvod(c);
writeln('Summa chisel bolshih 25=',summa(c):0:0);
writeln('izmenennyi massiv:');
zamena(c);
vyvod(c);
readln;
end.
0
07.04.2014, 07:31
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
07.04.2014, 07:31
Помогаю со студенческими работами здесь

Исправьте ошибку в коде
Program mn_3; uses crt; type let=' а'..'я'; var sogl:set of let; text: set of char; c:char;...

Исправьте ошибку в графике
Исправьте плиз, не пойму где ошибка uses graph; const x1=-10; x2=10; function...

Исправьте ошибку вычислений
PROGRAM VAR3b; VAR x,b,z:real; begin WRITELN ('enter x'); READLN(x); ...

GoTo в модуле выдаёт ошибку
goto в модуле выдаёт ошибку. Я показал это на примере. Подскажите пожалуйста, в чём дело


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru