PDA

View Full Version : لطفآ راهنمایی کنید تا شروع کنم



Shiva.K
چهارشنبه 26 خرداد 1389, 19:53 عصر
سلام به همگی:لبخند::

تو مرحله ی اول باید فرض کنیم که کاربر یک عدد 5 رقمی وارد می کنه و ما باید تک تک رقم ها رو از کاربر بگیریم و تو خونه های آرایه بریزیم. اگه این ریختنمون برعکس باشه یعنی آخرین رقمی که کاربر وارد کرده تو اولین خونه ی آرایه ذخیره کنیم دیگه تو جمع دو تا عدد که تعداد ارقامشون با هم برابر نیست مشکلی نداریم چون تو جمع همیشه باید از یکان شروع کنیم اینطوری مطمينیم که همه ی یکان ها و صدگان ها و... زیر هم قرار می گیرند. بعد از این کارها باید تک تک خونه ها رو جمع کنیم و بریزیم تو یک آرایه ی دیگهHow?.

تو مرحله ی بعد دیگه باید برای گرفتن دوعدد تعداد ارقام رو از کاربر بپرسیم بعد 5 تا 5 تا از کاربر رقم بگیریم. مثلآ اگه کاربر خواست اولین عددش 20 رقمی باشه باید 4 بار ازش بخوایم 5 تا 5 تا ارقام رو وارد کنه ما هم باید 5 تا 5 تا اون ها رو بریزیم تو یک آرایه بعد ادغام کنیم و کل عدد رو تو یک آرایه ثبت کنیم. همین کار وا3 عدد دوم و بعدش جمع و:متفکر:....
خیلی ممنون میشم اگه برای شروع به خصوص در قسمت جمع تک تک خونه های آرایه راهنماییم کنید. ممنون:لبخندساده:

ztx4
چهارشنبه 26 خرداد 1389, 21:04 عصر
int a[5];
int b[5];
int c[5];
for(int i=0;i<5;i++)
c[i]=a[i]+b[i];

Web.Designer01
چهارشنبه 26 خرداد 1389, 21:20 عصر
سلام عرض شد:
خب دوست عزیز بسم الله رو بگو و دست به کار شو ،هرجا گیر کردی بپرس؛الگوریتمی که گفتیو پیاده سازیش کن دیگه!
جمع دو تا عدد 5 رقمی حداکثر میشه 6 رقم،بنابراین دوتا آرایه 5 خانه ای و یه آرایه 6 تایی(برای محاسبه حاصل جمع) تعریف کن و طبق همون قاعده که گفتی آرایه ها رو پر کن و تو یه حلقه For ساده اونارو با هم جمع کن.
برای 20 تایی هم همینجوریه،فقط چرا باید 5 تا 5تا از کاربر ارقام عددو بگیریم؟!

Shiva.K
پنج شنبه 27 خرداد 1389, 12:41 عصر
برای 20 تایی هم همینجوریه،فقط چرا باید 5 تا 5تا از کاربر ارقام عددو بگیریم؟!


خوب چون حداکثر قراره اعداد 200 رقمی باشند 5 رقم 5 رقم از کاربر می گیریم.
باشه شروع می کنم و تا جایی که تونستم کد بنویسم میذارم تو تالار ولی قرار اینه که تا آخرش کمکم کنید:تشویق:

ztx4
پنج شنبه 27 خرداد 1389, 19:59 عصر
خوب چون حداکثر قراره اعداد 200 رقمی باشند 5 رقم 5 رقم از کاربر می گیریم.
باشه شروع می کنم و تا جایی که تونستم کد بنویسم میذارم تو تالار ولی قرار اینه که تا آخرش کمکم کنید:تشویق:

شما شروع کنید...نگران نباشید ما در خدمتتون هستیم.

Web.Designer01
پنج شنبه 27 خرداد 1389, 20:11 عصر
خوب چون حداکثر قراره اعداد 200 رقمی باشند 5 رقم 5 رقم از کاربر می گیریم.
خب 200 رقمشو یهو میگیریم،مگه نمیشه؟
حالا بیخیال شما همون 5 رقم 5رقمشو بنویس.


باشه شروع می کنم و تا جایی که تونستم کد بنویسم میذارم تو تالار ولی قرار اینه که تا آخرش کمکم کنید:تشویق:
چشم،من تا جایی که از دستم بر میاد کمکت میکنم،قطعا رو کمک بقیه دوستان هم میتونی حساب کنی:قلب:

Shiva.K
یک شنبه 30 خرداد 1389, 21:58 عصر
سلام به دوستان عزیز ،


این کدخیلی ناقصه، اشتباهم جواب میده! راستش تو منبع هایی که دارم گشتم ولی همشون تو مبحث آرایه های یک بعدی ضعف دارن فوری پریدن تو آرایه های دو بعدی و هنوز این دو تا کامل نشده رفتن سراغ ماتریسا و بعد خداحافظ فصل بعد...:ناراحت:


حتی اگه بر عکس ریختن ارقام ورودی توسط کاربر تو تک تک خونه های آرایه رو نادیده بگیریم (که کار اصلآ خوبی نیست و بعد دردسر میشه، چون ممکن دو عدد ورودی تعداد ارقامشون یکی نباشه این کار باعث میشه که مطمئن شیم یکان ها و... دو عدد زیر هم قرار میگیرن و مشکلی تو جمعشون نداریم) بازم ایراد داره. فعلا فرض کردم حداکثر اعداد ورودی 5 رقمی هستن تا بعد....


همه ی سعی و تلاشم این برنا مه ی پر ایراد بود. :لبخند:


Help me, please!



راستی ztx4 ما خودمون محتاجیم به دعا حالا همه دعا کنیم هر کی برد(!) دعاش بیشتر بود!:لبخندساده:



#include <iostream.h>
#include <conio.h>
int main()
{
int n1,j=0,n2,k=0,i=0,d1,d2,a[5],b[5],c[6];
cout<<"Enter the count of digits for your 1st number(1_5):"<<endl;
cin>>n1;
cout<<"Enter the digits of your 1st number:"<<endl;
for (int i=0;i<n1;i++){
cin>>d1;
for (int i=n1;i>0;i--)
a[i]=d1;
}
cout<<"Enter the count of digits for your 2end number(1_5):"<<endl;
cin>>n2;
cout<<"Enter the digits of your 2end number:"<<endl;
for (int j=0;j<n2;j++){
cin>>d2;
for (int j=n2;j>0;j--)
b[j]=d2;
}
for (int k=0;k<6;k++){
c[k]=a[i]+b[j];
cout<<c[k];}
getch();
return 0;
}

Shiva.K
سه شنبه 22 تیر 1389, 18:11 عصر
سلام به همگی،
از دوستان عزیز خواهشمندم به توضیحات اولیم یه نگاهی بندازن تا کدی که این بالا گذاشتم رو بتونم کامل کنم.
از همین الان ممنون

HH2BN1990
سه شنبه 22 تیر 1389, 19:09 عصر
این برنامه ای که دو عدد بزرگ رو میگیره با هم جمع می کنه فکر کنم بدردتون بخوره (حداکثر تعداد ارقام عدد رو 100 گذاشتم که می تونید تغییر بدید)



#include <stdio.h>
#include <conio.h>
#include <string.h>
#include <iostream.h>
#define MAX 100

char a[MAX],b[MAX],c[MAX];

void main()
{
int i,j,sum,carry=0,maxlen;
cout <<"Input Number 1:" << endl;
scanf("%s",a);
cout <<"Input Number 2:" << endl;
scanf("%s",b);
cout <<"Sum Is:" << endl;

for(i=0; i<strlen(a); i++) // convert charachter digits to real digits
a[i]-=48;
for(i=0; i<strlen(b); i++)
b[i]-=48;

for(i=0; i<strlen(a); i++) // Shift a , b to right edge
a[i + MAX-strlen(a)] = a[i];
for(i=0; i<strlen(b); i++)
b[i + MAX-strlen(b)] = b[i];

if(strlen(a)>=strlen(b))
maxlen = strlen(a);
else
maxlen = strlen(b);

for(i=MAX-1; i>=MAX-maxlen; i--) // Calculate the summation
{
sum = a[i] + b[i] + carry ;
c[i] = sum % 10;
carry = sum / 10;
}

if( carry != 0 ) // Check for last digit in result ( c )
c[i] = carry;
else
i++;

for(j=i; j<MAX; j++) // Print result using "%d" format
printf("%d",c[j]);

getch();
}

Shiva.K
چهارشنبه 23 تیر 1389, 13:34 عصر
مرسی خیلی خوب بود فقط فکر میکنم باید قبل از عدد گرفتن باید تعداد ارقام رو از کاربر بگیریم و بعد تقسیم بر 5 کنیم و با توجه به جواب حلقه رو تکرار کنیم تا 5 تا 5 تا ارقام رو از کاربر بگیریم!

Shiva.K
چهارشنبه 23 تیر 1389, 13:35 عصر
مرسی خیلی خوب بود فقط فکر میکنم قبل از عدد گرفتن باید تعداد ارقام رو از کاربر بگیریم و بعد تقسیم بر 5 کنیم و با توجه به جواب حلقه رو تکرار کنیم تا 5 تا 5 تا ارقام رو از کاربر بگیریم!

sajedmalayeri
جمعه 30 آبان 1393, 20:05 عصر
خوبه دوستان تازه کارا (مثل من) میتونن از این چیزا استفاده کنم و قوی کنن