USES Crt; const N=10; VAR A: array[1..N] of integer;k:integer; Function FUN: integer; ...

0 голосов
210 просмотров

USES Crt;
const
N=10;
VAR
A: array[1..N] of integer;k:integer;
Function FUN: integer;
Var i,M:integer;
Begin
writeln('Введите число M=');
readln(M);
k:=0;
for i:=1 to N do
if A[i] FUN:=k;
End;

Procedure SOSTMAS;
Var i: integer;
Begin
for i:=1 to N do begin
A[i]:=Random(199)-100;
write(A[i]:5);
end;
Writeln;
end;
BEGIN
SOSTMAS; Writeln(FUN);что то неправильно говорят массив

Информатика (25 баллов) | 210 просмотров
0

Вы лучше условие для начала киньте.

0

а ничего что процедура должна находится перед основной программой?

0

не говоря о бардаке в коде вообще

0

и вообще где весь код программы?

Дан 1 ответ
0 голосов
Правильный ответ

Const
    N = 10;

var
    A: array[1..N] of integer;

function Fun: integer;
var
    i, M: integer;
begin
    writeln('Введите число M=');
    readln(M);
    for i := 1 to N do
        if A[i] = M then Fun := i;
end;

procedure CreateMassive;
var
    i: integer;
begin
    for i := 1 to N do
    begin
        A[i] := Random(199) - 100;
        write(A[i],' ');
    end;
    Writeln;
end;

begin
    CreateMassive;
    Writeln(Fun);
end.

вот вариант исправления который работает, хотя конечно не факт что он работает как там кто-то задумывал)))
не понятно было назначение функции Fun потому она делает поиск номера элемента равного М
а вообще глобальные переменные это зло. Так что проектирование тут в корне не верно

(53.1k баллов)