var x, y: integer; s: array of string; b: GraphABC.Point;
begin s := System.IO.File.ReadAllLines('in.txt'); foreach a: string in s do begin X := integer.Parse(a.Replace('(', '').Replace(')', '').Replace(' ', '').Split(';')[0]); Y := integer.Parse(a.Replace('(', '').Replace(')', '').Replace(' ', '').Split(';')[1]); if not (b.IsEmpty) then GraphABC.LineTo(X, Y) else begin GraphABC.MoveTo(X, Y); b := new Point(x, y); end; DrawCircle(x, y, 10); end; LineTo(b.X, b.Y); end.
Код, конечно, вырвиглазный, зато работает и прочитать его относительно легко:)
Могу подсказать идеи: в 1м используешь метод сортировки пузырьком, только не больше или меньше, а отрицательное или положительное во 2ом слишком просто, if(a[i]>b[i]) c[i]=a[i]; else c[i]=b[i]; в 3ем тоже дотсточно просто, пройтись циклом по массиву, и если число меньше нужного, а следующее больше, то пузырьком смещаешь все элементы выше i+1 вверх, а на i+1 вставляешь нужное число в 4ом пройти весь массив проверяя лучше через функцию каждое число на правильность в 5ом делаешь отдельный массив, в котором все сдавшие, и методом сложения всех чисел и деления на их количество находишь среднее. программы пиши сам, не честно на олимпиадах так нагло воровать, дальше всё равно не пройдёшь, в 8м классе на олимпиаде по информатике из 60 человек хоть что-то решили только 4, и то по 1ой задаче
GraphABC;
var
x, y: integer;
s: array of string;
b: GraphABC.Point;
begin
s := System.IO.File.ReadAllLines('in.txt');
foreach a: string in s do
begin
X := integer.Parse(a.Replace('(', '').Replace(')', '').Replace(' ', '').Split(';')[0]);
Y := integer.Parse(a.Replace('(', '').Replace(')', '').Replace(' ', '').Split(';')[1]);
if not (b.IsEmpty) then
GraphABC.LineTo(X, Y)
else
begin
GraphABC.MoveTo(X, Y);
b := new Point(x, y);
end;
DrawCircle(x, y, 10);
end;
LineTo(b.X, b.Y);
end.
Код, конечно, вырвиглазный, зато работает и прочитать его относительно легко:)
Содержимое файла in.txt (для теста)
(50; 50)
(90; 50)
(90; 90)
(50; 90)
во 2ом слишком просто, if(a[i]>b[i]) c[i]=a[i]; else c[i]=b[i];
в 3ем тоже дотсточно просто, пройтись циклом по массиву, и если число меньше нужного, а следующее больше, то пузырьком смещаешь все элементы выше i+1 вверх, а на i+1 вставляешь нужное число
в 4ом пройти весь массив проверяя лучше через функцию каждое число на правильность
в 5ом делаешь отдельный массив, в котором все сдавшие, и методом сложения всех чисел и деления на их количество находишь среднее.
программы пиши сам, не честно на олимпиадах так нагло воровать, дальше всё равно не пройдёшь, в 8м классе на олимпиаде по информатике из 60 человек хоть что-то решили только 4, и то по 1ой задаче