Ну вот первая.
Некоторые пояснения.
1. Вы не указали тип Паскаля. Если это мерзкий АВС, то LongInt замените на Integer.
2. Обратите внимание, что сравнение произведения нечетных цифр следует производить НЕ с исходным числом, а с некоторым другим наперед заданным числом. В программе оно обозначено С.
3. Отрабатывается ситуация, когда введенное число вообще не содержит нечетных цифр. Для этого в функцию введен булевский флажок b, и в конце программы в этом случае выдается сообщение о том, что нечетных цифр нет.
Код:
Var
A,C:LongInt;
Function Odd_Dig(R:LongInt):LongInt;
var
i,m:Byte;
S,P,d:LongInt;
b:boolean;
begin
S:=R;
P:=1;
b:=false;
Repeat
d:=S div 10;
m:=S mod 10;
if (m mod 2)=1 then
begin
P:=P*m;
b:=true;
end;
S:=d;
Until d=0;
If b then Odd_Dig:=P else Odd_Dig:=0;
end;
Begin
Write('A = ');
Readln(A);
Write('C = ');
Readln(C);
If Odd_Dig(A)=0 then
Writeln('No odd digits!')
else
Writeln(Odd_Dig(A)<C);
Readln
End.