var m,n,p:real; k:integer;begin Write('Введите через пробел начало и конец интервала: '); Read(m,n); p:=1; k:=Trunc(m); if (k mod 2)=0 then Inc(k); { Первое нечетное } n:=Int(n); { целочисленный конец интервала } while k<=n do begin p:=p*k; k:=k+2 end; Writeln('Произведение нечетных на интервале: ',p)end.
Тестовое решение:Введите через пробел начало и конец интервала: -3.8 8.2Произведение нечетных на интервале: 315var m,n,i,j:integer; p:real;begin Write('Введите через пробел целочисленные границы интервала: '); Read(m,n); for i:=m to n do begin p:=1; if i=0 then Writeln('2^0=1') else if i<0 then begin for j:=-1 downto i do p:=p/2; Writeln('2^(',i,')=',p) end else begin for j:=1 to i do p:=p*2; Writeln('2^',i,'=',p) end endend.
Тестовое решение:Введите через пробел целочисленные границы интервала: -5 102^(-5)=0.031252^(-4)=0.06252^(-3)=0.1252^(-2)=0.252^(-1)=0.52^0=12^1=22^2=42^3=82^4=162^5=322^6=642^7=1282^8=2562^9=5122^10=1024