Премини към съдържанието
Форумът в приложение

По-лесно сърфиране. Научи повече.

Kaldata.com - Форуми

Приложение на форума на цял екран с push известия, значки и други.

За да инсталирате това приложение на iOS и iPadOS
  1. Докоснете Иконата за споделяне в Safari
  2. Превъртете менюто и докоснете Добавяне към началния екран.
  3. Докоснете Добавяне в горния десен ъгъл.
За да инсталирате това приложение на Android
  1. Докоснете менюто с 3 точки (⋮) в горния десен ъгъл на браузъра.
  2. Докоснете Добавяне към началния екран или Инсталиране на приложение.
  3. Потвърдете, като докоснете Инсталиране.

Добре дошли!

Добре дошли в нашите форуми, пълни с полезна информация. Имате проблем с компютъра или телефона си? Публикувайте нова тема и ще намерите решение на всичките си проблеми. Общувайте свободно и открийте безброй нови приятели.

Моля, регистрирайте се за да публикувате тема и да получите пълен достъп до всички функции.

 

За Матлаб 7.1

Featured Replies

Имам задача която трябва да направя но успях да стигна до тази с малко преправяне но не ми върши работа.Тази която имам е: "Зададени са "к" на брой окръжности(абциса и ордината на центъра и радиус) и "m" на брой точки(абциса и ордината).Да се състави подпрограма функция която определя в колко окръжности лежи всяка точка."А условието на моята е да извежда номерата на окръжностите в които лежи всяка точка.

function ok()
br=input('Vavedete broq okryjnosti: ');
for i=1:br
	disp(i)
	disp('Okryjnost(i)')
	vhodx{i}=input('Vavedete X: ');
	vhody{i}=input('Vavedete Y: ');
	vhodr{i}=input('Vavedete R: ');
end
brt=input('Vavedete broq to4ki: ');
for i=1:brt
	disp(i)
	vhodtx{i}=input('Vavedete X: ');
	vhodty{i}=input('Vavedete Y ');
end
for j=1:brt
	b{j}=0;
	for i=1:br
	dist=sqrt((vhodtx{j}-vhodx{i})^2+(vhodty{j}-vhody{i})^2);
	if dist<=vhodr{i}
	   b{j}=b{j}+1;
	end
	end
end
for i=1:br
	disp('To4ka ')
	disp(i)
	disp('se namira v')
	disp(b{i})
	disp('Okryjnosti')
end
Какво трябва да се промени че да ми извежда номерата на окръжностите в които лежи всяка точка.Благодаря предварително на отзовалите се ;) ;)
  • Автор

За две нощи се оправих със задачката.Ако някой я иска може да ми пише на ЛС.Ще услужа на всеки на който му потрябва. ;)

  • Автор

Ето ви малко готови ;) Ако има проблем пишете.

1.Определя в колко окръжности лежи дадена точка(една точка и "м" на брой окръжности) и изчертава графиката ...

function [where,varargout]= point(xp,yp,varargin)
nc=length(varargin);
nct=0;
where=0;
t = 0:pi/50:2*pi;
figure
for i=1:nc
	xc= varargin{i}(1);
	yc= varargin{i}(2);
	r= varargin{i}(3);
	dist=sqrt((xc-xp)^2+(yc-yp)^2);
	if dist<r
		where=1;
		nct=nct+1;
		nums(nct)=i;
	end
	x=xc+r*cos(t);
	y=yc+r*sin(t);
	plot(x,y),grid on
	axis equal
	hold on
end
plot(xp,yp,'or')
switch nargout
	case 2
		varargout{1}=nct;
	case 3
		varargout{1}=nct;
		varargout{2}=nums;
end
2.Зададени са „к” окръжности(абциса и ордината на центъра и радиус) и „m” точки(абциса и ордината).Да се състави подпрограма функция,която определя номерата на окръжностите,в които лежи точка.

function ok()
br=input('Въведете брой окръжности: ');
for i=1:br
	disp(i)
	disp('Окръжност')
	vhodx{i}=input('Въведете X: ');
	vhody{i}=input('Въведете Y: ');
	vhodr{i}=input('Въведете R: ');
end
brt=input('Въведете броя точки: ');
for i=1:brt
	disp(i)
	vhodtx{i}=input('Въведете X: ');
	vhodty{i}=input('Въведете Y: ');
end
for j=1:brt
	b{j}=0;
	for i=1:br
	dist=sqrt((vhodtx{j}-vhodx{i})^2+(vhodty{j}-vhody{i})^2);
	if dist<=vhodr{i}
	   b{j}=b{j}+1; 
	   nums(b{j})=i;
	end
	end
end
	disp('Пореден номер на окръжностите в които лежи точка са:')
	disp(nums)
end
3.Зададени са k окръжности(абсциса и ордината на центъра и радиуса) и m точки(абсциса и ордината).Да се състави подпрограма функция,която определя дали има окръжност, в която лежат всички точки.

function D = kursova(Ox, Oy, r, Tx, Ty)
%Da se systavi podprograma koqto opredelq dali ima takava okrajnost 
%v koqto lejat vsichki tichki
%Ox,Oy,r sa vektori s razmer 'K'
%Tx , Ty sa vektori s razmer 'm'
%Izhoda e vektor ot tochkite koito ne lejat na okrujnostite
K = length(Ox)	
m = length(Tx)
for i = 1:K				%cikyl za okryjnostite
	bo = 0;				%broqch za tochkite 
   for j = 1:m			 %cikyl za tochkite
	   VDist=sqrt( ( Ox(i) - Tx(j) )^ 2 + ( Oy(i) - Ty(j) )^ 2 ); %iztislqvane na dyljinata na vektora O-T
	   if VDist < r(i)	 %proverka dali dyljinata na vektora O-T e po golqm ot r na okrajnosta
		   bo = bo + 1;	% ako to4kata s index 'j' leji na okrujnostta s index 'i'neka bo = 1
	   end
   end
end
num2str(m);
if bo == m;
	disp('Ima takava okrajnost v koqto lejat vsichki tochki!');
else
	disp('Nqma takava okryjnost v koqto da lejat vsichki tochki!');
end
4....В колко окръжности лежи всяка точка

function ok()
br=input('Vavedete broq okryjnosti: ');
for i=1:br
	disp(i)
	vhodx{i}=input('Vavedete X: ');
	vhody{i}=input('Vavedete Y: ');
	vhodr{i}=input('Vavedete R: ');
end
brt=input('Vavedete broq to4ki: ');
for i=1:brt 
	disp(i)
	vhodtx{i}=input('Vavedete X: ');
	vhodty{i}=input('Vavedete Y ');
end
for j=1:brt
	b{j}=0;
	for i=1:br
	dist=sqrt((vhodtx{j}-vhodx{i})^2+(vhodty{j}-vhody{i})^2);
	if dist<vhodr{i}
	   b{j}=b{j}+1;
	end
	end
end
for i=1:brt
	disp('To4ka ')
	disp(i)
	disp('se namira v')
	disp(b{i})
	disp('okryjnosti')
end

Редактирано от venceto (преглед на промените)

  • 3 седмици по-късно...
  • Автор

Нали за тва е форума :clap: трябва да свиквам с тоя МАТЛАБ,че тия доценти професори и т.н. ще ни разкатаят фамилията :ph34r:

  • 1 година по-късно...

Регистрирайте се или влезете в профила си за да коментирате

Разглеждащи това в момента 0

  • Няма регистрирани потребители разглеждащи тази страница.

Дарение

  • Подкрепи съществуването на форума - направи дарение
    32%
    Дарени 315 € от нужните 1 000 €

Бюлетин

Получавайте известие, когато има важна промяна или новина свързана с форума.

Профил

Навигация

Търсене

Търсене

Конфигуриране на push известия в браузъра

Chrome (Android)
  1. Докоснете иконата на катинар до адресната лента.
  2. Докоснете Разрешения → Известия.
  3. Променете предпочитанията си.
Chrome (Desktop)
  1. Кликнете върху иконата на катинар в адресната лента.
  2. Изберете Настройки на сайта.
  3. Намерете Известия и коригирайте предпочитанията си.