PDA

View Full Version : Borland Pascal 7.0


Omegas
07-07-2006, 10:35
Кто чё интересного написал на Pascal бросайте сюда ↓↓↓↓↓↓↓↓↓↓↓↓

Omegas
07-07-2006, 10:39
прикольная анимашка написана на паскале правда уже в .exe

__________
удалил ехе, прикрепил скрин архива James Bond

Magnetto
07-07-2006, 10:40
Кто чё интересного написал на Pascal бросайте сюда ↓↓↓↓↓↓↓↓↓↓↓↓
форум не файлообменник...

есть много красивых работ....больше всего анимашок...но искать их впадло..

Omegas
07-07-2006, 10:42
а ты попробуй включить эту программу она не тока анимация после запуска случается что-то интересное...

James Bond
07-07-2006, 10:47
а ты попробуй включить эту программу она не тока анимация после запуска случается что-то интересное...
зупустил

смотрим вложение

результат Omegas забанен на 10 дней

кто хочет выложить работы, вылаживае текст програмы, всё другое будет оценено как вредящее ПО, за это бдем банить

Elic
07-07-2006, 20:14
Кто чё интересного написал на Pascal бросайте сюдаУгу. Работы на Delphi принимаешь?

.ShaDe
26-10-2006, 16:25
Народ помогите!!! Плиз... Оч. надо!!! Сказали до завтра сделать на паскале ЭТО... Помогите, кто как может... не знаю что делать!
1. Надо создать прогу
Три точки на площади координат ( A (x;y) B(x;y) C(x;y) ). отпределить лежат ли они на одной прямой.

2. Прога
Що за натуральним N знаходить кількість дальників його фактрайла (или как то так, вообщем что б при вводе "5" прога отвечала "1-2-3-4-5"(всемто - знак умножения))
:eek:

не знаю что делать... помгите плиз... :cry:

Magnetto
26-10-2006, 16:29
Народ помогите!!! Плиз... Оч. надо!!! Сказали до завтра сделать на паскале ЭТО... Помогите, кто как может... не знаю что делать!
1. Надо создать прогу
Три точки на площади координат ( A (x;y) B(x;y) C(x;y) ). отпределить лежат ли они на одной прямой.

2. Прога
Що за натуральним N знаходить кількість дальників його фактрайла (или как то так, вообщем что б при вводе "5" прога отвечала "1-2-3-4-5"(всемто - знак умножения))
:eek:

не знаю что делать... помгите плиз... :cry:
1.
берем точку а и точку б...получается прямая...берем угол абс где б - вершына...
если угол равен 180\360 градусов знач они лежат на одной прямой


2. что такое фактрайл ?

насчет первой проги...очень интересная...сегодня после восьми могу ней занятся если нада

.ShaDe
26-10-2006, 16:43
1.
прямая должна обизательно быть перепндикулырко осям координат или произвольная проямая
2. что такое фактрайл ?

насчет первой проги...очень интересная...сегодня после восьми могу ней занятся если нада

вот тема для размышлений....берем точку а и точку б...получается прямая...берем угол абс где б - вершына...
если угол равен 180\360 градусов знач они лежат на одной промой

1. там ничё не сказано. сто процентов то что проще

2. с фактрайлом, я так понял, это когда при вводе числа тебе выводится это число + все числа которые стоят перед ним.

Если тебе не сложно, помоги плиз. Мне вообще нету к кому обратится...

И мЕНЯ заставляют делать ТАКОЕ в 10 классе!!!
блин. я веб-дизайнер, 3-д моделлер, Флешер, но НЕ программист... они этого не понимают... и собрались отправлять меня на оллимпиаду... :cry:

Magnetto
26-10-2006, 16:46
1. там ничё не сказано. сто процентов то что проще

2. с фактрайлом, я так понял, это когда при вводе числа тебе выводится это число + все числа которые стоят перед ним.

Если тебе не сложно, помоги плиз. Мне вообще нету к кому обратится...

И мЕНЯ заставляют делать ТАКОЕ в 10 классе!!!
блин. я веб-дизайнер, 3-д моделлер, Флешер, но НЕ программист... они этого не понимают... и собрались отправлять меня на оллимпиаду... :cry:
нарисовал первую задачку на листочке...походу она делается за 20-30 минут...

а со второй задачей...гыгы...если фактрайл это то что ты сказал то задача - проще не куда
а что за олимпиада?

Magnetto
26-10-2006, 16:48
к полуночи если не забуду - отправлю решение задач на емейл(который ты напишешь мне в пс)
или сюда кину

з.ы обязательно писать на делфи?...

.ShaDe
26-10-2006, 16:51
нарисовал первую задачку на листочке...походу она делается за 20-30 минут...

а со второй задачей...гыгы...если фактрайл это то что ты сказал то задача - проще не куда
а что за олимпиада?

Помоги, если можешь, с обоими :uups: :)

олимпиада... если чесно... фиг его знает... вроде школьная... в школе у нас вряд-ли программеры найдутся :)

я говорю я ламер в прогроаммировании, а мне говрят "а тебя не спрашивают" :lol:
оллимпиада ещё вчера должна была быть, а тут говорят что вроде как перенесли...

Подозрительно как-то...

Сорри я ушел. вернусь в 10 гдето

Cronus
26-10-2006, 17:31
Народ помогите!!! Плиз... Оч. надо!!! Сказали до завтра сделать на паскале ЭТО... Помогите, кто как может... не знаю что делать!
1. Надо создать прогу
Три точки на площади координат ( A (x;y) B(x;y) C(x;y) ). отпределить лежат ли они на одной прямой.

2. Прога
Що за натуральним N знаходить кількість дальників його фактрайла (или как то так, вообщем что б при вводе "5" прога отвечала "1-2-3-4-5"(всемто - знак умножения))
:eek:

не знаю что делать... помгите плиз... :cry:
1. Создаешь уравнения прямой АВ и прямой ВС (где А, В, С - твои точки) в виде y=kx+b. Проверяешь, если k1=k2 и b1=b2 => точки лежат на одной прямой.
Формула уравнения прямой за двумя точками:
(x-x1)/(x2-x1)=(y-y1)/(y2-y1), где А=(x1, y1), B=(x2, y2). Покрути на листике, привиди к виду y=kx+b, получи формулы для k и b. Дальше - см. выше.
2. Вообще-то речь идет о факториале (обозн. N!, N!=1*2*3*...*N).
Делаешь всего лишь проверку в цикле:
for i:=1 to N do
if N_fact mod i = 0 then dilnik:=dilnik+1;

где N_fact - это факториал данного числа, dilnik - кол-во делителей (ответ задачи). Надеюсь, процедуру для поиска факториала напишешь сам.

Лосёнок
26-10-2006, 21:47
Прикольная прога сам написал! за пустите кто-то на паскале зацените...
program xxx;
uses crt;
var i:integer;
x:text;
f:boolean;
Begin
Assign(x, 'www.bak');
ReWrite(x);
f:=true;
while f=true do
WriteLn(x, 'be or not to be');
Close(x);
readln;
End.

Лосёнок
26-10-2006, 21:51
rogram Star;
uses crt,graph;
const topstar: array[1..18]of integer=(300,125,325,225,425,250,325,275,300,375,2 75,275,180,250,275,225,300,125);
var i,j,grdr,grmd: integer;
begin
grdr:=detect;
initgraph(grdr,grmd,'');
settextstyle(DefaultFont,0,1);
outtextxy(140,150,'STAR');
settextstyle(DefaultFont,1,4);
outtextxy(500,150,'STAR');
repeat
{ j:=imod12;}
setfillstyle(random(13),random(13));
fillpoly(9,topstar);
{ inc(i);}
delay(500);
until keypressed;
closegraph;
end.

Magnetto
26-10-2006, 22:05
1. Создаешь уравнения прямой АВ и прямой ВС (где А, В, С - твои точки) в виде y=kx+b. Проверяешь, если k1=k2 и b1=b2 => точки лежат на одной прямой.
Формула уравнения прямой за двумя точками:
(x-x1)/(x2-x1)=(y-y1)/(y2-y1), где А=(x1, y1), B=(x2, y2). Покрути на листике, привиди к виду y=kx+b, получи формулы для k и b. Дальше - см. выше.
2. Вообще-то речь идет о факториале (обозн. N!, N!=1*2*3*...*N).
Делаешь всего лишь проверку в цикле:
for i:=1 to N do
if N_fact mod i = 0 then dilnik:=dilnik+1;

где N_fact - это факториал данного числа, dilnik - кол-во делителей (ответ задачи). Надеюсь, процедуру для поиска факториала напишешь сам.
1. мне кажется все таки с углом проще...да и более надежно...так как на системе коордынат могут быть и нули и минусовые значения
расскажи плиз а факториале а то я чуть не понял

воть...мне даже не пришлось писать что то =)
только вот я забыл функцию которая возвращает значение угла...
щас буду юзать паскалевский хелп =)

*Barthez
26-10-2006, 22:10
как можна декомпилировать из exe-шника в иходный код *.pas ???

Лосёнок
26-10-2006, 22:12
как можна декомпилировать из exe-шника в иходный код *.pas ???
вроде никак!

Magnetto
26-10-2006, 22:13
как можна декомпилировать из exe-шника в иходный код *.pas ???
нет...

.ShaDe
26-10-2006, 22:15
расскажи плиз а факториале а то я чуть не понял



Вводится любое число, например 8.
А програма в ответ выдает 1*2*3*4*5*6*7*8
Я понимаю это так =)

а с первым согласен :)

*Barthez
26-10-2006, 22:19
нет...
почему же нет...?, какая разница в том, что у меня есть прога exe2dpr которая декомпилирует делфи, нету что-ли аналога для паскаля?

Magnetto
26-10-2006, 22:22
почему же нет...?, какая разница в том, что у меня есть прога exe2dpr которая декомпилирует делфи, нету что-ли аналога для паскаля?
насколько мне известно каждая программа(делфи...С...паскал ) компилируют прогу под тот процессор на котором стоит данная прога....поэтому мне казалось нереальным написать прогу которая будет декомпилировать...
значит ошибался

Magnetto
26-10-2006, 22:24
Вводится любое число, например 8.
А програма в ответ выдает 1*2*3*4*5*6*7*8
Я понимаю это так =)

а с первым согласен :)
обозн. N!, N!=1*2*3*...*N).
Делаешь всего лишь проверку в цикле:
for i:=1 to N do
if N_fact mod i = 0 then dilnik:=dilnik+1;
если верить этому то программа должна вернуть
из восьми 1...2...4...8..все..

.ShaDe
26-10-2006, 22:28
обозн. N!, N!=1*2*3*...*N).
Делаешь всего лишь проверку в цикле:
for i:=1 to N do
if N_fact mod i = 0 then dilnik:=dilnik+1;
если верить этому то программа должна вернуть
из восьми 1...2...4...8..все..
а мож показать пример всего документа? я почти полный 0 :)
знаю что такое begin, program и end :lol:

Magnetto
26-10-2006, 22:35
а мож показать пример всего документа? я почти полный 0 :)
знаю что такое begin, program и end :lol:
стоп...
во второя задаче нам дают какое то число...
нам нужно сначала найти его факториал что равен н!=1*2*3..*н
а потом найти количество делителей данного факториала?
я правильно понял?
если да то щас пару минут

Cappadonna
26-10-2006, 22:36
Program Zadacha;
type
as=array[1..51,1..51]of word;
as1=array[1..1001,1..2]of word;
as2=array[1..1001]of word;
var
n,kol,s:word;
k,kw:word;
R:as1;
A:as;
St,Z:as2;
W,W1:as2;
ans:string;
Procedure vvf;
var
i,t,c,c1:word;
begin
read(k);
i:=1;
c:=1;
c1:=0;
for t:=1 to 51
do Z[t]:=0;
while c<=k
do begin
for t:=1 to 2
do begin
read(R[i,t]);
if (R[i,1]=R[i,2]) and (t=2)
then begin
Z[i]:=Z[i]+1;
i:=i-1;
c1:=c1+1;
end;
end;
i:=i+1;
c:=c+1;
end;
n:=1;
for i:=1 to k
do for t:=1 to 2
do if R[i,t]>n
then n:=R[i,t];
k:=k-c1;
end;
Procedure Matrix;
var
i,t:word;
begin
for i:=1 to n
do for t:=1 to n
do A[i,t]:=0;
for i:=1 to k
do begin
A[R[i,1],R[i,2]]:=1;
A[R[i,2],R[i,1]]:=1;
end;
end;
Procedure Stepeni;
var
t,i,s1:word;
begin
kol:=0;
t:=1;
s:=1;
while (t<=n) and (kol<3)
do begin
s1:=0;
for i:=1 to n
do s1:=A[t,i]+s1;
if s1=0
then kol:=3
else if s1 mod 2=1
then begin
kol:=kol+1;
s:=t;
end;
St[t]:=s1;
t:=t+1;
end;
end;
Procedure Stroyput;
var
C:as2;
d,v,t,la,i1:word;
kol:word;
begin
ans:='no';
kw:=0;
kol:=0;
d:=1;
C[1]:=s;
while (kol<k) and (ans='no')
do begin
v:=C[d];
t:=1;
while (t<=n) and (St[v]>0)
do if A[v,t]=1
then begin
d:=d+1;
C[d]:=t;
A[v,t]:=0;
A[t,v]:=0;
St[v]:=St[v]-1;
St[t]:=St[t]-1;
kol:=kol+1;
v:=t;
t:=1;
end
else t:=t+1;
while (d>0) and (St[C[d]]=0) and (ans='no')
do begin
kw:=kw+1;
W[kw]:=C[d];
la:=0;
i1:=1;
while (i1<=k) and (la=0)
do begin
if ((R[i1,1]=W[kw]) and (R[i1,2]=W[1])) or ((R[i1,1]=W[1]) and (R[i1,2]=W[kw]))
then la:=1;
i1:=i1+1;
end;
if (kw=k) and (la=1)
then begin
ans:='yes';
kw:=kw+1;
W[kw]:=W[1];
end;
d:=d-1;
end;
end;
end;
function Sv(n:byte; A:as):boolean;
var
t,kol,v,d:word;
F,E:as2;
z:boolean;
begin
for t:=1 to n
do F[t]:=0;
E[1]:=n;
F[n]:=1;
d:=1;
kol:=1;
while (d>0) and (kol<n)
do begin
v:=E[d];
t:=1;
while (t<=n) and (kol<n)
do begin
if (F[t]=0) and (A[v,t]=1)
then begin
d:=d+1;
E[d]:=t;
F[t]:=1;
kol:=kol+1;
v:=t;
t:=1;
end
else t:=t+1;
end;
d:=d-1;
end;
if kol=n
then z:=true
else z:=false;
Sv:=z;
end;
Procedure re;
begin
Matrix;
Stepeni;
if kol>2
then ans:='no'
else if Sv(n,A)
then Stroyput
else ans:='no';
end;
Procedure vivf;
var
i,p,q,p1:word;
begin
if ans='no'
then write(-1)
else begin
W1[1]:=W[1];
p:=1;
for i:=2 to kw-1
do begin
p:=p+2;
W1[p-1]:=W[i];
W1[p]:=W[i];
if Z[W1[p]]>0
then begin
p1:=p;
p:=p+Z[W1[p]]*2;
for q:=p1+1 to p
do W1[q]:=W1[p1];
end;
end;
W1[p+1]:=W[kw];
p:=p+1;
for i:=1 to p-1
do write(W1[i],' ');
write(W1[p]);
end;
end;
Begin
vvf;
re;
vivf;
End.

.ShaDe
26-10-2006, 22:38
стоп...
во второя задаче нам дают какое то число...
нам нужно сначала найти его факториал что равен н!=1*2*3..*н
а потом найти количество делителей данного факториала?
я правильно понял?
если да то щас пару минут
ага. похоже на то...

Magnetto
26-10-2006, 22:46
2Cappadonna

Это мне СПАСССИБО БОЛЬШОЕ! Токо как это в паскаль вставить? я копирую. а там оно даже не светит Paste
ггг....
подстулом
ты хоть читал что он там выложил?

.ShaDe
26-10-2006, 22:49
ггг....
подстулом
ты хоть читал что он там выложил?
нифига не понял, если чесно :d

Magnetto
26-10-2006, 22:53
нифига не понял, если чесно :d
так как я не очень раздуплился что такое факториал то фиксить что то не мог по незнанию...
вот сухая программа..написал так как кронус выложил
щас еще первую сааружу...
з.ы буду писать на борланд паскале

Cappadonna
26-10-2006, 22:54
нифига не понял, если чесно :d

Это просто задача с какойто олимпиады)))

.ShaDe
26-10-2006, 22:56
Это просто задача с какойто олимпиады)))
если мне прийдется там такие задачи решать. я сдохну %\ :)

.ShaDe
26-10-2006, 22:58
так как я не очень раздуплился что такое факториал то фиксить что то не мог по незнанию...
вот сухая программа..написал так как кронус выложил
щас еще первую сааружу...
з.ы буду писать на борланд паскале
спасибо. буду тестить :d

.ShaDe
26-10-2006, 23:07
а можно как-то в паскаль с ТХТ скопировать? переписую в ручную. но боюсь что ошибусь :)

Magnetto
26-10-2006, 23:09
а можно как-то в паскаль с ТХТ скопировать? переписую в ручную. но боюсь что ошибусь :)
нет походу...

с первой у меня что то не получается

почему бы просто не убрать тхт в конце файла и открыть его паскалем?

.ShaDe
26-10-2006, 23:13
нет походу...

с первой у меня что то не получается

почему бы просто не убрать тхт в конце файла и открыть его паскалем?
если не выходит. не надо :)
не порти своё личное время... :)
я завтра отморожусь как-нить :d

Спасибо за то что ты уе сделал :) . как теперь это всё откомпилировать, сохранить и запустить? :d

Magnetto
26-10-2006, 23:18
если не выходит. не надо :)
не порти своё личное время... :)
я завтра отморожусь как-нить :d

Спасибо за то что ты уе сделал :) . как теперь это всё откомпилировать, сохранить и запустить? :d
запускаешь Turbo\Borland\Free pascal
копируешь zad2.pas.txt в папку Bin
убираешь из названия файла тхт
в паскале открываешь его...компилираешь..запуска шь

.ShaDe
26-10-2006, 23:20
запускаешь Turbo\Borland\Free pascal
копируешь zad2.pas.txt в папку Bin
убираешь из названия файла тхт
в паскале открываешь его...компилираешь..запуска шь
спасибо :)

ArmHorse
27-10-2006, 11:51
1. мне кажется все таки с углом проще...да и более надежно...так как на системе коордынат могут быть и нули и минусовые значения
расскажи плиз а факториале а то я чуть не понял
Правильнее через уравнение прямой (как говорил Кронус), а не через угол. Хотя работать будет и так и так.

ArmHorse
27-10-2006, 11:53
нифига не понял, если чесно :dНе иди на олимпиаду, скажи, что заболел, даром время потратишь.

.ShaDe
27-10-2006, 13:39
Не иди на олимпиаду, скажи, что заболел, даром время потратишь.
её перенсли на неделю УРА!!!! :d

.ShaDe
27-10-2006, 13:51
2 Magnetto
Спасбо что помог. я принес сегодня. с умным видом дал дискету учителю. вроде все довольны :d

Magnetto
27-10-2006, 14:00
её перенсли на неделю УРА!!!! :d
если переборю свое "впадло" может еще первую допишу

.ShaDe
27-10-2006, 14:07
если переборю свое "впадло" может еще первую допишу
мну так обьястнили что там нужно формулу впихнуть... я её поищу...

Ganriet
27-10-2006, 14:22
мда....
с паскалем я не расставалась аж 4 года.... (ну когда мы его учили в ФМГ :d , с 8 и по 11 класс...)
а написано на нем достаточно прог ;)

SanyaZar
27-10-2006, 20:04
мну так обьястнили что там нужно формулу впихнуть... я её поищу...
Тебе уже дали все формулы! Делай через уравнение прямой... Тебе дело говорят

SanyaZar
27-10-2006, 21:51
To ShaDoWWW

Тебе говорилось
Формула уравнения прямой за двумя точками:
(x-x1)/(x2-x1)=(y-y1)/(y2-y1), где А=(x1, y1), B=(x2, y2).

исходя из этой формулы выводиш (x-x1)(y2-y1) = (y-y1)(x2-x1)
Подставляеш сюда свои точки и сравниваеш две части уравнения.
типа

var
x, x1, x2, y, y1, y2 : integer;
begin
{..здесь вводиш координаты точек А=(x1, y1), B=(x2, y2), C=(x,y) ..}
if ((x-x1)(y2-y1) = (y-y1)(x2-x1)) then write('Отлично!')
else write('Халепа!');
end.

Вот и вся прога...

.ShaDe
27-10-2006, 22:07
Тебе уже дали все формулы! Делай через уравнение прямой... Тебе дело говорят
я знаю :d
всё сохранено и записано. буду работать :)

Rembo
28-10-2006, 10:12
я знаю :d
всё сохранено и записано. буду работать :)
А я примутил прогу "матрица" на паскале.....типо текст зеленій бесконечно бежит как в матрице! :cool: :lol:
кажись в тему сказал..... :rolleyes: :?)

Omegas
28-10-2006, 17:26
Прикольная прога сам написал! за пустите кто-то на паскале зацените...
program xxx;
uses crt;
var i:integer;
x:text;
f:boolean;
Begin
Assign(x, 'www.bak');
ReWrite(x);
f:=true;
while f=true do
WriteLn(x, 'be or not to be');
Close(x);
readln;
End.
Сцука Лосёнок нах стыбзил маю задачу за каторую я бан получал!

Лосёнок
28-10-2006, 17:28
Сцука Лосёнок нах стыбзил маю задачу за каторую я бан получал!
ни чё падовнага

SanyaZar
28-10-2006, 18:50
Сцука Лосёнок нах стыбзил маю задачу за каторую я бан получал!
А ты не видел что там вечный цикл?
Прежде чем запускать читай текст программы.
А если бы там были ассемблерные вставки, тоже запустил бы? Так и винт можно форматнуть, и другой беды наделать...

Лосёнок
28-10-2006, 19:13
А ты не видел что там вечный цикл?
Прежде чем запускать читай текст программы.
А если бы там были ассемблерные вставки, тоже запустил бы? Так и винт можно форматнуть, и другой беды наделать...
не наделаю потому-что задачу сам писал...

SanyaZar
28-10-2006, 19:32
не наделаю потому-что задачу сам писал...
Я о том что нужно просматривать исходник прежде чем компилить и запускать

I am funny
28-10-2006, 21:44
кто то может сказать как в Паскале поменять язык?

Topa
28-10-2006, 21:46
кто то может сказать как в Паскале поменять язык?
Нужен keyrus

I am funny
28-10-2006, 21:48
Нужен keyrus
а еси чуть поподробнее можно.я толкьо учусь :uups:

Topa
28-10-2006, 21:53
а еси чуть поподробнее можно.я толкьо учусь :uups:
http://tpxexe.narod.ru/ruspas.html

I am funny
28-10-2006, 21:56
http://tpxexe.narod.ru/ruspas.html
спасибки :)

Rembo
04-11-2006, 21:39
спасибки :)
Поможіть рішить задачу дуже потрібно точне її розв'язання....

Дві залізниці перетинаються під прямим кутом. Початок координат розташовано в точці їх перетину, а координатні осі співпадають з рельсами. Для запобігання аварій на перехресті чергує диспетчер, але як часто буває, він заснув на робочому місці. У той час два потяги мчали на зустріч один одному по різним коліям. Відомі швидкості поїздів, їх довжини та початкові координати голів поїздів, при чому початкові координати додатні
Визначте чи трапиться зіткнення.

Технічні умови!!!: Програма читає з клавіатури кількість контрольних приладів t (не більше 10). Далі - t груп по 8 дійсних чисел: V1 - швидкысть першого поїзда, V2 - швидкість другого поїзда,L1 - довжина першого поїзда, L2 - довжина другого поїзда, X1 і Y1 - координати "голови" першого поїзда, X2 і Y2 - координати "голови" другого поїзда. Усі числа не перевищують 5000, вводяться в один рядок через пробєл. Програма вводить на екран для кожного тесту 1 , якщо трапилась трагедія, і 0, якщо все минулось добре. Усі числа вводяться в один рядок без пропусків між ними ,а також на початку та в кінці рядка. Якщо голова одного поїзда чиркне "хвіст" іншого, то вважати, що всі відбулись легким переляком , а тому вивести 0.



Допоможіть!!! :cry: :cry: :cry:
Бажано було б побачити готовий текст програми! :uups:

Magnetto
04-11-2006, 22:51
Поможіть рішить задачу дуже потрібно точне її розв'язання....



Допоможіть!!! :cry: :cry: :cry:
Бажано було б побачити готовий текст програми! :uups:
NetOI перший тур перша задача...
:lol:
готову задачу не дам
скажу ідею...
перш за все координати зводь до модуля їх числа
далі знаходь час за який голови поїздів доберуться до перетинку осей(фізика шостий клас) а такой кінці цих поїздів...вони не перетнуться в тому випадку якщо той поїзд час прибуття голови поїзда буде меньшим за другого поїзда і час прибуття кінця першого будет меньшим...якщо часи перетинаются - аварія...кінець першого = початку другого - легка аварія

Rembo
04-11-2006, 23:40
NetOI перший тур перша задача...
:lol:
готову задачу не дам
скажу ідею...
перш за все координати зводь до модуля їх числа
далі знаходь час за який голови поїздів доберуться до перетинку осей(фізика шостий клас) а такой кінці цих поїздів...вони не перетнуться в тому випадку якщо той поїзд час прибуття голови поїзда буде меньшим за другого поїзда і час прибуття кінця першого будет меньшим...якщо часи перетинаются - аварія...кінець першого = початку другого - легка аварія
а звідки ти взнав??? :eek:
з.и шоб не флуд: як у Паскалі модуль позначається? :confused:

Magnetto
04-11-2006, 23:41
а звідки ти взнав??? :eek:
з.и шоб не флуд: як у Паскалі модуль позначається? :confused:
потому що беру участь в даній олімпіаді
не памятаю...а що дуже тяжко зробить так
If число < 0
then число := 0 - число ;
або просто помножити його на мінус один

Rembo
04-11-2006, 23:43
потому що беру участь в даній олімпіаді
Ти ходиш до Григорія Ісаковича??? :eek:

Magnetto
04-11-2006, 23:44
Ти ходиш до Григорія Ісаковича??? :eek:
не тільки до нього =))

Rembo
04-11-2006, 23:45
не тільки до нього =))
а ти сьодні був?За яким компом сидів?Я спочатку за першим....спочатку.... :uups: :mad:

Magnetto
04-11-2006, 23:51
а ти сьодні був?За яким компом сидів?Я спочатку за першим....спочатку.... :uups: :mad:
дай фотку..
я був в самому кінці разом з олегом(Oleg(ator) на форумі)

Rembo
04-11-2006, 23:54
дай фотку..
я був в самому кінці разом з олегом(Oleg(ator) на форумі)
фота десь в галереї.......а я за першим столом біля того пацана який багато гундів на уроці..... :d

Magnetto
04-11-2006, 23:56
фота десь в галереї.......а я за першим столом біля того пацана який багато гундів на уроці..... :d
ну ось...а я деякий час біля тебе сидів =)...такий світер жовтий =)
знайди її плз

Rembo
04-11-2006, 23:57
ну ось...а я деякий час біля тебе сидів =)...такий світер жовтий =)
знайди її плз
світер не жовтий а чорний......це ти мені дискету дав? :)

Magnetto
04-11-2006, 23:59
світер не жовтий а чорний......це ти мені дискету дав? :)
у мене жовтий світер =)
дискети - зло...ніколи їх не вікористовував

Rembo
05-11-2006, 00:03
у мене жовтий світер =)
дискети - зло...ніколи їх не вікористовував
о!щЕ ПИТАННЯ! Що таке в умові "кількіть контрольних прикладів" :confused:
з.ы а завтра будеш? :confused:

Magnetto
05-11-2006, 00:05
о!щЕ ПИТАННЯ! Що таке в умові "кількіть контрольних прикладів" :confused:
з.ы а завтра будеш? :confused:
мені потрібно віддати олегу діски...-> буду...
кількіть контрольних прикладів - кількість прикладів...щоб не запускати програму декілька раз щоб провірити результат це все робиться в одній

Rembo
05-11-2006, 00:09
мені потрібно віддати олегу діски...-> буду...
кількіть контрольних прикладів - кількість прикладів...щоб не запускати програму декілька раз щоб провірити результат це все робиться в одній
І останнє напевно питання:
Ну корочє там є приклад введення
навіщо там точки .....шо воно значить?
ПРиклад:
2 100. 0 1. 0 2.0 2.0 2.0 0.0 0.0 100.0 20.0 20.0 5. 0 5.0 0.0 3.0 4.0 0.0 :confused:

Magnetto
05-11-2006, 00:11
І останнє напевно питання:
Ну корочє там є приклад введення
навіщо там точки .....шо воно значить?
ПРиклад:
2 100. 0 1. 0 2.0 2.0 2.0 0.0 0.0 100.0 20.0 20.0 5. 0 5.0 0.0 3.0 4.0 0.0 :confused:
це означає що деякі числа не є цілими -> краще выкористовувати Real або щось в цьому роді

Rembo
05-11-2006, 00:12
це означає що деякі числа не є цілими -> краще выкористовувати Real або щось в цьому роді
А можна я щас попробую накатати програмку а ти провіриш?Хоть трохи плз! :cry:

Magnetto
05-11-2006, 00:16
А можна я щас попробую накатати програмку а ти провіриш?Хоть трохи плз! :cry:
що тобі мішає провірити на olymp.vinnica.ua ?

Rembo
05-11-2006, 00:18
що тобі мішає провірити на olymp.vinnica.ua ?
так воно ж потім ці бали сохраняє..... :cry:

Magnetto
05-11-2006, 00:25
так воно ж потім ці бали сохраняє..... :cry:
ггг
перший тур закінцився тиждень назад =)))

Rembo
05-11-2006, 12:16
ггг
перший тур закінцився тиждень назад =)))
Ну й добре! :d

Oleg(ator)
05-11-2006, 12:20
так воно ж потім ці бали сохраняє..... :cry:
Кстати там есть такой код учасника PMG17 -анонимно проверять задачи :)
Сам часто ето использую.
Насчет цело численых типов есть еще extended он больше за real но пашет только при директиве $N+ Ctrl+O+O(зажать контр и нажать дважды О) и появится полный список директив если их все выключить прога будет пахать быстрее но если будет R- то если прога виходит за размеры масива то runtime error не вискочит и прога будет пахать дальше.Другие можна посмотреть в помощи если надо

Rembo
05-11-2006, 12:26
Кстати там есть такой код учасника PMG17 -анонимно проверять задачи :)
Сам часто ето использую.
Насчет цело численых типов есть еще extended он больше за real но пашет только при директиве $N+ Ctrl+O+O(зажать контр и нажать дважды О) и появится полный список директив если их все выключить прога будет пахать быстрее но если будет R- то если прога виходит за размеры масива то runtime error не вискочит и прога будет пахать дальше.Другие можна посмотреть в помощи если надо
ааа я не можу цю довбану задачу рішить....дохожу до бегін і все... :lol: :cry:

Oleg(ator)
05-11-2006, 12:31
ааа я не можу цю довбану задачу рішить....дохожу до бегін і все... :lol: :cry:
Ну я тож у меня по ней кажысь 12 балов :lol: :d
Облом

Rembo
05-11-2006, 12:49
це означає що деякі числа не є цілими -> краще выкористовувати Real або щось в цьому роді
(тобто оце все одне число?) Мож розтлумачити шо там в тих цифрах написано??? :confused:

Oleg(ator)
05-11-2006, 13:02
(тобто оце все одне число?) Мож розтлумачити шо там в тих цифрах написано??? :confused:
4.0 - це чотири цілих и нуль десятих :lol:
А смисл їх в умові дивись :cool:

Rembo
05-11-2006, 13:13
4.0 - це чотири цілих и нуль десятих :lol:
А смисл їх в умові дивись :cool:
ааааа шо не так??? :uups: :cry:
program Failure;
var T,v1,v2,l1,l2,x1,y1,x2,y2,q,t1,t2:real;
begin
write ('T,v1,v2,l1,l2,x1,y1,x2,y2,q,t1,t2');
read(T,v1,v2,l1,l2,x1,y1,x2,y2,q,t1,t2);
if q<0
then begin
q:=0-q;
end;
begin
t1=x1/v1
read (t1);
end;


end.

q- це само число

Oleg(ator)
05-11-2006, 13:18
{$N+}
var v1,v2,s1,s2,l1,l2,shit,t1,t2:extended;
t,i:longint;
begin
read(t);
for i:=1 to t do
begin
read(v1,v2,l1,l2,s1,shit,shit,s2);
t1:=s1/v1;
t2:=(s1+l1)/v1;
if ((s2+l2)-(v2*t1))<=0 then write('0')
else
if s2-v2*t2>=0
then write('0')
else write('1');
end;
end.

моя програма ))))

Rembo
05-11-2006, 13:19
{$N+}
var v1,v2,s1,s2,l1,l2,shit,t1,t2:extended;
t,i:longint;
begin
read(t);
for i:=1 to t do
begin
read(v1,v2,l1,l2,s1,shit,shit,s2);
t1:=s1/v1;
t2:=(s1+l1)/v1;
if ((s2+l2)-(v2*t1))<=0 then write('0')
else
if s2-v2*t2>=0
then write('0')
else write('1');
end;
end.

моя програма ))))
ща юуду тестиравать! :d :cool:
спсибо :uups: :)

Oleg(ator)
05-11-2006, 13:23
ща юуду тестиравать! :d :cool:
спсибо :uups: :)

| 89| Кошмелюк Олег | 12 | 20 | 10 | 20 | 20 | 82 |
мои результаты ))

Rembo
05-11-2006, 13:26
ща юуду тестиравать! :d :cool:
спсибо :uups: :)
а шо таке shit? :confused:

Oleg(ator)
05-11-2006, 13:28
а шо таке shit? :confused:
дерьмо- ето shit ненужные даные

Oleg(ator)
05-11-2006, 13:31
Ето мутная задача лутше пул, супернет или дикшонари ))

ArmHorse
06-11-2006, 16:46
(тобто оце все одне число?) Мож розтлумачити шо там в тих цифрах написано??? :confused:Для начала почитай просто книги по программированию и по Паскалю в частности.

Oleg(ator)
06-11-2006, 17:44
Для начала почитай просто книги по программированию и по Паскалю в частности.
Кто как занимается
.Кто-то прочитал синтаксис языка за неделю , а дальше все по хелпу разбирается (кто учит не первый раз язык прогамирования), а кто годами ходит на кружки по програмированию :)
Ето всегда так сам на Раскаль ходил 3 года было такое :d .
В учебе нужна книжка и ее не всегда может заменит учитель :yes:

ArmHorse
06-11-2006, 23:10
Кто как занимается
.Кто-то прочитал синтаксис языка за неделю , а дальше все по хелпу разбирается (кто учит не первый раз язык прогамирования), а кто годами ходит на кружки по програмированию :)
Ето всегда так сам на Раскаль ходил 3 года было такое :d .
В учебе нужна книжка и ее не всегда может заменит учитель :yes:Синтаксис языка это 1% от того, что называют программированием. Это алфавит.
Остальное это методы, подходы и стандартные приёмы для решения определённого круга задач. В хелпе языка описан синтаксис и элементарные приёмы. Нормальный учитель преподаёт методы и подходы, глупый - преподаёт синтаксис конкретного языка.

*Barthez
13-11-2006, 17:30
как вывести строку с показателем степени?
например: а в степени 2

Magnetto
13-11-2006, 18:38
как вывести строку с показателем степени?
например: а в степени 2
посмотри таблицу символов..
нужно строго чтоб была маленькая циферка рядом с числом?..может просто написать "а в степени н"

Oleg(ator)
13-11-2006, 19:29
Кто-то мне НЕТ-ОІ кинет 2 тур??

Oleg(ator)
13-11-2006, 19:32
как вывести строку с показателем степени?
например: а в степени 2
ну часто используют такое обзначение а^2(а в квадрате)

Oleg(ator)
13-11-2006, 19:44
посмотри таблицу символов..
нужно строго чтоб была маленькая циферка рядом с числом?..может просто написать "а в степени н"
смотри в досе(паскале) только 255 символов а не так как в винде

Magnetto
15-11-2006, 20:19
кто мне напомнит как с помощью рекурсии перевести десятичное число в двуичный код? :)

ArmHorse
15-11-2006, 22:02
кто мне напомнит как с помощью рекурсии перевести десятичное число в двуичный код? :)При помощи побитового сдвига вправо и побитового умножения на маску.

Magnetto
15-11-2006, 22:53
При помощи побитового сдвига вправо и побитового умножения на маску.
это мне известно...
я непомню именно как правильно его закодировать в паскаль

ArmHorse
16-11-2006, 00:39
это мне известно...
я непомню именно как правильно его закодировать в паскальЕсли всё известно, то в чём проблема?

ИМХО рекурсия для такой задачи нафиК не нужна. Но если нужно имеено с рекурсией, то вот один из возможных вариантов. На оптимальность не претендую.

Program test;
uses crt;
var i : integer;
chislo : integer;
arr : array [1..16] of byte;
n : integer;

procedure recur( b : integer; var n :integer);
var j : integer;
begin
if (b = 0)
then exit;
j := b shr 1;
n := n+1;
arr[n] := b mod 2;
recur(j,n);
end;

Begin
clrscr;
chislo := 8;
n := 0;
recur(chislo, n);
for i:=n downto 1 do
write(arr[i]);
repeat until keypressed;
End.


Название топика о Паскале 7.0, у меня 7.1, и если кто-то захочет использовать операторы побитового сдвига для LongInt в Паскале 7.0 - он будет приятно удивлён их некорректной работой, поэтому вот фикс для тех, кто увлекается сдвигами :)
http://pascal.sources.ru/faq/shifterr.htm

ЗЫ. Что значит "непомню именно как правильно его закодировать"? Ты запоминаешь программы?

ЗЫЫ. Как вариант можно двигать число побитово влево, а не вправо, будет больше операций, но не нужно будет переворачивать массив.

Magnetto
16-11-2006, 15:10
Если всё известно, то в чём проблема?

ИМХО рекурсия для такой задачи нафиК не нужна. Но если нужно имеено с рекурсией, то вот один из возможных вариантов. На оптимальность не претендую.


Название топика о Паскале 7.0, у меня 7.1, и если кто-то захочет использовать операторы побитового сдвига для LongInt в Паскале 7.0 - он будет приятно удивлён их некорректной работой, поэтому вот фикс для тех, кто увлекается сдвигами :)
http://pascal.sources.ru/faq/shifterr.htm

ЗЫ. Что значит "непомню именно как правильно его закодировать"? Ты запоминаешь программы?

ЗЫЫ. Как вариант можно двигать число побитово влево, а не вправо, будет больше операций, но не нужно будет переворачивать массив.
так вот прикол в том что я не очень хорошо понимаю эту самую рекурсию...а в задаче главное поместится в 1 секунду...где число может принимать значение до одного милиарда...
в данной задаче рекурсия самое быстрое ее решение...вот поэтому я и попросил именно ее напомнить
последний вариант не проходит так как это лишнии операции - лишнейй время на их выполнение

ArmHorse
16-11-2006, 20:58
так вот прикол в том что я не очень хорошо понимаю эту самую рекурсию...а в задаче главное поместится в 1 секунду...где число может принимать значение до одного милиарда...
в данной задаче рекурсия самое быстрое ее решение...вот поэтому я и попросил именно ее напомнить
последний вариант не проходит так как это лишнии операции - лишнейй время на их выполнениеНе убивай мой мозг, ты хочешь сказать, что за 1 секунду эта программа (естесственное, если integer заменить на LongInt ) не переведёт значение до миллиарда в двоичную форму? Возьми засеки время и будешь удивлён, сдвиг влево/вправо это одна из самых быстрых операций, по идее он занимает один такт.

Почему ты решил, что рекурсия позволяет получить самое быстрое решение из возможных?

:)

Oleg(ator)
17-11-2006, 12:28
Не убивай мой мозг, ты хочешь сказать, что за 1 секунду эта программа (естесственное, если integer заменить на LongInt ) не переведёт значение до миллиарда в двоичную форму? Возьми засеки время и будешь удивлён, сдвиг влево/вправо это одна из самых быстрых операций, по идее он занимает один такт.

Почему ты решил, что рекурсия позволяет получить самое быстрое решение из возможных?

:)
рекурсия дает одно из самых красивых(бывает и быстрых) решений и для большых вариантов не подходит часто

ArmHorse
17-11-2006, 22:48
рекурсия дает одно из самых красивых(бывает и быстрых) решений и для большых вариантов не подходит частоЕсли ты о рекурсии в целом, то её избегают если это только можно, так как она ест много ресурсов и по времени в большинстве случаев сводится к почти полному перебору, хотя, согласен, иногда рекурсия даёт хороший результат.

Но покажи мне красивое и быстрое решение задачи о переводе в двоичную систему.

Cronus
18-11-2006, 19:53
Если ты о рекурсии в целом, то её избегают если это только можно, так как она ест много ресурсов и по времени в большинстве случаев сводится к почти полному перебору, хотя, согласен, иногда рекурсия даёт хороший результат.

Но покажи мне красивое и быстрое решение задачи о переводе в двоичную систему.
:)
#include <stdio.h>
int FindPower(int n);
int FindPower(int n)
{
int i=1;
for (i=1; i<=(n/2); i<<=1) {}
return i;
}
void main()
{
int j=0;
printf("Input any integer number: ");
scanf("%d", &j);
int k=0;
k=FindPower(j);
printf("In binary system:\n");
for (int i=k; i; i>>=1)
{
if (j & i) printf("1");
else printf("0");
}
printf("\n");
}

Быстрое и красивое решение =)
Кто захочет - может легко перевести это на Паскаль. Вместо >> и << (сдвиги вправо/влево) использовать SHR/SHL.

ArmHorse
19-11-2006, 00:48
:)
#include <stdio.h>
int FindPower(int n);
int FindPower(int n)
{
int i=1;
for (i=1; i<=(n/2); i<<=1) {}
return i;
}
void main()
{
int j=0;
printf("Input any integer number: ");
scanf("%d", &j);
int k=0;
k=FindPower(j);
printf("In binary system:\n");
for (int i=k; i; i>>=1)
{
if (j & i) printf("1");
else printf("0");
}
printf("\n");
}

Быстрое и красивое решение =)
Кто захочет - может легко перевести это на Паскаль. Вместо >> и << (сдвиги вправо/влево) использовать SHR/SHL.
:) при переводе к синтаксису Паскаля она утратит половину шарма, на Си без рекусии можно немного красивее написать.

Bad Boy
30-11-2006, 22:35
:) при переводе к синтаксису Паскаля она утратит половину шарма, на Си без рекусии можно немного красивее написать.
а как в Паскале картинки вставлять??? :confused: :)

ArmHorse
30-11-2006, 23:02
а как в Паскале картинки вставлять??? :confused: :)Куда вставлять то? :eek:

Cronus
30-11-2006, 23:45
а как в Паскале картинки вставлять??? :confused: :)
http://pascal.sources.ru/articles/107.htm
Учи матчасть (с).

Magnetto
01-12-2006, 00:13
а как в Паскале картинки вставлять??? :confused: :)
GetImage
PutImage

K@STET
01-12-2006, 01:33
Незабудь мереименовать в *.rar, или открой с помощью RARа

Oleg(ator)
02-12-2006, 10:10
Незабудь мереименовать в *.rar, или открой с помощью RARа
Тема про паскаль а не про С++ :mad:

Ganesha
11-12-2006, 00:44
... хех....
у меня такая *ЦензУрЕд*
буду очень благодарна еси кто-то поможет.

все проги написанные на паскале запускаются нормально... кроме графических. Несмотря на то что и graph.tpu есть, и в той же папке где моя программа, всё равнго не запускается.
Что делать? :rolleyes:

NickDNS
11-12-2006, 01:28
... хех....
у меня такая *ЦензУрЕд*
буду очень благодарна еси кто-то поможет.

все проги написанные на паскале запускаются нормально... кроме графических. Несмотря на то что и graph.tpu есть, и в той же папке где моя программа, всё равнго не запускается.
Что делать? :rolleyes:

Для работы с модулем Graph тебе нужно его инициализировать. А это делается так:

uses Graph;

var
grDriver: Integer;
grMode: Integer;
ErrCode: Integer;
begin
grDriver := Detect;
InitGraph(grDriver, grMode,'e:\bp7\bgi\egavga.bgi');
ErrCode := GraphResult;
if ErrCode = grOk then
begin
Line(0, 0, GetMaxX, GetMaxY);
Readln;
CloseGraph;
end
else
Writeln('Graphics error:', GraphErrorMsg(ErrCode));
end.

То что выделено красным - это путь к файлу egavga.bgi этот путь впиши сама. Обычно этот файл находится в папке BGI. Ну а там где сиим цветом то это сама программа. Кстати все инструменты которые касаются графа можно найти в хелпе. Выбираешь индекс а потом просто вводишь GRAPH. Там их куча. Line, circle, box и т.д......

Fagot
11-12-2006, 01:34
Для работы с модулем Graph тебе нужно его инициализировать. А это делается так:

uses Graph;

var
grDriver: Integer;
grMode: Integer;
ErrCode: Integer;
begin
grDriver := Detect;
InitGraph(grDriver, grMode,'e:\bp7\bgi\egavga.bgi');
ErrCode := GraphResult;
if ErrCode = grOk then
begin
Line(0, 0, GetMaxX, GetMaxY);
Readln;
CloseGraph;
end
else
Writeln('Graphics error:', GraphErrorMsg(ErrCode));
end.

я думаю проблема не в этом.мне кажется Галина Петровна успела научить Ганешу писать пероцедуру ингр на автомате.Правда Настя?)

NickDNS
11-12-2006, 03:01
я думаю проблема не в этом.мне кажется Галина Петровна успела научить Ганешу писать пероцедуру ингр на автомате.Правда Настя?)
Если не в этом то убедись что в меню Options/Directories стоят пути к юитам и ресурсам. А именно к папке Units.

Ganesha
11-12-2006, 03:49
я думаю проблема не в этом.мне кажется Галина Петровна успела научить Ганешу писать пероцедуру ингр на автомате.Правда Настя?)
правда... :d :yes:
Я уже и это делала, сирано не помогло... ////
Лана, буду чё-то мУдрить.

з.ы. Сори за ответ "вовремя", прост свет вырубили... гадЫ =//

neakr
11-12-2006, 10:15
трупопаскакаль я конечно призабыл уже но насколько я помню (последние сообщения о графике) как насчет присутствия egavga.bgi

NickDNS
11-12-2006, 21:16
трупопаскакаль я конечно призабыл уже но насколько я помню (последние сообщения о графике) как насчет присутствия egavga.bgi
Он присутствует в BP7 в папке BGI.

Derek
23-05-2008, 19:49
А де можна скачать паскаль? Можите дать ссылку плз? Или на мылокинуть ? =)

Дядя Бабай
23-05-2008, 20:46
А де можна скачать паскаль? Можите дать ссылку плз? Или на мылокинуть ? =)
Гугл рулз (http://www.google.com.ua/search?client=firefox-a&rls=org.mozilla%3Aru%3Aofficial&channel=s&hl=ru&q=Borland+Pascal+7.0+%D1%81%D0%BA%D0%B0%D1%87%D0%B 0%D1%82%D1%8C&meta=&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google)