سلام دوستان کسی میتونه برای نوشتن برنامه ایجاد درخت دودویی به زبان c به من کمک کنه؟برنامه شو برای فردا میخوام...خیلی لنگم...رشته تحصیلیمم ریاضیه...انقدری از برنامه نویسی سر در نمی آرم...ممنون میشم اگه کمکم کنید باتشکر...
Printable View
سلام دوستان کسی میتونه برای نوشتن برنامه ایجاد درخت دودویی به زبان c به من کمک کنه؟برنامه شو برای فردا میخوام...خیلی لنگم...رشته تحصیلیمم ریاضیه...انقدری از برنامه نویسی سر در نمی آرم...ممنون میشم اگه کمکم کنید باتشکر...
سلام به دوستان گل؛ کسی می تونه در مورد جواب این سوال ها کمکم کنه (به زبان c++)
1- خروجی برنامه زیر چیست؟ مقادیر متغیرها را در برنامه اصلی در تابع با هم مقایسه کنید
2- خروجی قطعه کدهای زیر چیست؟کد:{ )int fun (int &x, int y, int z
;x = x + z
;3 % y = y
)if (x <= 3 || x < z
;z = 2*z
else
;1+z = z
cout << "In fun, x=" << x << " y=" << y
;"<<" z=" << z << "\n
;return x + y
}
{ ) (int main
;1 = int x
;7 = int y
;)3,int z = fun (x,y
cout << "In main, x=" << x << " y=" << y
;"<< " z=" << z << "\n
;0 return
}
وکد:;}2,1,5,3,01{ = ]5[int a
{ )--for (int i=4; i>0; i
;]1-a[i] += a[i
;" " << ]cout << a[i
}
پیشاپش از لطفتون تشکر می کنمکد:;]3[]2[int a
{ )++for (int i=0; i<2; i
{ )++for (int j=0; j<3; j
;a[i][j] = i+j
;]cout << setw(5) << a[i][j
}
;"cout << "\n
}
نقل قول:نقل قول:
سلام به همه....
من دنبال 1برنامه به زبان c++ هستم
سوالشم اینه:
جمع 2تا عدد اعشاری که طرف صحیحش حداکثر10 تا عدد و طرف اعشارشم حداکثر 10 تا عدد باشه...
تورو خدا زود جواب بدین....:n17::n28: :n30: :n27:
نقل قول:
ناتوانی در محاسبه ی اعداد بزرگ ...
من با کدیلاکس برنامه مینویسم و به تازگی میخواستم با فرض اینکه قلب در یک ثانیه یک بار میزند تعداد ضربان فلب فرد 78 ساله رو میخواستم محاسبه کنم با کمال تعجب عدد منفی در میاد
برنامه ای که نوشتم :
کد:
#include <iostream> #include <cstdlib> using namespace std; int main() { cout << "tedade zarabane ghalbe iek farde 78 sale : " << 78 * 365 * 24 * 60 * 60 << endl; system("pause"); return 0; }
جواب باید بشه 1434888000 ولی میشه -1835159296
سلام
این هم جواب برنامه ای که درخواست کردین و قولش رو بهتون دادم،شرمنده بابت تاخیر..
خب،در ابتدا اولین چیزی که به ذهن میاد،استفاده از روابط ریاضیه.که تعداد ارقام صحیح و اعشار 2 رقم وارد شده رو حساب کنیم ببینیم بیشتر از 10 تا هست یا نه..
کد:#include <iostream>
#include <conio>
int main()
{
long double a,b,c;
int q,w,e,r;
q=w=e=r=0;
cout<<"Enter First number :\n";
cin>>a;
c=a;
while((int)c!=0)
{c/=10;
q++;
}
c=a;
while((int)c!=c)
{c*=10;
w++;
}
cout<<"Enter Second number : \n";
cin>>b;
c=b;
while((int)c!=0)
{c/=10;
e++;
}
c=b;
while((int)c!=c)
{c*=10;
r++;
}
if (q<=10 && w<=10 && e<=10 && r<=10)
{cout<<" Sum is : "<<(a+b);
cin>>c;}
if (q>10)
cout<<"Raghame Sahihe adade aval Bishtar ay 10 mibashad!!";
if(w>10)
cout<<"Raghame a'ashare adade aval Bishtar ay 10 mibashad!!";
if(e>10)
cout<<"Raghame sahih adade dovvom Bishtar ay 10 mibashad!!";
if(r>10)
cout<<"Raghame a'ashare adade dovvom Bishtar ay 10 mibashad!!";
getch();
return 0;
}
این برنامه به درستی کامپایل میشه،الگوریتمش هم درسته،و برای اعدادی که تعداد ارقامشون از 10 کمتره،چه صحیح چه اعشار،حواب میده.
ولی زمانی که تعداد ارقام بالای 10 میره در زمان اجرا اخطار OF میده چون یک رقم از نوع long double هم توانایی ذخیره ی عددی به این بزرگی رو نداره و برنامه تا انتها اجرا نمیشه.
تنها راهی که میمونه استفاده از آرایه هاست که ... اهم،یکم مشکله..
اول باید رقم رو از کاربر گرفت و ذخیره کرد.
اگر شروط برقرار بود،اون رو باید از آرایه به عدد تبدیل کرد تا بشه روی اون محاسبات ریاضی،از جمله جمع که مد نظره،انجام داد..
اگه مبحث اشاره گر ها رو هنوز نخوندید اصلا نترسید!!!!
در این برنامه از اشاره گرها استفاده کردم تا حجم کد کمتر بشه،و بشه برای تعداد اعداد بیشتری بعدا گسترشش داد.
اگه کسی مایل بود بگه تا براش بدون استفاده از اشاره گرهاشم بزارم..
اگه سوالی هم هست در خدمتم..
موفق باشید..
:sq_8:
کد://written by Mehrdad Sh.
//This program is Compiled in Borland C++ 5.
#include <iostream>
#include <conio>
#include <math>
void Cal ( char a[1],int b[90],int *g,int *s);
void makeint (int* ,int* ,double* ,int [90] );
main()
{ char a[1]={13};
int c[90], b[90],g,s,d,f;
double intb=0,intc=0; //g,d=tedade arghame sahihe adade 1,2 .s,f tedade raghame ashare adade 1,2;
g=s=d=f=0;
cout <<"Enter a number one: \n";
Cal(a,b,&g,&s);
cout <<"\nEnter number two: \n";
Cal(a,c,&d,&f);
if ( g<=10 && s<=10 && d<=10 && f<=10)
{ makeint(&g,&s,&intb,b);
makeint(&d,&f,&intc,c);
cout<<"\nyour result is : "<<(intb + intc)<<endl<<intb<<endl<<intc;}
else
{ if (g>10)
cout<<"\nthe integer part first entered number is more than 10 numbers !!";
if(s>10)
cout<<"\nthe floating part of first entered number is more than 10 numbers!! ";
if (d>10)
cout<<"\nthe integer part of second entered number is more than 10 numbers!!";
if(f>10)
cout<<"\nthe floating part of second entered number is more than 10 numbers!!";}
getch();
}
void makeint (int *g,int *s,double *intb ,int b[90] )
{int i,j;
for (i=*g-1 , j=0 ;i>=0;i-- && j++)
{*intb+=(b[j]*pow(10,i));
cout<<endl<<*intb;}
j+=2;
for (i=1 , j;i<=*s;i++ && j++ )
*intb+=(b[j]*pow(10,-i));
}
void Cal ( char a[1],int b[90],int *g,int *s)
{ int i;
for(i=0; b[i]!=a[0]!='.';i++)
{ if ((b[i]=getch())!=a[0] && b[i]!='.')
{ b[i]-=48;
cout<<b[i];
*g+=1;
}
else
break;}
cout<<".";
for(i++; b[i]!=a[0]!='.' ;i++)
{ if ((b[i]=getch())!=a[0] )
{b[i]-=48;
cout<<b[i];
*s+=1;}
else
break;
}
}
دارم روی پروژه ی دانشگاه کار ميکنم ترم اول علوم کامپيوتر هست و هيچ آشنايی با شی گرايی ندارم
پروژه يه سيستم مديريت نمرات دانشجو هست با قابليات متفاوت!
سؤال:
تا حالا آرايه ی پويا و آرايه از رشته رو ديدم
اما نميدونم چطور ميشه آرايه ی پويا از رشته تعريف کرد؟!
پويا باشه تا طولش رو در برنامه و هنگام کار باهاش تغيير بدم
ميخوام نام و نام خانوداگی رو اعتبار سنجی کنم که مثلا" آيا حرف اولش کوچک هست ؟ آيا تمام حروف کوچيک هست يا نه؟
برای اينکار بايد به تک تک کاراکتر های هر درايه ی آرايه که خودش رشته است دسترسی داشته باشم!
مشکلم سر اين دسترسی هست!
خوش به حالت کاش منم علوم کامپیوتر زده بودم!!نقل قول:
اگه درست متوجه شده باشم باید اول توی تعریف کلاس یه اشاره گر از نوع کاراکتر تعریف کنی بعد توی سازنده یا کانستراکتور بهش فضا اختصاص بدی.
[PHP]char *reshte
reshte=new char[100][/PHP]
یه چیزی تو این مایه ها!
اگه متوجه نشدی بگو بیشتر راهنمایی کنم
عزيز من شی گرايی هنوز نخوندم
بعد ميخوام پويا باشه يعنی طولش حين اجرای برنامه بتونه تغيير کنه!
مثلا" آرايه ی پويا:
int *x;
int n;
x = new int [n ]
آرايه از رشته:
string s[5];
اما نميدونم چطور آرايه پويا از رشته تعريف کنم!
فکر کنم بازهم متوجه نشدم منظورت چیه!نقل قول:
من این کد رو اجرا کردم مشکلی نداشت
[PHP] int n=10;
string* a=new string [n];
a[1]="salam";
a[2]="hello?";[/PHP]
آرايه ی پويا از رشته رو بصورت زير تعريف کردم:
[PHP]
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
void meno( string *name, string *lase_name, float *ave , int *number );
void add ( string *name, string *lase_name, float *ave , int *number );
void sort ( string *name, string *lase_name, float *ave , int *number );
int i = 1;
int main()
{
bool ans = true;
float *Ave;
int *number;
string *name;
string *lase_name;
Ave = new float[i];
number = new int[i];
name = new string[i];
lase_name = new string[i];
while (ans)
{
meno( name, lase_name, Ave , number );
cout << "Do you want continue? (true or false) " << "\n";
cin >> ans;
}
cin.get ();
cin.get();
return 0;
}
void meno ( string *name, string *lase_name, float *Ave, int *number )
{
int ans;
cout << "\n";
cout << "Your welcome manager :" << "\n\n"
<<setw (7) << "meno" << "\n"
<< setw (7) << "Add" << "\t" << "1" << "\n"
<< setw (7) << "Sort" << "\t" << "2" << "\n"
<< setw (7) << "Edit" << "\t" << "3" << "\n"
<< setw (7) << "Grade G" << "\t" << "4" << "\n"
<< setw (7) << "Maximum" << "\t" << "5" << "\n"
<< setw (7) << "minimum" << "\t" << "6" << "\n\n"
<< "enter a number" << "\n";
cin >> ans;
switch (ans)
{
case 1:
add ( name, lase_name, Ave , number );
break;
case 2:
sort ( name, lase_name, Ave , number );
break;
default:
cout << "entered number is not Definition: " << "\a\n";
meno( name, lase_name, Ave , number );
break;
}
cin.get();
}
void add ( string *name, string *lase_name, float *Ave , int *number )
{
cout << "student \t" << i << "\n" ;
cout << "Enter a number : ( if after enter: -1 ) " << "\n";
cin >> *(number + i);
cout << "Enter a Average : ( if after enter: -1 ) " << "\n";
cin >> *(Ave + i);
cout << "Enter a name: ( if after enter: -1 ) " << "\n";
cin >> *(name + i);
cout << "Enter a last name: ( if after enter: -1 ) " << "\n";
cin >> *(lase_name + i);
i++;
}
[/PHP]
آرايه ی پويا از رشته رو بصورت بالا تعريف کردم:
بعد از نمايش منو 1 رو ميزنم تا وارد add بشه
برای دريافت معدل و شماره دانشجويی مشکل نداره
اما وقتی نام رو ميزنم برنامه اصلا" درست کار نميکنه؟
مشکل از کجاست؟!
با تشکر از پاسخ گويی شما
سلام خسته نباشید دستتون درد نکنه تاپیک به این خوبی راه انداختین من با این تاپیک تونستم خیلی از اشکالاتم رو بر طرف کنم فقط یه چند تا سوال نمونه استادمون داده گفته ازشون تو امتحان ترم میده من رو بعضی هارو هرچی فکر میکنم یا نمیتونم حل کنم یا اگه هم حل کنم اشتباه در میاد اگه لطف کنین به سوال زیر پاسخ بدین ممنون میشم
برنامه ای بنویسید که 100 عدد از کاربر دریافت و اعداد زوج را در ارایه A و اعداد فرد را در ارایه B قرار دهد به روش های زیر
1)به کمک حلقه for
2) به کمک حلقه while
3) به کمک حلقهdo while
راستی اگه مقدوره به زبان c بنویسین چون من تازه شروع کردم ترم یک هم هستم
:n12::n12::n12::n12::n12::n12::n12:
آقا مهرداد تشکر فراوووووووووووووووووووووو وووووووووووووون