Форум: "Прочее";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
Внизделфи Найти похожие ветки
← →
Antonio (2008-03-29 13:05) [0]Вроде просто а как лучше незнаю
Определить, сколько четырехзначных чисел делится на 13 и при этом не делится на 2, 3 и 5.
← →
<code> (2008-03-29 13:13) [1]
procedure TForm1.FormCreate(Sender: TObject);
var i,k:integer;
begin
k:=0;
for i:=1000 to 9999 do
begin
if (i mod 13 = 0) AND (i mod 2 <> 0) AND (i mod 3 <> 0)AND (i mod 5 <> 0) then k:=k+1;
end;
Caption:=IntToStr(k);
end;
← →
Palladin © (2008-03-29 14:09) [2]
TForm1.FormCreate(Sender: TObject);
var i,k,n:integer;
begin
k:=0;
for i:=0 to 346 do
begin
n:=i*2+77;
if ((n mod 3)<>0) and ((n mod 5)<>0) then inc(k);
end;
Caption:=IntToStr(k);
end;
← →
korneley © (2008-03-29 15:33) [3]Если уж извращаться, то по-полной :)
function GetSpecCount(Start, Stop: integer): integer;
var i, n, sum, ThousandCnt, Last3Fig:integer;
s : string;
begin
Result := 0;
if Stop >= Start then begin
for i := Start to Stop do
begin
s := inttostr(i);
sum := 0;
for n := 1 to length(s) do
sum := sum + {strtoint(s[n]);// или + }ord(s[n]) - $30;
case length(s) of
1..3:
begin
ThousandCnt := 0;
Last3Fig := strtoint(s);
end;
else
ThousandCnt := strtoint(copy(s, 1, length(s) - 3));
Last3Fig := strtoint(copy(s, length(s) - 2, 3));
end;
if (((ThousandCnt - Last3Fig) mod 13) = 0)
and ((strtoint(copy(s, length(s), 1)) mod 2) <> 0)
and ((sum mod 3) <> 0)
and (copy(s, length(s), 1) <> "0")
and (copy(s, length(s), 1) <> "5")
then Result := Result + 1;
end;
end;
end;
Зато всегда доказать можно, что знакомы, стало быть, с признаками делимости ;)
← →
MBo © (2008-03-29 15:40) [4]
var
i, Cnt: Integer;
begin
Cnt := 0;
i := ((1000 + 25) div 26) * 26 - 13;
if i < 1000 then
i := i + 26;
while i < 10000 do begin
if ((i mod 3) <> 0) and ((i mod 5) <> 0) then
Inc(Cnt);
i := i + 26;
end;
Caption := IntToStr(Cnt);
P.S. Задачу можно решить и без циклов.
← →
Alien1769 © (2008-03-29 15:45) [5]
> P.S. Задачу можно решить и без циклов.
На уровне машинных кодов не получится :))
← →
MBo © (2008-03-29 15:47) [6]>На уровне машинных кодов не получится :))
а и не надо
например, чисел из опред. диапазона, которые делятся на 2 или 3, но не делятся на 6, будет P(2) + P(3) - P(6)
← →
Alien1769 © (2008-03-29 15:52) [7]
> Antonio (29.03.08 13:05)
> Вроде просто а как лучше незнаю
Слово лучше скорее всего лишнее, имхо
зы. Тебе дали на выбор, если хоть с одним вариантом будет понимание кода - хорошо
Страницы: 1 вся ветка
Форум: "Прочее";
Текущий архив: 2008.05.11;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.007 c