Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

Форум «Всё о Паскале» _ Задачи _ Задача.

Автор: Casual 9.05.2008 18:46

Задача: на плоскости на расстоянии S[1], S[2], ... , S[10] от центра кругового кольца с внутренним радиусом r и внешним R расположены точки. Определить количество точек, располпженных внутри кольца.
Пробовал решать, ничего не работает.


Program Tochka;
var s:array[1..10] of integer;
r, g, i, j, n:real;
begin
randomize;
begin
writeln('vvedite rasstojanija');
readln(n);
for i:=1 to n do
begin
s[i]:=random(10);
writeln(s[i]);
end;
if (s>r) and (s<g) then
inc(s);
writeln(s);
readln;
end.


Автор: klem4 9.05.2008 19:10

если задача звучит имено так как ты привел, то решение такое:

count := 0;
for i := 1 to 10 do
if (s[i] > lowR) and (s[i] < highR) then
inc(count);



Автор: Casual 9.05.2008 23:58

Что значит count?

Добавлено через 3 мин.
А какой будет вывод?

Автор: mind abuse 10.05.2008 1:49

Цитата(Casual @ 9.05.2008 15:46) *

Задача: на плоскости на расстоянии S[1], S[2], ... , S[10] от центра кругового кольца с внутренним радиусом r и внешним R расположены точки. Определить количество точек, располпженных внутри кольца.
Пробовал решать, ничего не работает.

Program Tochka;
var s:array[1..10] of integer;
r, g, i, j, n:real;
begin
randomize;
begin
writeln('vvedite rasstojanija');
readln(n);
for i:=1 to n do
begin
s[i]:=random(10);
writeln(s[i]);
end;
if (s>r) and (s<g) then
inc(s);
writeln(s);
readln;
end.





Можно попробовать без массива втупую randomize 10 точек чисто для проверки работоспособности/ошибок. Или обязательно массив?

Автор: mind abuse 10.05.2008 2:10

Program Tochka;
uses
crt;

var s:array[1..10] of integer;
littler, bigr :real;
i,j:integer;

begin
clrscr;
writeln('input radius:');
writeln('Little radius= ');
readln(littler);
writeln('Big radius= ');
readln(bigr);

j:=0;

for i:=1 to 10 do

begin

s[i]:=random(100);

if (s[i]>littler) and (s[i]<bigr) then

inc(j);

end;
writeln(j);
readln;
end.



Вроде бы сделал.