آیا مطمئن هستین که عدد دوم از عدد اول بزرگتر هست ؟
Printable View
آیا مطمئن هستین که عدد دوم از عدد اول بزرگتر هست ؟
if گذاشتم براش ولي
بازم جواب نداده
نه فقط گذاشتن if کافی نیست . در این مورد باید از عدد اول -- بشه به عدد دوم و یکی یکی بررسی کنه . اگه عدد اول هم بزرگ باشه باید از عدد اول ++ بشه برسه به عدد دوم . من اینجوری accept گرفتم .
:19:
کد:#include<stdio.h>
main()
{ int x,max=1,i,j,n=1,y,c;
scanf("%d%d",&i,&j);
c=i>j?j:i;
y=j>i?j:i;
if(i==j){
x=y;
do{ n++;
if(x%2==0) x/=2;
else x=3*x+1;
}while(x!=1);
max=n;
printf("%d %d %d",i,j,max);
return 0;
}
while(y!=c){x=y;
do{ n++;
if(x%2==0) x/=2;
else x=3*x+1;
}while(x!=1);
max=n>max?n:max;
y--;
n=1;
}
printf("%d %d %d",i,j,max);
return 0;
}
يكي از اين يه اشكال بگيره !!!
return تويه if(i==j ) اشكالي داره ؟
كلافه شدم.
يعني اگه sin نباشه , سوال هاي ما بي جواب ميمونه؟؟
يكي جواب بده...
یکی اینکه تو مسئله هایی که معلوم نیست ورودی چند تا هستن به جای دستور scanf باید بنویسین :
و دیگه اینکه چرا از do while استفاده کردین ؟ فکرشو نمی کردین که اگه ورودی 1 بده چی میشه ؟کد:while( scanf("%d%d",&i,&j)!=EOF )
{
//Whole code of your program
}
مگه قرار نيست دو تا ورودي بده ؟ i و j ؟؟؟نقل قول:
--------------------
!=eof يعني چي ؟؟کد:while( scanf("%d%d",&i,&j)!=EOF )
موندم جناب sin2x=2sinxcosx این همه حوصله از کجا آورده که این سایت ها رو پیدا مکینه بعد مساله هاشم حل میکنه:31:
آقا ما هم مثل جناب p d تو حل این مثاله عاجز موندیم، من الان این کدو نوشتم، البته نصوشو از p d کپی زدم:31:
آقا یه کمکی کنید ببیینم مشکل از چیه
کد:#include <stdio.h>
#define max(a,b) ((a) > (b) ? (a) : (b))
#define min(a,b) ((a) < (b) ? (a) : (b))
int main()
{
int i, j, c;
int count, max_count;
int n = 0;
while( scanf("%d%d",&i, &j) != EOF )
{
max_count = 0;
i = min(i, j);
j = max(i, j);
for ( c = i; c <= j; c++ )
{
count = 1;
n = c;
while ( n != 1 )
{
if ( n % 2 == 0 )
n /= 2;
else
n = 3*n + 1;
count++;
}
if ( count > max_count )
max_count = count;
}
printf("%d %d %d\n", i, j, max_count);
}
return 0;
}
[QUOTE=p d;4572377]
[/code]!=eof يعني چي ؟؟
/QUOTE]
با سلام
eof یعنی end of file
اگه اینو میدونستین، منظورتون از سوالتون چی بوده؟
با تشکر.
يه نكته هست كه قبلا هم اشاره كردم ولي كسي جواب نداد.
اگه 1 و 1 وارد كنيم, طولش چند بايد باشه ؟؟؟
دو حالت داره :
كه يك فرد هست, ضرب در 3 + 1 كنه و...
يا كه فقط چاپ كنه 1
؟؟؟؟؟؟؟؟؟؟
----
خير اطلاعي نداشتم, خيلي ممنون.
اين عبارت براي كامپايلر مفهوم داره!
[QUOTE=hoax3r;4572419]
البته نصوشو از p d کپی زدم:31:
[/[QUOTE
سورس چه قابله شما رو داره ...
من اشكاله سورستون رو ميگم , شما هم واسه من رو بگيد:31:
اشكال اين هست كه ورودي ها قرار نيست صعودي باشن
يعني امكان داره اولي بزرگتر از دومي باشه
---------
نكات رو اعمال كردم ولي بازم...
کد:#include<stdio.h>
main()
{ int x,max=1,i,j,n=1,y,c;
while( scanf("%d%d",&i,&j)!=EOF ){
c=i>j?j:i;
y=j>i?j:i;
if(i==j){
x=y;
while(x!=1){ n++;
if(x%2==0) x/=2;
else x=3*x+1;
}
max=n;
printf("%d %d %d",i,j,max);
return 0;
}
while(y!=c){x=y;
while(x!=1){ n++;
if(x%2==0) x/=2;
else x=3*x+1;
}
max=n>max?n:max;
y--;
n=1;
}
printf("%d %d %d",i,j,max);
}
return 0;
}