Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
سوال ساده ای است.
به شما یک سری متن داده می شود (که عنوان تعدادی سی دی هستند) تعداد عنوانها حداکثر 50 تا است. شما باید عنوانها را به صورت افقی گرفته و به شکل عمودی به خروجی ببرید. بعضی عنوانها طولانی هستند به همین دلیل برای به خروجی بردن آنها می توانید فقط 36 حرف اول را به خروجی ببرید.
مثلا یک خروجی به این شکل تولید کنید:
[center:3d8cf48c4f]
[/center:3d8cf48c4f]
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
این کد من است که باگ هم دارد، باگش هم اینه که وقتی اسپیس می زنید میره به متغیر بعدی!
کد
#include <iostream.h>
#include <conio.h>
#include <cstring.h>
int main()
{
loop:
register int i,j;
clrscr();
cout<<"How many titles would you like to enter?\n";
int num =0;
cin>>num;
if(num>50) {cout<<"\nThis is bigger than what you wanted!!\n"; getch(); goto loop;}
string array[51];
for( i=1;i<=num;i++)
{
cout<<"\nPlease enter title number "<<i<<"    ";
cin>>array[i];
}
cout<<"\n";
for(i=0;i<num+num+1;i++) cout<<"-";
for(i = 0;i<37;i++)
{
cout<<"\n|";
for(j=1;j<=num;j++)
{
if(array[j].length()>i)
{
cout<<array[j].substr(i,1)<<"|" ;
}
else if(array[j].length()==i) cout<<" |";
else
{
cout<<" |";
}
}
}

getch();
return 1234567890;
}
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
سوال بعدي : برنامه اي بنويسيد كه عددي را از ورودي گرفته و فاكتوريل آن را محاسبه كند و در خروجي چاپ نمايد.
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
شما فکری برای وضعیت باگ من ندارید؟؟
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
الان مخم تو هنگه (هنگ هم نبود نميتونستم كاري كنم
)
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
کد
#include <iostream.h>
long unsigned int fact(int number)
{
register long unsigned int fac =1;
for(int i=1;i<=number;i++) fac*=i;
return fac;
}
int main()
{
cout<<"\nPlease enter a number: ";
int number;
cin>>number;
cout<<number<<"! ="<<fact(number);
}
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
سوال بعدی لطفا!
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
سوال بعد : برنامه اي بنويسيد كه معدل 5 نفر دانشجو را گرفته و بزرگترين آن ها را پيدا و در خروجي چاپ كند.(با استفاده از آرايه ها)
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
مطمئنید که در حال سر کار گذاشتن من نیستید؟ اینها که خیلی ساده اند!!! سختش کنید لطفا

این کد برای اعداد طبیعی است:
کد
#include <iostream.h>
int main()
{
int array[5];
for(int i=0;i<5;i++)
{
cout<<"\nPlease enter average number "<<i+1<<"  ";
cin>>array[I];
}
int max =0;
for(int j=0;j<5;j++)
{
if(array[j]>max) max=array[j];
}
cout<<"\nMaximum is "<<max<<".";
}
[/I]
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
این هم با 6 رقم اعشار

کد
#include <iostream.h>
void main()
{
float array[5];
for(int i=0;i<5;i++)
{
cout<<"\nPlease enter average number "<<i+1<<"  ";
cin>>array[i];
}
float max =0;
for(int j=0;j<5;j++)
{
if(array[j]>max) max=array[j];
}
cout<<"\nMaximum is "<<max<<".";
}
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
بعدي : برنامه اي بنويسيد كه عددي n را به عنوان ورودي گرفته و جمله n ام دنباله ي فيبوناچي را محاسبه و چاپ كند...
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
این هم ته دقت ++C:
کد
#include <iostream.h>
void main()
{
unsigned long double array[5];
for(int i=0;i<5;i++)
{
cout<<"\nPlease enter average number "<<i+1<<"  ";
cin>>array[i];
}
unsigned long double max =0;
for(int j=0;j<5;j++)
{
if(array[j]>max) max=array[j];
}
cout<<"\nMaximum is "<<max<<".";
}
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
Olympiad گفت
بعدي : برنامه اي بنويسيد كه عددي n را به عنوان ورودي گرفته و جمله n ام دنباله ي فيبوناچي را محاسبه و چاپ كند...
برای این مورد دو تا برنامه می شه نوشت. یکی استفاده از فرمول کلی است که خیلی آسانتر است و دومی این است که یکی یکی حساب کنیم!!
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
هر كدوم رو حال مي كني بنويس ( يعني اوليه!!!
)
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
کد روش دوم که یک لم هم دارد:
کد
#include <iostream.h>
#include <conio.h>
void main()
{
loop:
clrscr();
register long unsigned int f1=1,f2=1,n;
cout<<"\nPlease enter n";
cin>>n;
for(int i=3;i<=n;i++)
{
f1=f1+f2;
//now i want to change f2 and f1
f2=f1+f2;
f1=f2-f1;
f2=f2-f1;
//they are changed
}
cout<<"\nResult is:"<<f2;
getch();
goto loop;
}
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
لم: می خواهیم دو عدد از ورودی بخوانیم و بدون استفاده از متغیر اضافی آن دو را جا به جا کنیم:
کد
#include <iostream.h>
void main()
{
int f1,f2;
cin>>f1;
cin>>f2;
f2=f1+f2;
f1=f2-f1;
f2=f2-f1;
cout<<"f1="<<f1;
cout<<"\nf2="<<f2;
}
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
صبر کنید تا کد اولیه را هم بنویسم
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
چه جالب!! من مسدود شده ام و نمی توانم پیغام کوتاه بدهم!!
 
بالا