erfankh

New Member
ارسال ها
202
لایک ها
89
امتیاز
0
کد
[/RIGHT]
[RIGHT]#include<iostream.h> 
#include<math.h> 
#include<conio.h> 
int main() 
{ 
    float a,b,c,p,r; 
    cin>>a>>b>>c; 
    p=(a+b+c)/2; 
    r=sqrt(p*(p-a)*(p-b)*(p-c))/p; 
    cout<<r<<endl; 
    getch(); 
    return 0; 
}
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
rezashiri گفت
برنامه ای بنویسید که سه ضلع مثلث را گرفته و شعاع دایره محاطی را محاسبه کند.(برای فرمولش می تونید برین به هندسه 0تا100)
ببخشید ولی یکی از قوانین ماراتن ها اینه که تا وقتی سوال حل نشده وجود داره ، سوال دیگه ای نذاریم.
امیدوارم از این به بعد رعایت بشه.

ضمنا همینجا یک نظرسنجی می کنیم. برای ماراتن برنامه نویسی هم شماره ی سوال بزنیم؟
موافقها و مخالفها همین جا اعلام کنند.
نظر خودم ممتنع هست.
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
erfankh گفت
کد
[/RIGHT]
[RIGHT]#include<iostream.h> 
#include<math.h> 
#include<conio.h> 
int main() 
{ 
    float a,b,c,p,r; 
    cin>>a>>b>>c; 
    p=(a+b+c)/2; 
    r=sqrt(p*(p-a)*(p-b)*(p-c))/p; 
    cout<<r<<endl; 
    getch(); 
    return 0; 
}

واقعا کد قشنگی بود.
 

erfankh

New Member
ارسال ها
202
لایک ها
89
امتیاز
0
موافقم
درمورد سوال هیدروکربن ها به نظرم c2 وجود خارجی نداره چون دو تا کربن نمی تونن باهم چهار تا پیوند بدن این شرط رو در برنامه رعایت کنیم یانه؟
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
erfankh گفت
موافقم
درمورد سوال هیدروکربن ها به نظرم c2 وجود خارجی نداره چون دو تا کربن نمی تونن باهم چهار تا پیوند بدن این شرط رو در برنامه رعایت کنیم یانه؟

فقط ظرفیت رو رعایت کنید و این که هیدروژن باید حتما به کربن وصل شود. مثل گراف.
 

Goharshady1

New Member
ارسال ها
37
لایک ها
0
امتیاز
0
ضمنا توجه کنید که مثلا C2H8 هم وجود دارد
 

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
چشم از این به بعد رعایت می کنم.

این کد من برای سوال خودم!

کد
#include <stdio.h>
#include <math.h>
int main()
{
start:
float r,p,s,a,b,c,z;
printf("---------------------------------------------\n");
printf("adad ha ra be in shekl vared konid:x,y,z\n");
printf("_____________________________________________\n");
printf("please input three number");

scanf("%f,%f,%f",&a,&b,&c);


if (a+b<c)
goto end;

if (a+c<b)
goto end;

if(b+c<a)
goto end;
//-------------------

if (a+b>c)
goto end2;

if (a+c>b)
goto end2;

if(b+c>a)
goto end2;

end:
printf("tashkil mosallas nemidahand\n");
goto start;
return 0;


end2:

p=(a+b+c)/2;
z=p*(p-a)*(p-b)*(p-c);
s=sqrt(z);
r=s/p;

if (p<=a|p<=b|p<=c){
printf("\n");
printf("tashkil mosallas nemdahad\n");
printf("\n");}
else{
printf("\n");
printf("--------------tashkil mosallas midahand---------\n");
printf("\n");
printf("r=%f\n",r);
printf("\n");}
goto start;

return 0;
}
 

Goharshady

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

کد
#include <iostream>
#include <cstdio>
#include <conio.h>
using namespace std;
int main()
{
    cout<<"\a";
    program:
    cout<<"Please enter a hydrocarbon :";
    char hc[40];
    gets(hc);
    int placeofh=-1,placeofc=-1,h=0,c=0;
    for(int i=0;i<strlen(hc);i++)
    {
		  if((hc[I]=='c')||hc[I]=='C')
			placeofc=i;
		  else if((hc[I]=='h')||hc[I]=='H')
			placeofh=i;
    }
    int x=placeofh-placeofc;
    int y=strlen(hc)-placeofh;
    char numofc[x],numofh[y];
    for(int i=placeofc+1;i<=placeofh;i++)
    {
		  numofc[i-placeofc-1]=hc[I];
    }
    for(int i=placeofh+1;i<strlen(hc);i++)
    {
		  numofh[i-placeofh-1]=hc[I];
    }
    if(placeofh!=-1) h=atoi(numofh);
    if(placeofh == strlen(hc)-1) h=1;
    c=atoi(numofc);
    if(placeofc == placeofh-1) c=1;
    if(!strlen(hc))
    {
			 cout<<"\nWhy didn't you enter anything?";	
    }
    else if(h>4*c)
    {
		   cout<<"\nThis is not a hydrocarbon,too few carbons and too many hydrogens!";
    }
    else if((h+4*c)%2)
    {
		   cout<<"\nThis hydrocarbon is impossible!";
    }
    else
    {
	   cout<<"\nThis hydrocarbon may be possible!";
    }
    getch();
    cout<<"\a\n\n\n";
    goto program;
    return 0;
}
[/I][/I][/I][/I][/I][/I]
 

Goharshady

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

این کد من برای سوال خودم!

کد
#include <stdio.h>
#include <math.h>
int main()
{
start:
float r,p,s,a,b,c,z;
printf("---------------------------------------------\n");
printf("adad ha ra be in shekl vared konid:x,y,z\n");
printf("_____________________________________________\n");
printf("please input three number");

scanf("%f,%f,%f",&a,&b,&c);


if (a+b<c)
goto end;

if (a+c<b)
goto end;

if(b+c<a)
goto end;
//-------------------

if (a+b>c)
goto end2;

if (a+c>b)
goto end2;

if(b+c>a)
goto end2;

end:
printf("tashkil mosallas nemidahand\n");
goto start;
return 0;


end2:

p=(a+b+c)/2;
z=p*(p-a)*(p-b)*(p-c);
s=sqrt(z);
r=s/p;

if (p<=a|p<=b|p<=c){
printf("\n");
printf("tashkil mosallas nemdahad\n");
printf("\n");}
else{
printf("\n");
printf("--------------tashkil mosallas midahand---------\n");
printf("\n");
printf("r=%f\n",r);
printf("\n");}
goto start;

return 0;
}

خیلی با سلیقه می نویسید!
مخصوصا printf هاتون رو
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
[center:4ad2a7e714]00000001[/center:4ad2a7e714]
[center:4ad2a7e714]برنامه ای بنویسید که عددی را از ورودی خوانده و فاکتوریل آن را محاسبه کند و به خروجی ببرد. عدد بین 0 تا 20 خواهد بود.[/center:4ad2a7e714]
 

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
Goharshady گفت
[center:f78d57eaf6]00000001[/center:f78d57eaf6]
[center:f78d57eaf6]برنامه ای بنویسید که عددی را از ورودی خوانده و فاکتوریل آن را محاسبه کند و به خروجی ببرد. عدد بین 0 تا 20 خواهد بود.[/center:f78d57eaf6]
این قبلا مطرح نشده؟!؟
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
rezashiri گفت
Goharshady گفت
[center:0c7881fa03]00000001[/center:0c7881fa03]
[center:0c7881fa03]برنامه ای بنویسید که عددی را از ورودی خوانده و فاکتوریل آن را محاسبه کند و به خروجی ببرد. عدد بین 0 تا 20 خواهد بود.[/center:0c7881fa03]
این قبلا مطرح نشده؟!؟

نه ، این با اون فرق داره
برنامه اش رو بنویسید تا بهتون بگم
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
rezashiri گفت
Goharshady گفت
[center:37c5660769]00000001[/center:37c5660769]
[center:37c5660769]برنامه ای بنویسید که عددی را از ورودی خوانده و فاکتوریل آن را محاسبه کند و به خروجی ببرد. عدد بین 0 تا 20 خواهد بود.[/center:37c5660769]
این قبلا مطرح نشده؟!؟
من فرقشو مي گم!!!!!!!!!!
اگه شما برنامه ي قبلي را بنويسيد ، عدد ها محدود مي شوند ، منظورم اينه مثلا اگه عد 20 يا بزرگتر رو به ورودي بزنيد ، خروجي چرت و پرت خواهد بود زيرا در متغير هاي int,.... محدوديت داريم . براي نوشتن اين برنامه بايد از آرايه ها استفاده كنيد!!!!!!
 

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
[center:187c23e919][HIGHLIGHT=#00b0f0]1[/HIGHLIGHT][/center:187c23e919]اینم کدش:

کد
#include <stdio.h>
#include <conio.h>

int main()
{
start:
float fact;
int i,num;

for(;;){
printf("\n type a number:");
scanf("%d",&num);
{

if (num>20)
goto end;

if (num<1)
goto end;

if (0<num<20)

fact=1;
for(i=1;i<=num;i++)
fact*=i;
printf("factorial is :%f",fact);}
}

end:
printf("input one 0<number<21");
goto start;
return 0;
}

حالا چه فرقی داره!؟
 

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
Olympiad گفت
rezashiri گفت
Goharshady گفت
[center:d54bc01dde]00000001[/center:d54bc01dde]
[center:d54bc01dde]برنامه ای بنویسید که عددی را از ورودی خوانده و فاکتوریل آن را محاسبه کند و به خروجی ببرد. عدد بین 0 تا 20 خواهد بود.[/center:d54bc01dde]
این قبلا مطرح نشده؟!؟
من فرقشو مي گم!!!!!!!!!!
اگه شما برنامه ي قبلي را بنويسيد ، عدد ها محدود مي شوند ، منظورم اينه مثلا اگه عد 20 يا بزرگتر رو به ورودي بزنيد ، خروجي چرت و پرت خواهد بود زيرا در متغير هاي int,.... محدوديت داريم . براي نوشتن اين برنامه بايد از آرايه ها اتساده كنيد!!!!!!
الآن کد من مشکل داره!؟!؟
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
[center:80a9743a60]1[/center:80a9743a60]
متاسفانه جواب اشتباهه!​
این هم نتایج تست:​
Test 1:OK​
Test 2:Wrong​
Test 3:Wrong​
Test 4:Wrong​
Test 5:Wrong​
Test 6:Wrong​
یک راهش استفاده از روشیه که آقا حسام گفت. ولی اون بیشتر به درد وقتی می خوره که بخواهیم 100 فاکتوریل را حساب کنیم. برای این سوال به جای int می شه از long long double استفاده کرد تا مشکل محدودیت حل بشه.​
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
rezashiri گفت
Olympiad گفت
rezashiri گفت
Goharshady گفت
[center:a0e6e0da0e]00000001[/center:a0e6e0da0e]
[center:a0e6e0da0e]برنامه ای بنویسید که عددی را از ورودی خوانده و فاکتوریل آن را محاسبه کند و به خروجی ببرد. عدد بین 0 تا 20 خواهد بود.[/center:a0e6e0da0e]
این قبلا مطرح نشده؟!؟
من فرقشو مي گم!!!!!!!!!!
اگه شما برنامه ي قبلي را بنويسيد ، عدد ها محدود مي شوند ، منظورم اينه مثلا اگه عد 20 يا بزرگتر رو به ورودي بزنيد ، خروجي چرت و پرت خواهد بود زيرا در متغير هاي int,.... محدوديت داريم . براي نوشتن اين برنامه بايد از آرايه ها اتساده كنيد!!!!!!
الآن کد من مشکل داره!؟!؟

بله
ببینید مشکلش اینه که int محدوده داره ، یعنی از یه عددی بزرگتر توش جا نمی شه ولی !20 خیلی از محدوده ی int بزرگتره.
 

Olympiad

New Member
ارسال ها
1,268
لایک ها
134
امتیاز
0
rezashiri گفت
Olympiad گفت
rezashiri گفت
Goharshady گفت
[center:d000349e54]00000001[/center:d000349e54]
[center:d000349e54]برنامه ای بنویسید که عددی را از ورودی خوانده و فاکتوریل آن را محاسبه کند و به خروجی ببرد. عدد بین 0 تا 20 خواهد بود.[/center:d000349e54]
این قبلا مطرح نشده؟!؟
من فرقشو مي گم!!!!!!!!!!
اگه شما برنامه ي قبلي را بنويسيد ، عدد ها محدود مي شوند ، منظورم اينه مثلا اگه عد 20 يا بزرگتر رو به ورودي بزنيد ، خروجي چرت و پرت خواهد بود زيرا در متغير هاي int,.... محدوديت داريم . براي نوشتن اين برنامه بايد از آرايه ها اتساده كنيد!!!!!!
اۀن کد من مشکل داره!؟!؟
كد مشكلي نداره (البته يه مشكل داره !0=1)
اما كد شما الان ميتونه عدد !20 رو محاسبه كنه؟؟؟؟؟؟؟؟؟؟؟؟؟؟.....شما عدد 20 رو بديد به كامپيوتر ، اونوقت مي بينيد كه چرت و پرت مي نويسه چون عدد بزرگي ميشه!
 

Goharshady

New Member
ارسال ها
2,239
لایک ها
166
امتیاز
0
[center:c9225296b1]00000001[/center:c9225296b1][center:c9225296b1]این هم جواب صحیح سوال:[/center:c9225296b1][center:c9225296b1]http://snipt.net/Goharshady/factorial-2/
[/center:c9225296b1]
 

rezashiri

Well-Known Member
ارسال ها
1,458
لایک ها
325
امتیاز
83
Olympiad گفت
rezashiri گفت
Olympiad گفت
rezashiri گفت
Goharshady گفت
[center:dddbf747d2]00000001[/center:dddbf747d2]
[center:dddbf747d2]برنامه ای بنویسید که عددی را از ورودی خوانده و فاکتوریل آن را محاسبه کند و به خروجی ببرد. عدد بین 0 تا 20 خواهد بود.[/center:dddbf747d2]
این قبلا مطرح نشده؟!؟
من فرقشو مي گم!!!!!!!!!!
اگه شما برنامه ي قبلي را بنويسيد ، عدد ها محدود مي شوند ، منظورم اينه مثلا اگه عد 20 يا بزرگتر رو به ورودي بزنيد ، خروجي چرت و پرت خواهد بود زيرا در متغير هاي int,.... محدوديت داريم . براي نوشتن اين برنامه بايد از آرايه ها اتساده كنيد!!!!!!
اۀن کد من مشکل داره!؟!؟
كد مشكلي نداره (البته يه مشكل داره !0=1)
اما كد شما الان ميتونه عدد !20 رو محاسبه كنه؟؟؟؟؟؟؟؟؟؟؟؟؟؟.....شما عدد 20 رو بديد به كامپيوتر ، اونوقت مي بينيد كه چرت و پرت مي نويسه چون عدد بزرگي ميشه!
من که 20 بهش می دم اینو می نویسه:
2432902023163674620.00000
 
بالا