سلام دوستان
ممنون میشم ببینین اشکال این چندتا برنامه چیه؟
کد:http://www.up.--------.com/images/6ua44cnd35gho6ctfof.rar
Printable View
سلام دوستان
ممنون میشم ببینین اشکال این چندتا برنامه چیه؟
کد:http://www.up.--------.com/images/6ua44cnd35gho6ctfof.rar
سلام
سال نوع مبارک
دوست عزیز قبل از هرچیز اینو بگم که کد ها به ترتیب اجرا می شوند
در فایل 10_Tafazole_Adad_Maghlub.CPPشما قبل از مقدار دهی متغیر A آن را در m کپی کرده اید که این عمل اگر هم خطا ندهد درست هم اجرا نخواهد شدکد:#include<iostream.h>
int main()
{
int a,varun=0,m=a,t=1,k=1,r;
cin>>a;
//------
while (a>9)
{t=t+1;k=k*10;a=a/10;}
a=m;
while (a>0)
{r=a%10;varun=r*k+varun;k=k/10;a=a/10;}
if (m>varun)
cout<<m-varun;
cout<<varun-m;
return 0;
}
برای تصحیح قسمت قرمز رنگ را حذف و در قسمت آبی رنگ کد زیر را بنویسید
در اینجا باز هم خطای قبلی اتفاق افتادهکد:int m=a;
رفع مشکلکد:#include<iostream.h>
int main()
{
int a,b,i=1,c=a;
cin>>a;
//---------
cin>>b;
while (i<b)
{a=a+c;i=i+1;}
cout<<a;
return 0;
}
سومی از نظر من مشکلی نداشتکد:int c=a;
چهارمی هم نداشتکد:#include<iostream.h>
int main()
{
int a,b,max,min,temp;
cin>>a>>b;
if (a==b)
cout<<a;
if (a>b)
{max=a;min=b;}
else
{max=b;min=a;}
max=max-min;
while (max>min)
max=max-min;
if (max==min)
cout<<min;
{temp=min;min=max;max=temp;}
return 0;
}
نداشتکد:#include<iostream.h>
int main()
{
int a;
cin>>a;
a=a/100;
cout<<a%10;
return 0;
}
همانند مشکل قبلیکد:#include<iostream.h>
int main()
{
int n,x,sum=1,i=0,s=x;
cin>>x>>n;
while (i!=n)
{sum=sum+s;s=s*x;i=i+1;}
cout<<sum;
return 0;
}
مشکل قبلیکد:#include<iostream.h>
int main()
{
int x,n,sum=1,i=0,s=x,f=1;
cin>>x>>n;
//----------
while (i!=n)
{sum=sum+s/f;cout<<"x^"<<i<<"/"<<i<<"!"<<"+";
s=s*x;i=i+1;f=f*(i+1);}
{cout<<"x^"<<i<<"/"<<i<<"!"<<"="<<sum;}
return 0;
}
نداردکد:#include<iostream.h>
int main()
{
int a,t=0,a1=a;
cin>>a;
//---------
while (a>0)
{a=a/10;t=t+1;}
if (t%2==0)
{cout<<"raghame_vasat_nadarad";return 0;}
else
{t=t/2;
while (t>0)
{a1=a1/10;t=t-1;}
cout<<a1%10;}
return 0;
}
و اینجا هم یک { اضافهکد:#include<iostream.h>
int main()
{
int a,b,t=0,a1,b1,max,min,temp,n,m;
cin>>a>>b;
a1=a/10;b1=b/10;
a1=a1%10;b1=b1%10;
if (a1>b1)
{max=a1;min=b1;m=a;n=b;}
else
{max=b1;min=a1;m=b;n=a;}
temp=min
while (min!=max)
{min=min+1;t=t+1;}
{n=t*10+n;m=m-t*10;}
cout<<n<<m;
return 0;
}
از نظر من که فکر کنم مشکلها فقط همین بود ولیکد:#include<iostream.h>
int main()
{
int a,b,max,min,m,n;
cin>>a>>b;
if (a>b)
{max=a;min=b;}
else
{max=b;min=a;}
while (min>0)
{n=min%10;min=min/10;m=max%10;max=max/10;}
while (m!=n)
{if (max>0)
{m=max%10;max=max/10;}
else
cout<<"kheyr";}}
cout<<"bale";
return 0;
}
کد ها را کامل گذاشتم که اگه مشکلی بود دوستان بگن
به قسمت قرمز رنگ نگاه کنیدشما SHR را تعریف کرده اید ولی مقدار دهی نکرده ایدکد:#include "stdafx.h"
#include <iostream>
using std::cin;
using std::cout;
using std::endl;
#include <cmath>
#include <string>
#include <cstdlib>
using namespace std;
int PSR (char);
int main()
{
char a;
int b;
cin>>a;
b=PSR(a);
cout<<b<<endl;
system ("Pause");
return 0;
}
int PSR (char n){
char SHR;
if (n==SHR)
return 16;
else
return -1;
}
و آن را با متغیر مقدار دهی شده در خط بعد مقایسه می کنید
خیلی ممنونم محبوبه جان؛ :11:
مثل اینکه یه مشکل داشتم و توی 5 تاش تکرار کردم!
=
هنوز توی 4 تای باقی مونده مشکل دارم.
توی این یکی:
کد:#include<iostream.h>
int main()
{
int a,b,max,min,temp;
cin>>a>>b;
if (a==b)
cout<<a;
if (a>b)
{max=a;min=b;}
else
{max=b;min=a;}
max=max-min;
while (max>min)
max=max-min;
if (max==min)
cout<<min;
{temp=min;min=max;max=temp;}
return 0;
}
میخوام ب م م دو عدد رو چاپ کنه. وقتی دوتا عدد میدم که یکی بر دیگری بخش پذیره، درست چاپ میکنه. اما مشکلم توی حالتهای دیگه س.
میدونم که توی قسمت while هام مشکل دارم. اون قسمتی که قرمز کردم میخوام باز تکرار بشه اما نمیدونم کجا و چطوری بذارمش.
===========
توی این یکی:
میخوام صدگان عدد رو چاپ کنه. وقتی عدد سه رقمی بهش میدم درست کار میکنه، اما وقتی تعداد رقم میره بالا، خراب میکنه.کد:
#include<iostream.h>
int main()
{
int a;
cin>>a;
a=a/100;
cout<<a%10;
return 0;
}
نمیدونم مشکل کجاس؟
=======
این یکی:
میخوام دهگان دو عدد رو جابجا کنه.کد:
#include<iostream.h>
int main()
{
int a,b,t=0,a1,b1,max,min,temp,n,m;
cin>>a>>b;
a1=a/10;b1=b/10;
a1=a1%10;b1=b1%10;
if (a1>b1)
{max=a1;min=b1;m=a;n=b;}
else
{max=b1;min=a1;m=b;n=a;}
temp=min
while (min!=max)
{min=min+1;t=t+1;}
{n=t*10+n;m=m-t*10;}
cout<<n<<m;
return 0;
}
توی قسمتی که قرمز کردم ارور میده که: Statement Is Missing
نمیدونم چرا؟
========
و توی این یکی هم:
میخوام دو عدد بگیره و ببینه اونی که رقم کمتر داره عینا توی اون یکی پیدا میشه یا نه؟کد:
#include<iostream.h>
int main()
{
int a,b,max,min,m,n;
cin>>a>>b;
if (a>b)
{max=a;min=b;}
else
{max=b;min=a;}
while (min>0)
{n=min%10;min=min/10;m=max%10;max=max/10;}
while (m!=n)
{if (max>0)
{m=max%10;max=max/10;}
else
cout<<"kheyr";}}
cout<<"bale";
return 0;
}
اما هر مثالی میدم یه چیز میگه! یه بار دست جواب میده، یه بار یه عالمه خیر پشت هم میده و اکثرا هم اشتباه میکنه.
اینم نمیدونم مشکلش کجاس.
ممنون [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
برنامه اوتون رو يه ذره تغيير دادم شد اين فكر كنم خيلي راحت بشه اين رو فهميد
نقل قول:
#include<iostream.h>
#include<conio.h>
int main(){
int a,b,max,min,temp;
cin>>a>>b;
if(a>b){
max=a;
min=b;
}
else{
max=b;
min=a;
}
while(min!=0){
temp=max%min;
max=min;
min=temp;
}
cout<<max;
getch();
return 0;
}
برنامه دوم مشكلي نداشت من امتحن كردم
در برنامه سوم
هر وقت اين خطا رو ديديد بدونيد انتهاي خط قبلي ; نگذاشتيد
برنامه چهارم هم يه راه حل ساده تر داره اما الان ساعت شش صبحه و من بيداره خوابم
در قسمت اول ارور بخاطر } ابتدایی و { انتهایی می باشد که نیازی به آن نیست ولی شما
استفاده کردید ( کلا پیشنهاد می کنم این خط (خط قرمز رنگ) را حذف کنید
دومی :اگر در قسمت آبی رنگ کد زیر را بنویسید مشکلیان حل می شودکد:#include<iostream.h>
int main()
{
int a;
cin>>a;
//-------
a=a/100;
cout<<a%10;
return 0;
}
در قسمت سوم همکد:a%=1000;
اگر } ابتدایی و { انتهایی را حذف کنید مشکل حل می شودکد:#include<iostream.h>
int main()
{
int a,b,t=0,a1,b1,max,min,temp,n,m;
cin>>a>>b;
a1=a/10;b1=b/10;
a1=a1%10;b1=b1%10;
if (a1>b1)
{max=a1;min=b1;m=a;n=b;}
else
{max=b1;min=a1;m=b;n=a;}
temp=min
while (min!=max)
{min=min+1;t=t+1;}
{n=t*10+n;m=m-t*10;}
cout<<n<<m;
return 0;
}
در قسمت آخر همبله عبارت kheyr می تواند صفر 1،2،... بار به صورت تکراری چاپ شود و آن هم بخاطر این است که در حلقه واقع شده است و هرگاه شرطکد:#include<iostream.h>
int main()
{
int a,b,max,min,m,n;
cin>>a>>b;
if (a>b)
{max=a;min=b;}
else
{max=b;min=a;}
while (min>0)
{n=min%10;min=min/10;m=max%10;max=max/10;}
while (m!=n)
{if (max>0)
{m=max%10;max=max/10;}
else
cout<<"kheyr";}}
cout<<"bale";
return 0;
}
قرمز رنگ برقرار نباشد یک بار این عبارت چاپ می شود
(در خط سبز رنگ حتما باید یکی از { حذف شود )
موفق باشید
خیلی ممنونم از اینکه وقت گذاشتین :11:
این علامت %= رو نخوندم، چه معنی میده؟نقل قول:
اگر در قسمت آبی رنگ کد زیر را بنویسید مشکلیان حل می شود
کد:
a%=1000;
این کارو هم کردم و حل نشد.نقل قول:
بله عبارت kheyr می تواند صفر 1،2،... بار به صورت تکراری چاپ شود و آن هم بخاطر این است که در حلقه واقع شده است و هرگاه شرط
قرمز رنگ برقرار نباشد یک بار این عبارت چاپ می شود
(در خط سبز رنگ حتما باید یکی از { حذف شود )
موفق باشید
راه دیگه ای داره؟
به نام خدا
سلام
من یه بار این سوال رو پرسیدم
اگه این بار هم جواب نگرفتم دیگه اصرار نمیکنم
لطفاً لینککامپایلر ++c اپن سورس رو از سایت سورس فورج یا سایتی دیگه بدین ممنونم میشم
عبارتنقل قول:
خیلی ممنونم از اینکه وقت گذاشتین
نقل قول:اگر در قسمت آبی رنگ کد زیر را بنویسید مشکلیان حل می شود
کد:
a%=1000;
این علامت %= رو نخوندم، چه معنی میده؟
همان کدکد:a%=100;
استکد:a=a%1000;
اینجا من گفتم که یک { اضافه گذاشته اید که باعث خطا می شودنقل قول:
نقل قول:بله عبارت kheyr می تواند صفر 1،2،... بار به صورت تکراری چاپ شود و آن هم بخاطر این است که در حلقه واقع شده است و هرگاه شرط
قرمز رنگ برقرار نباشد یک بار این عبارت چاپ می شود
(در خط سبز رنگ حتما باید یکی از { حذف شود )
موفق باشید
این کارو هم کردم و حل نشد.
راه دیگه ای داره؟
اما عبارت keyr همچنان تکرار خواهد شد چون درون حلقه می باشد
اگه پیدا کردی یه ندا هم به ما بدهنقل قول:
من یه بار این سوال رو پرسیدم
اگه این بار هم جواب نگرفتم دیگه اصرار نمیکنم
لطفاً لینککامپایلر ++c اپن سورس رو از سایت سورس فورج یا سایتی دیگه بدین ممنونم میشم
مرسی
کجا قرارش بدم تا درست کار کنه؟نقل قول:
اما عبارت keyr همچنان تکرار خواهد شد چون درون حلقه می باشد
:11: