PDA

View Full Version : سوال: چک کردن ورودی برای باینری بودن. کمک



Shiva.K
پنج شنبه 13 خرداد 1389, 13:46 عصر
این برنامه یک گیر کوچیک داره لطفآ کمکم کنید.
مثلآ اگه 357 وارد کنید میگه The number is not binary ولی اگه 152 یا هر عددی که توش 0 یا 1 داشته باشه رو میگه باینری که اشتباه!


#include <iostream.h>




#include <conio.h>

int main()
{
int n,r,s=0;
cout<<"Enter number:";
cin>>n;
while (n>0){
r=n%10;//for sum
n/=10;}//for count
if (r==0 || r==1)
cout<<"The num is binary."<<endl;
else cout<<"The num is not binary!"<<endl;
getch();
return 0;

}

tdkhakpur
پنج شنبه 13 خرداد 1389, 13:52 عصر
#include <conio.h>

int main()
{
int n,r,s=0;
bool IsBin=true;
cout<<"Enter number:";
cin>>n;
while (n>0 && IsBin){
r=n%10;//for sum
n/=10;}//for count
if (r!=0 && r!=1) IsBin = false;
}
if( IsBin )
cout<<"The num is binary."<<endl;
else
cout<<"The num is not binary!"<<endl;
getch();
return 0;
}

Salar Ashgi
پنج شنبه 13 خرداد 1389, 16:54 عصر
#include <iostream>
#include <conio>
int main(){
int n;
cout<<"Enter a num :\n";
cin>>n;
bool res = true;
int x;
while(n!=0){
x = n%10;
if(x>1){
res = false;
break;}
n/=10;}
cout<<res<<endl;
}
دسترسی به کامپایلر نداشتم ، ممکنه اشکال در اجرا داشته باشه ولی الگوریتم درسته !