IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Сосчитать количество чисел в десятичной записи числа, А также...нахождение радиуса...
Archie
сообщение 16.09.2007 16:49
Сообщение #1


Новичок
*

Группа: Пользователи
Сообщений: 23
Пол: Мужской
Реальное имя: Руслан

Репутация: -  0  +


1) Подсчитать количество (k) цифр в десятичной записи целого неотрицательного числа n.
2) Даны натуральное n и вещественные числа x1,y1,x2,y2,...,xn,yn. Рассматривая пары xi и yi как координаты точек на плоскости, определить радиус наименьшего круга (с центром в начале координат), внутрь которого попадают все эти точки.
В паскале плохо шарю и плохо его помню...а тут такое дело - завтра лабораторную эту сдавать а я не могу даже вникнуть...прошу помочь...

Сообщение отредактировано: Archie - 16.09.2007 17:48
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
klem4
сообщение 17.09.2007 13:42
Сообщение #2


Perl. Just code it!
******

Группа: Модераторы
Сообщений: 4 100
Пол: Мужской
Реальное имя: Андрей

Репутация: -  44  +


FPC 1.0.8 compiler ver. 2.0.4
BP не компилит ...

Теперь меня другое волнует, почему следующий код выдает invalid floating point operation на BP blink.gif wacko.gif ?!
(никаких изменений, просто убрана графика)

{$R-}
{$N+}
uses crt, graph;

type

TPoint = record
x, y: integer;
end;

const
zero: TPoint = (x:0; y:0);

type

PArray = ^TArray;
TArray = array [1..1] of TPoint;

function get_len(const a, b: TPoint): Single;
begin
get_len := sqrt(sqr(a.x - b.x) + sqr(a.y - b.y));
end;

function FloatToStr(const fValue: single): String;
var
temp: string;
begin
str(fValue:5:2, temp);
FloatToStr := temp;
end;

var
gd, gm, cx, cy, mx, my: integer;

i, j, n: integer;

len, max_len: single;

points: PArray;

begin
{gd := detect;
initgraph(gd, gm, 'd:\bp\bgi');



mx := getMaxX;
my := getMaxY;


cx := mx div 2;
cy := my div 2;

setColor(RED);

line(cx, 0, cx, my);
line(0, cy, mx, cy);
}
n := 15;

GetMem(points, n * sizeof(TArray));

randomize;

{
setColor(BLUE);
setFillStyle(SOLIDFILL, blue);
}
for i := 1 to n do begin

points^[i].x := random(301) - 150;
points^[i].y := random(301) - 150;
{
fillellipse(cx + points^[i].x, cy - points^[i].y, 2, 2);
}
end;

max_len := get_len(zero, points^[1]);

for i := 2 to n do begin
len := get_len(zero, points^[i]);
if len > max_len then
max_len := len;
end;

{
setColor(WHITE);

circle(cx, cy, round(max_len));

outTextXY(1, 1, 'R = ' + FloatToStr(max_len));
}
readkey;
{
closegraph;
}
FreeMem(points, n * sizeof(TArray));
end.


Добавлено через 15 мин.
Проблема ясна ...

sqr(200) = -25536 smile.gif


Добавлено через 4 мин.
Век живи, век учись ...


begin
writeln('200*200 = ', 200*200);
writeln('sqr(200) = ', sqr(200));
writeln('sqr(200.0) = ', sqr(200.0):0:0);
end.


По чему так, написано в хелпе ...

Сообщение отредактировано: klem4 - 17.09.2007 13:58


--------------------
perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 



- Текстовая версия 20.07.2025 18:32
Хостинг предоставлен компанией "Веб Сервис Центр" при поддержке компании "ДокЛаб"