PDA

View Full Version : سوال: تبدیل داده ها به صفر و یک



RahimiAdel
سه شنبه 21 اردیبهشت 1389, 14:49 عصر
سلام دوستان عزیز یه راهنمای لازم داداشتم
می خوام برنامه ای بنویسم که ورودی از کار بر بگیره ولی در آخر برنامه اونو به صورت 01همون زبان کامپیوتر چاپ کنه در کل می خوام به صورت رمز باشه فقط کسای که باهاش سروکار دارن بفهمن با برنامه Cاجرای هست یا نه:متفکر:

saber187518
سه شنبه 21 اردیبهشت 1389, 15:01 عصر
با سلام
دوست عزیز زبان c رو دست کم نگیر.
تقریبا هر کاری از این زبان بر میاد.
این کاری هم که میفرمایید شدنی هست. کافیه که بلد باشی و یک مقدار رو که از کاربر میگیری به باینرب تبدیل کنی.
اگه خواستی بگو کدش رو برات بذارم.
--------------------------------------------------
اللهم العن قاتلی فاطمه الزهرا

Salar Ashgi
سه شنبه 21 اردیبهشت 1389, 15:05 عصر
می خوام برنامه ای بنویسم که ورودی از کار بر بگیره


این ورودی از چه نوع داده ای است ؟

RahimiAdel
چهارشنبه 22 اردیبهشت 1389, 11:08 صبح
سلام
دوستان ممنون از راهنمای هایه مفیدتون
آقا سالار مگه تبدیل داده به صفر و یک به نوع داده هم مربوط می شه مثلا اگه از نوع intیاfloatیاcharباشه یا فقط همون تو ابتدا که داده رو به ورودی می دیم باهم فرق می کنه یا کل برنامه تغییر می کنه :متفکر:

Salar Ashgi
چهارشنبه 22 اردیبهشت 1389, 13:06 عصر
سلام
دوستان ممنون از راهنمای هایه مفیدتون
آقا سالار مگه تبدیل داده به صفر و یک به نوع داده هم مربوط می شه مثلا اگه از نوع intیاfloatیاcharباشه یا فقط همون تو ابتدا که داده رو به ورودی می دیم باهم فرق می کنه یا کل برنامه تغییر می کنه :متفکر:

100 درصد ، حالا با هر الگوریتمی که باشه تبدیل یه int یا float به 0 و1 یعنی در واقع معادل

باینری آن عدد ، ولی در مورد یه string (رشته) چه میتوان گفت ؟ البته برای اینکه یه رشته رو

هم به 0 و1 تبدیل کنیم باز الگوریتم هایی متنوعی میتوان ذکر کرد ولی خوب معادل باینری

برای رشته ای مثل "salam " معنا ندارد !

tdkhakpur
چهارشنبه 22 اردیبهشت 1389, 13:41 عصر
مگه تبدیل داده به صفر و یک به نوع داده هم مربوط می شه
نه اصلا ارتباطی به نوع داده ندارد اساسا همه دادها به نوعی بایتهای 8 بیتی هستند که کنار هم قرار گرفته اند.

RahimiAdel
چهارشنبه 22 اردیبهشت 1389, 19:34 عصر
سلام
ممنون دوستان از راهنماهایی مفیدتون
این آخریشه دوستان ببخشید زیاد سوال می پرسم می خوام خوب یاد بگیرم خوب اگه داده هامون از نوع intباشند یعنی اعدادصحیح به چه صورت به صفر ویک تبدیل می شن یکم سادتر توضیح بدین منم بفهم بازم ببخشید
مثلا عدد452 که خودش عدده معادلش به صفرو یک چی میشه اگه میشه یه کتاب درمورد برنامه Cمعرفی کنیدممنون می شم بازم ببخشید که زیاد سوال می پرسم:افسرده:

mohsensaghafi
چهارشنبه 22 اردیبهشت 1389, 20:51 عصر
سلام دوست عزیز.
نمایش اعداد بصورت باینری راه های مختلفی داره. یکیش اینه که بیای تبدیلش کنی به مبنای 2. با تقسیم های متوالی.
یه راه دیگش هم کد BCD هستش که در این کد هر رقم رو در 4 بیت بصورت باینری نمایش می دن. در واقع عدد رو بصورت رقم های اون ذخیره می کنن. مثلاً:


439 -> 0100 0011 1001
894 -> 1000 1001 0100

tdkhakpur
چهارشنبه 22 اردیبهشت 1389, 20:52 عصر
اگه داده هامون از نوع intباشند یعنی اعدادصحیح به چه صورت به صفر ویک تبدیل می شن یکم سادتر توضیح بدین منم بفهم بازم ببخشید

کد ارسال شده توسط جناب Negative_Se7en (http://barnamenevis.org/forum/member.php?u=134418) کاملا کلی بوده و میتوانید اندازه را هم به تابع ارسال کنید پس با توجه به خواسته شما باید داخل main خط زیر را جایگزین کنید.


char* mData = "barnamenevis.org";
int d = 452;
print_binary(&d, sizeof(int));

Salar Ashgi
چهارشنبه 22 اردیبهشت 1389, 22:33 عصر
اگه داده هامون از نوع intباشند یعنی اعدادصحیح به چه صورت به صفر ویک تبدیل می شن


اینم یه مثال ساده برای تبدیل عدد صحیح به معادل باینریش (مبنای 2) :



#include <iostream>
#include <conio>
void Binary(int n){
if(n<2)
cout<<n;
else{
Binary(n/2);
cout<<n%2;}
}
//=====================
int main(){
int n;
cout<<"Enter a decimal number :\n";
cin>>n;
cout<<"===============\n";
cout<<"Binary of("<<n<<") : ";
Binary(n);
cout<<endl;
getch();
}


اصول کار هم بر این استواره که : ما باید هر سری عدد رو تقسیم بر 2 کنیم و باقیمانده ها رو ذخیره کرده

و اونها رو از آخر به اول چاپ کنیم .

danial82
چهارشنبه 05 آبان 1389, 17:06 عصر
هر کاراکتر یک بایت است چجوری میتوانم به بیتهای آن دسترسی داشته باشم؟