program practice2;
uses crt;
const m:array[1..8] of byte=(6,4,2,4,2,4,6,2);
var j:byte;
l:boolean;
a,n,i,k:int64;
begin
readln(n);
a:=1;
i:=0;
l:=true;
while l do
for j:=1 to 8 do
begin
a:=a+m[j];
i:=i+1;
if a>n then
begin
l:=false;
k:=i;
break;
end;
end;
writeln(k);
end.
Задача на доработку
---
листинг:
Код:
навскидку, хоть и задание с подвохом
for i:=0 to n do begin
if (i mod 2<>0)and(i mod 3<>0)and(i mod 5<>0) then writeln(i);
end;
помогите сделать плиз
[highlight=pascal]
function CountIntegers(n: integer): integer;
var
r: integer;
i: integer;
begin
r := 0;
for i := 7 to n do
begin
if (i mod 2 > 0) and (i mod 3 > 0) and (i mod 5 > 0) then
begin
inc(r);
end;
Result := r;
end;
[/highlight]
кой что доделать конечно надо, но это уж сам ;)
зы Исправил. вместо массива с этими числами, подсчитал их кол-во
А делается это так:
Код:
var n,m.i:integer;
begin
read(n);
m:=0;
for i=1 to n do
if (i mod 2<>0)and(i mod 3<>0)and(i mod 5<>0) then
inc(m);
writeln(m);
end.
begin
read(n);
m:=0;
for i=1 to n do
if (i mod 2<>0)and(i mod 3<>0)and(i mod 5<>0) then
inc(m);
writeln(m);
end.