Можно и так, без массива, в принципе так меньше кода) Одно и тоже, ток без массива А вот первый код явно не верный, запусти его и тот что ты последний написал, тот что как у меня, но без массива и вот результаты будут 100% разные.. //хотя наверно я ошибаюсь, потому что в уме начал считать и получается верно) Я сразу и не понял, твоего алгоритма
Странно, у меня выдает одно и тоже Первый код был точно неверен, я там немного сбился с мысл в одном месте - он одно не трехзначное захватывал.
поэтому у меня и получились разные результаты Зато теперь у парня есть несколько вариантов реализации данной ему задачи Интересно, что ему препод сказал, когда он принёс задачу написанную на делфи
ну помогите же кто нибудь... Складіть програму для обчислення суми всіх трьохзначних чисел, кратних 25. rus:Составьте программу для вычисления суммы всех трехзначительных чисел, кратных 25. НА ПАСКАЛЕ,плз.
TPAXTOP, вот, набросал в блокноте. Можно было бы конечно более оптимально решить задачу, но думаю тебе и так пойдет)) Code: program name_of_program; var i,s:integer; begin for i:=100 to 999 do begin if i mod 25=0 then s:=s+i; end; writeln(s); readln; end.
TPAXTOP, тебе же написали целых два способа: с циклом while и с циклом for: Хотя, имхо, второй алгоритм (с циклом for) можно немного доработать: вместо того, чтобы делать 900 сравнений можно посчитать количество чисел делящихся на 25 в пределах от 100 (включительно) до 999, а потом запустить цикл for с таким количеством итераций (фактически, полученный алгоритм очень похож на первый): Code: Program For25Extra; uses CRT; var Result: integer; count: integer; number: integer; i: integer; begin clrscr; count := (999 div 25) - (99 div 25); Result := 0; Number := 100; for i := 1 to count do begin inc(Result, Number); inc(Number, 25); end; writeln('Result: ', Result); readln; end.
Подскажите пожалуйста кто знает как это сделать нужно подключится к почтовому серверу и проверить есть ли письма от определённого отправителя. Заранее спасибо
как правильно зацепица (залогиница) на сайте wap.my.mail.ru сначало делаю post, потом get... но ничего не выходит... снифер пока ничего внятного не выдал.
нужно сделать 10 потоков, и контроллирующий поток 10 потоков имеют 1 и тот же код, каждый поток при необходимости выполнения какого-то действия отсылает данные на контроллирующийся поток, в котором все потоки становятся в очередь на выполнение, после того как контроллирующий поток обработал запрос за выполнение 1 действия, он отдаёт команду на запрашивающий поток, что можно продолжать работу т.е. все потоки становятся в очередь в контр поток, и только когда будет обработано действие контр поток возобнавляет работу того потока для которого это действие выполнялось. ещё такой вопрос: если программа будет содержать много потоков, нагрузка процессора будет распределяться по всем ядрам или нет?
ничего. неотвечает. читай msdn Нужно в цикле запускать нужное кол-во раз Вообще на форуме куча примеров связанных с прогопоточностью. ВОт и возьми какойить один из них
Подскажите!! как распарсить страницу одноклассников для определения ошибки при входе: "Профиль временно заблокирован. Попробуйте войти еще раз через 30 минут." Пишу так if Pos('Профиль временно заблокирован.',b.lock) >0 then begin .... но пос ничего не находит.... как исправить? и что искать при такое ошибке??
Димон, глянь Delphi Russian Knowledge Base , там подборка статей по делфи, про изменение StrinGrida туева хуча статей, как и про другие компоненты... Вопрос Как по четырем вводимым точкам определить, выпуклый ли четырехугольник? (не пересекаются ли его стороны) (Pascal/Delphi)
отвечу как по математике,нарыл теорему: "Сумма углов опуклого n-угольника = 180градусов*(n-2)" в нашем случае n=4,то есть сумма углов =360,осталось только проверить сумму углов.их ты можешь найти через точки,а именно подсчитать расстояние между двумя точками для всех сторон четырехугольника,а потом брать 3 смежные точки,соединять их в треугольник и находить необходимый угол четырехугольника,ну а дальше сумма....осталось только вывести окончательную формулу и забить все в делфи\паскаль кто знает алгоритм попроще пишите
Тоже нужно было нечто подобное, покопался нашел у себя прогу, переписал немного под твои нужды, вот: Code: function Sign(const v:Integer):shortint; begin Result:=0;if v<0 then Result:=-1 else if v>0 then Result:=1;end; ... function WhichSide(p,q,r:TPoint):Integer;begin Result:=Sign((p.x-q.x)*(q.y-r.y)-(p.y-q.y)*(q.x-r.x));end; ... function Compare(p,q:TPoint):Integer;begin if p.x<q.x then Result:=-1 else if p.x>q.x then Result:=1 else if p.y<q.y then Result:=-1 else if p.y>q.y then Result:=1 else Result:=0;end; ... function Vypukl(p: array of TPoint):boolean; var i,n,d1,d2,s1,s2,c:Integer;p1,p2,p3:tPoint; function CheckTriple:Boolean;begin Result:=True; d1:=compare(p2,p3);if d1=-d2 then inc(c);d2:=d1; s1:=WhichSide(p1,p2,p3);if s1<>0 then begin if s2=-s1 then begin Result:=False;Exit;end;s2:=s1;end;end; begin result:=true;s2:=0;c:=0; n:=Length(p);d2:=Compare(p[0],p[1]); for i:=0 to High(p)do begin p1:=p[i]; p2:=p[(i+1)mod n];p3:=p[(i+2)mod n]; if not CheckTriple then begin Result:=false;Exit;end; end;end; ... var i:tImage; ms:tLabel; ... procedure TForm1.iClick(Sender: TObject); var p:array of tPoint; k,m:byte; begin m:=4; setlength(p,m); for k:=0 to m-1 do begin p[k].X:=random(i.Width-10)+5; p[k].Y:=random(i.Height-10)+5; end; i.Canvas.FillRect(i.ClientRect); i.Canvas.Polygon(p); ms.Caption:='Не выпуклый!'; if Vypukl(p)then ms.Caption:='Выпуклый'; end; работает, но не 100%но =( З.Ы. код определения выпуклости я откуда-то скопипастил (непомню уже) и переделал под свои нужды
элементарно... - рассматриваешь все пары вершин - для каждой пары составляешь уравнение прямой, проходящей через эти две точки (запрос в гугле: "уравнение прямой через две точки") - подставляешь координаты двух других точек в уравнение прямой. Если значения одинакового знака, значит точки лежат по одну сторону от прямой. - если для всех пар точек получилось, что другие точки лежат по одну сторону, значит четырехугольник выпуклый
При компиляции появляется ошибка вида: [Fatal Error] Could not create output file 'C:\(путь)\Project1.exe В чем может быть проблема?..