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

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

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

> Число точек, находящихся внутри круга, (использовать функции)
сообщение
Сообщение #1


Гость






Цитата
Подсчитать число точек, находящихся внутри круга, радиусом R с центром в начале координат, координаты заданы массивами x(100), y(100).


Никак не врублюсь в паскаль. Вроде задача не трудная, а как сделать - хз. Сам алгоритм вроде просматривается, но формулу по которой будут точки считаться внутри круга где брать... без понятия. Вообщем помогите пжл с этой нелегкой(для меня) задачей. Можно с коментариями неболишими..может чего-нибудь да пойму.
 К началу страницы 
+ Ответить 
 
Closed Topic Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






2Volvo: Смотри, у тебя в задачи I обозначена получается тоже локально? Но если её описать заранее как интежер, то задача запускается, но точек в круге при любом раскладе - 100
И в 2-е - на счет ввода координат - это ты имеешь ввиду как у Atos'a
Код
for i:=1 to n do
begin
write(i,' tochka: x= '); read(x[i]); write(' y= '); readln(y[i]);
end;
? Но у меня же по-идее координаты массивами заданы, зачем их вводить.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3


Гость






Цитата(HuKTO @ 12.04.05 10:49)
Смотри, у тебя в задачи I обозначена получается тоже локально? Но если её описать заранее как интежер, то задача запускается, но точек в круге при любом раскладе - 100

Так в том-то и дело, что если одна и та же переменная описана И глобально, И локально, то везде, где видимо локальное описание, будет использоваться локальная переменная, во всех остальных случаях - используется глобальная. У тебя же ГЛОБАЛЬНАЯ переменная описана просто не была, а то, что ты описал переменную внутри процедуры, так она же просто не существует до тех пор, пока ты в эту процедуру не войдешь, и обращаться к ней извне просто нельзя...

Кстати, у меня I не описывается локально, а передается как параметр, а это разные вещи...

Цитата(HuKTO @ 12.04.05 10:49)
у меня же по-идее координаты массивами заданы, зачем их вводить.

Не путай, они у тебя не заданы, а описаны. То есть под них выделено место. А значения им кто будет присваивать? Тка что все-таки придется поставить этот цикл (который ты видел у Atos-а) :yes:
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Гость






2Volvo:
Наконец добрался до сюда. Спасибо за советы. Вот такая программа в итоге получается:
Код
uses crt;
const n=100;
Type arr=array[1..100] of integer;

var
i,r,kol:integer;
x,y:arr;
function isInside(i:integer):boolean;

begin
isInside:=(sqr(x[i])+sqr(y[i]))<sqr(R);
end;
begin
clrscr;
writeln('Chemy raven radius?');
readln(R);
for i:=1 to n do
begin
x[i]:=i;
y[i]:=i;
end;
kol:=0;
for i:=1 to 100 do
if isInside(i) then inc(kol);
writeln('Kol. to4ek vnutri kruga=',kol); readln;
end.

Все вроде работает. Но с процедурами(я создавал тему, правда щас её на нашел..) я так и не разобрался. Если не трудно напиши код. Я сам принцип понял кое-как но ничего не выходит все-равно(программа: даны натур. числа k и n. составить програм. формирования массива А, элементами которого являются числа, сумма цифр которых равна k и к-ые не больше N).
Идет по идее рандом чисел, и каждое число проходит проверку: равна ли сумма его цифр K и не больше ли они N. Если и то и то верно то добавляем число в массив и переходим к след. числу, если же нет пропускаем и все-равно переходим.
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5


Гость






Цитата(HuKTO @ 18.04.05 13:04)
я создавал тему, правда щас её на нашел

А вот если бы зарегистрировался, тебе был бы доступен просмотр всех своих сообщений...

Цитата(HuKTO @ 18.04.05 13:04)
Если не трудно напиши код.
Нетрудно, но код полностью я писАть не буду. Кстати, это уже не относится к первому заданному вопросу, поэтому ищи созданную тобой тему и продолжай обсуждение там.

P.S. И, на будущее, давай более осмысленные названия темам, "Задача на функцию (или процедуру)" - таких сотни, и не разберешь, где что...
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Гость






Цитата(volvo @ 18.04.05 14:30)
А вот если бы зарегистрировался, тебе был бы доступен просмотр всех своих сообщений...

Все учел, зарегился. Можно продолжить обсуждение в соседней теме ;)
 К началу страницы 
+ Ответить 

Сообщений в этой теме
HuKTO   Число точек, находящихся внутри круга   11.04.2005 4:58
Atos   если x[i]*x[i]+y[i]*y[i]< R*R, то i-я точка ле…   11.04.2005 9:27
HuKTo   Спасибо за формулу, я правда все-равно не понял к…   11.04.2005 15:41
volvo   Вот функция, проверяющая лежит ли i-я точка внутри…   11.04.2005 16:29
HuKTO   Да сам не знаю где проблема...наверное в моей гол…   12.04.2005 3:20
Atos   Мда... Ладно. Поясняю. В каком случае точка лежит …   11.04.2005 16:50
Guest   Насчет программы: Мне нужно именно с использовани…   12.04.2005 3:28
volvo   HuKTO, смотри что происходит: Ты описываешь функци…   12.04.2005 4:03
HuKTO   Странно, но опять эта ошибка - "Integer or re…   12.04.2005 4:26
volvo   Да, это мой глюк. :( Поменяй строку в функции во…   12.04.2005 12:29
HuKTO   2Volvo: Смотри, у тебя в задачи I обозначена получ…   12.04.2005 14:49
volvo   Так в том-то и дело, что если одна и та же переме…   12.04.2005 15:10
HuKTO   2Volvo: Наконец добрался до сюда. Спасибо за совет…   18.04.2005 17:04
volvo   А вот если бы зарегистрировался, тебе был бы дост…   18.04.2005 17:30
unFair   Все учел, зарегился. Можно продолжить обсуждение …   19.04.2005 0:01
volvo   Читай мой предыдущий ответ внимательно... Здесь об…   19.04.2005 0:03


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

 





- Текстовая версия 7.09.2025 23:17
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name