21 div 2=10 mod 7=3 3/3=1 - trunc(0.89)=1-0=1
10+6-4=12
10-7-4=-1
Ошибок тут больше одной.
Во-первых, в операторе вывода стоит вызов функции ups, которой в качестве второго аргумента передается неизвестная переменная a. Если имелся в виду символ "а", его надо было заключить в одинарные кавычки.
Во-вторых, в теле функции ups определяется значение n в цикле. Даже, если искомый символ найден и n получит значение позиции этого символа в слове, то если слово просмотрено не полностью, следующий же проход по циклу снова сбросит n в ноль. Следовательно, эта функция будет выдавать верный результат только если искомая буква - последняя в слове.
var
slovo: string;
i: integer;
function ups(var s: string; ch: char): integer;
var
i, n: integer;
begin
i:=1;
n:=0;
while (i<=length(s)) and (n=0) do
begin
if s[i] = ch then n := i;
i:=i+1
end;
ups:=n
end;
begin
writeln('vvedite slovo');
readln(slovo); writeln('N = ', ups(slovo, 'a'));
end.
Замечание: в языке Паскаль имеется функция Pos, производящая поиск подстроки в строке...
Ответ:
не знаю как решается логическим уравнением,но логично рассуждая у меня выходит так,что Дима 1, Нина 2, Катя 3, Миша 4.
function R(x, y: integer):integer; begin result := x*(y – 1); end;
function F(x, y: integer):integer begin Result := R(x + 1, y) - R(x, y - 1); end;
function G(x, y:integer):integer begin Result := F(x, R(x, y)); end;
begin
writeln( G(3, 3) );
end.
Uses crt;
const
n:integer = 10;
var b: array[1..n] of byte;
a:integer;
d:byte;
begin
for d:=1 to 10 do b[d]:= random(10)+1;d:=1;
a:=1;
while (d < n) do begin a:=a*b[d]; d:=d+2;
end;
writeln(a);
<span>end.</span>