Лучше сразу говорить какой язык проходите, а то вдруг общественность догадается неправильно. Если вдруг паскаль, то я бы попробовал написать так:
первая программа
program pr1 ; var i , n : integer ; var s : real ; begin n := 0 ; { количество найденных чётных чисел } s := 1 ; { получившееся произведение } for i := 15 to 30 do if i mod 2 = 0 then begin n := n + 1 ; s := s * i ; end ; writeln ('kolicestvo chetnyh chisel=' , n , ' proizvedenie=' , s ) ; end.
(Если я правильно догадался, что добуток значит произведение. Произведение такого кол-ва чисел будет слишком большим для разрядности целого числа, поэтому придётся использовать вещественное, а результат из-за этого получится приближённым).
вторая
program pr2 ; var i : integer ; var k : real ; begin k = 0 ; for i := 6 downto 1 do k := k + cos ( 1. / i ) ; writeln ('K=' , k:10:8 ) ; end.
(странный ряд. Чаще дают по-другому, типа 1/cos(x), ну что есть - то есть. Тогда всё ок).
1)var ar:array of integer; max,min,s,i,n,maxi,mini:integer; begin; randomize; max:=-1; min:=101; readln(n); setlength(ar,n+1); writeln('Array:'); for i:=1 to n do begin; ar[i]:=random(100); write(ar[i]:4); if max<ar[i] then begin; max:=ar[i]; maxi:=i; end; if min>ar[i] then begin; min:=ar[i]; mini:=i; end; s:=s+ar[i]; end; ar[maxi]:=s; ar[mini]:=s; writeln; writeln('Final array:'); for i:=1 to n do write(ar[i]:4); end. 2)var ar:array of integer; k,h,i,s:integer; f:real; begin; randomize; readln(h); setlength(ar,h+1); writeln('Array:'); for i:=1 to h do begin; ar[i]:=random(100)-50; write(ar[i]:4); if (ar[i]>0) and (ar[i] mod 2=0) then begin; inc(k); s:=s+ar[i]; end; end; f:=s/k; writeln; writeln('Result:',f); end.
function DifNum(a: integer): integer; var se: set of integer; i: integer; begin while a > 0 do begin if a mod 10 in se then begin DifNum := 0; exit; end else include(se, a mod 10); a := a div 10; end; DifNum := 1; end;
begin read(l, r); for i := l to r do counter += DifNum(i); writeln(counter); end.
//Альтернативное решение на Паскале
Var l,r:integer; begin read(l,r); writeln(range(l,r).where(x -> x.tostring.toarray.distinct.count=length(x.tostring)).Count); end.
первая программа
program pr1 ;
var i , n : integer ;
var s : real ;
begin
n := 0 ; { количество найденных чётных чисел }
s := 1 ; { получившееся произведение }
for i := 15 to 30 do
if i mod 2 = 0 then begin
n := n + 1 ;
s := s * i ;
end ;
writeln ('kolicestvo chetnyh chisel=' , n , ' proizvedenie=' , s ) ;
end.
(Если я правильно догадался, что добуток значит произведение. Произведение такого кол-ва чисел будет слишком большим для разрядности целого числа, поэтому придётся использовать вещественное, а результат из-за этого получится приближённым).
вторая
program pr2 ;
var i : integer ;
var k : real ;
begin
k = 0 ;
for i := 6 downto 1 do
k := k + cos ( 1. / i ) ;
writeln ('K=' , k:10:8 ) ;
end.
(странный ряд. Чаще дают по-другому, типа 1/cos(x), ну что есть - то есть. Тогда всё ок).