1потяг виїхав з п. а в п. б. через деякий час 2 потяг виїхав в тому самому напрямі. швидкість на 30км/год більша. дослідіть на якій відстані від п. а до п. б 2 потяг дожене 1. exel файлом
Var a,k,m,min,i,flag:integer; begin readln(a); m:=a; {сохраняю введенное значение и считаю кол-во цифр в числе} while m >0 do begin m:=m div 10; k:=k+1; end; min:=9; {записываю самое большое нечетное число} {в цикле отсекаю последнюю цифру в числе и проверяю ее на нечетность. Если она нечетная и меньше числа min, то сохраняю ее в min и присваиваю переменной Flag 1. Если к концу программы в переменной flag будет 1, значит хотя бы одна нечетная цифра в числе была, если flag=0 тогда в числе нет нечетных} for i:=1 to k do begin if (a mod 10<=min)and(a mod 2<>0) then begin min:=a mod 10; flag:=1; end; a:=a div 10; end; if flag=0 then writeln('нет нечетных') else writeln(min); end.
Артур1807
31.03.2020
Var dv,tr,pt,dv1,tr1,pt1,dv2,tr2,pt2 :real;
procedure nod( var dv,tr,pt,dv1,tr1,pt1,dv2,tr2,pt2 :real; ); var a:array[1..6] of real; i : integer; begin dv1:=100; tr1:=100; pt1:=100; for i:= low(a) to high (a) do begin readln(a[i]); repeat if( (a[i] mod 2) =0) then begin a[i]:=a[i]/2; dv:=dv+1; end else if( ( a[i] mod 3)=0) then begin a[i]:=a[i]/3; tr:=tr+1; end else if ( ( a[i] mod 5)=0) then begin a[i]:=a[i]/5; pt:=pt+1; end;
untill(a=1); if dvif trif ptdv:=0; tr:=0; pt:=0; end; if dv1>0 then dv2:=dv1*2 else dv2:=1; if tr1>0 then tr2:=tr1*3 else tr2:=1; if pt1>0 then pt2:=pt1*5 else pt2:=1; nod:=dv2*tr2*pt2; writeln(nod); end; begin nod( dv,tr,pt,dv1,tr1,pt1,dv2,tr2,pt2 ); end.
end;
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
1потяг виїхав з п. а в п. б. через деякий час 2 потяг виїхав в тому самому напрямі. швидкість на 30км/год більша. дослідіть на якій відстані від п. а до п. б 2 потяг дожене 1. exel файлом
a,k,m,min,i,flag:integer;
begin
readln(a);
m:=a; {сохраняю введенное значение и считаю кол-во цифр в числе}
while m >0 do
begin
m:=m div 10;
k:=k+1;
end;
min:=9; {записываю самое большое нечетное число}
{в цикле отсекаю последнюю цифру в числе и проверяю ее на нечетность. Если она нечетная и меньше числа min, то сохраняю ее в min и присваиваю переменной Flag 1. Если к концу программы в переменной flag будет 1, значит хотя бы одна нечетная цифра в числе была, если flag=0 тогда в числе нет нечетных}
for i:=1 to k do
begin
if (a mod 10<=min)and(a mod 2<>0) then
begin
min:=a mod 10;
flag:=1;
end;
a:=a div 10;
end;
if flag=0 then
writeln('нет нечетных')
else
writeln(min);
end.