برنامه ای که شامل لوزی تو پر و لوزی تو خالی شود؟(با حلقه for
برنامه ای که شامل لوزی تو پر و لوزی تو خالی شود؟(با حلقه for
این کار با استفاده از توابع سینوسی و کسینوسی انجام میشه.
توی حلقه هر نقطه ای رو که با مختصات Sin(x) , Cos(x)z رسم کنید میشه یک نقطه از دایره (x شمارنده حلقه هست). برای تنظیم شعاع دایره هم به توابع فوق یک ضریب عددی بدید. طبیعتاً برای رسم بیضی باید ضرایب یکسان نباشند.
موفق باشید.
<درخواست برنامه/انجام تمرین درسی ممنوع است>
الگوریتم هایی که تاریخچه خود را فراموش می کنند، محکوم به تکرار آن هستند.
حاجی کجارو گرفتی لوزی رو میگه. تا فرمول بیضی اونی نیست که شما می گی .ریاضی کار کن.
اگر نقاط متوالی باشن بینشون خط رسم کن اگر گفته با for باشه بایستی هر line رو دستی رسم کن.یعنی خودت رسم خط بنویسی اگه گرافیک پاس کردی
Oops!
عجب سوتی ای دادم :D
فکر کردم در مورد بیضی پرسیده بودند
الگوریتم هایی که تاریخچه خود را فراموش می کنند، محکوم به تکرار آن هستند.
اين يه نمونه كه با matlab نوشته شده
اميدوارم به دردت بخوره
در نرم افزار مطلب يه فايل ايجاد كن و در فايل اين كد رو بنويس
function Ellipse(xp,yp,x,y,r1,r2)
mat=ones(xp,yp);
for i=1:360
a=x+r1*cos(i);
b=y+r2*sin(i);
mat(fix(a),fix(b))=0;
end
imshow(mat)
بعد در صفحه اصلي نام تابع رو با ورودي هاي دلخواه فراخواني كن
موفق باشي
یه خورده دقت کن بعد تاپیک بزن .اون میگی لوزی تو میگی بیضی.
این بیضی هم که رسم کردی دورنیابی نشده.روش های مختلف دورنیابی داریم که Spline هم یکی از این موارده
برای این کار نمیشه تابعی تعریف کرد پس باید دستی بکشید دیگه. اگه بشه درجه رو حساب کرد میشه با تغییر درجه هم نوشت.(متغیر for به عنوان درجه ای که خط با محور x ها میسازه قرار بدید). درواقع اگه شیب معلوم باشه میشه. ولی اگه هم اینطوری نشد دستی راحته.برنامه ای که شامل لوزی تو پر و لوزی تو خالی شود؟(با حلقه for
موفق باشید!
بچه ها گرافیکی نه .مثلا می گم با ستاره(*) لوزی درست بشه.بعد داخل borland C++ میخوام ببینم چطوریه؟؟
بچه ها گرافیکی نه .مثلا می گم با ستاره(*) لوزی درست بشه.بعد داخل borland C++ میخوام ببینم چطوریه؟؟
const int n = 50;
int k = 1; int k2 = n/2; int k3=0;
for (int i = 0; i < n; i++)
{
if (k < (n / 2))
k3 = k;
else
k3 = k2;
for (int j = 0; j < k3; j++)
label1.Text += "*";
label1.Text += "\n\r";
if (k < (n / 2))
k++;
else
{
k2--;
}
}
منبع: دست نوشته های یک برنامه نویس
همه چیز مشخصه. توضیح بدم؟؟؟
[QUOTE=dousti_design;962633]
const int n = 50;
int k = 1; int k2 = n/2; int k3=0;
for (int i = 0; i < n; i++)
{
if (k < (n / 2))
k3 = k;
else
k3 = k2;
for (int j = 0; j < k3; j++)
label1.Text += "*";
label1.Text += "\n\r";
if (k < (n / 2))
k++;
else
{
k2--;
}
}
منبع: دست نوشته های یک برنامه نویس
همه چیز مشخصه. توضیح بدم؟؟؟[/Q
عزیز من اینو می نویسم
#include<iostream>
#include<conio>
main()
{ const int n=50;
int k=1;
int k2=n/2;
int k3=0;
for(int i=0;i<n;i++)
{
if(k<(n/2))
k3=k;
else
k3=k2;
}
for(int j=0;j<k3;j++)
{ label1.Text += "*";
label1.Text += "\n\r";
if(k<(n/2))
k++;
else
k2--;
}
getch();
return 0;
}
دوست خوبم واقعا ممنون ولی این error رو میده:'
undifined symbol 'label1
چی کار کنم؟
آخرین ویرایش به وسیله parham_pni : دوشنبه 06 اردیبهشت 1389 در 16:17 عصر دلیل: یه قسمتش یادم رفت
این برنامه رو با سی شارپ نوشتم(کامپایلر C++ دم دست ندارم)
آخه اینجا بخش الگوریتم و معمولا فقط الگوریتم رو ارائه میدن با شبه کد و زبان مشخصی مد نظر نیست.
باید یا توی سی شارپ اجرا کنید یا اینکه تبدیلش کنید. تبدیلش هم خیلی راحته:
const int n = 40;
int k = 1; int k2 = n/2; int k3=0;
for (int i = 0; i < n; i++)
{
if (k < (n / 2))
k3 = k;
else
k3 = k2;
for (int j = 0; j < k3; j++)
cout<<"*";
cout<<endl;
if (k < (n / 2))
k++;
else
{
k2--;
}
}
موفق باشید.
آخرین ویرایش به وسیله dousti_design : دوشنبه 06 اردیبهشت 1389 در 16:24 عصر
با سلام
یک سوال در مورد برنامه matlab داشتم:
1-چه جوری می توان در برنامه Matlab مختصات نقاطی را که در روی دایره به یک فاصله هستند را به دست آورد :
مثلا با گرفتن عدد K برنامه به ما مختصات k تا نقطه ای را بدهد که روی دایره به فاصله های مساوی از هم قرار دارند (به طوری که از اتصال نقاط متوالی به هم یک چند ضلعی منتطم به وجود آید)
2- با داشتن معادله دو خط چه جوری می توان نقطه مشترک بین آن دو را به دست آورد؟
ایمیل من :
aseman_abi123@yahoo.com
سلام
رسم لوزی تو پر و توخالی چطوری میشه باروش زیر.
من نصفه لوزی رو اینطور نوشتم:
function DrawNesfeLozi(n)
for row=1:n-1
for col=1:row
fprintf('*');
end
fprintf('\n');
end
for r=n-1:-1:0
for c=r+1:-1:1
fprintf('*');
end
fprintf('\n');
end
fprintf('\n');
end
فقط لطفن زود جواب بدید امتحانشو دارم