نمایش نتایج 1 تا 7 از 7

نام تاپیک: ضرب دو عدد 20 رقمی

  1. #1

    ضرب دو عدد 20 رقمی

    سلام
    سوال برنامه اینه

    میشه راهنمایی کنین اشکالش کجاست ؟ و قسمت سوم را چطوری حل کنم ؟
    یه قسمت هاییش را خودم نوشتم
    #include <stdio.h>
    #include <conio.h>
    int ReadData(char arr[20],int count);
    int WriteData(char arr[20],int count);
    int main()
    {


    int i=1;
    int j=1;
    int count=0;
    char arr[20];
    clrscr();
    printf("Enter a number above 20 digits:");
    while ((arr[i]=getche()) !='\r')
    {
    i++;
    count++;
    }
    printf("\nCount:%d",count);
    printf("\n%d",arr[i]);

    printf("\nYour number is:");
    while ( i<=count )
    {
    switch(arr[i])
    {
    case '48':arr[j]=0;
    case '49':arr[j]=1;
    case '50':arr[j]=2;
    case '51':arr[j]=3;
    case '52':arr[j]=4;
    case '53':arr[j]=5;
    case '54':arr[j]=6;
    case '55':arr[j]=7;
    case '56':arr[j]=8;
    case '57':arr[j]=9;
    printf("%d",arr[j]);
    i++;
    j++;
    }
    }
    getche();
    return 0;

    }
    int ReadData(char arr[20],int count)
    {
    int i=1;
    while ((arr[i]=getche()) !='\r')
    {i++;
    count++;
    }
    printf("\nCount:%d",count);
    printf("\n%d",arr[i]);
    getche();
    return count;
    }
    int WriteData(char arr[20],int count)
    {
    int i=1;
    int j=1;
    while ( i<=count )
    {
    switch(arr[i])
    {
    case '48':arr[j]=0;
    case '49':arr[j]=1;
    case '50':arr[j]=2;
    case '51':arr[j]=3;
    case '52':arr[j]=4;
    case '53':arr[j]=5;
    case '54':arr[j]=6;
    case '55':arr[j]=7;
    case '56':arr[j]=8;
    case '57':arr[j]=9;
    printf("%d",arr[j]);
    j++;
    i++;
    }
    }

    }

  2. #2

    نقل قول: ضرب دو عدد 20 رقمی

    قمست عمدش اینه که در switch case هاتون ، بعد هر case کلمه break رو ننوشتین .

    برای ضرب دو عدد بزرگ هم به لینک های زیر مراجعه کنید :

    http://www.barnamenevis.org/sh...B2%D8%B1%DA%AF

    ========================
    http://www.barnamenevis.org/sh...B2%D8%B1%DA%AF
    ========================
    http://www.barnamenevis.org/sh...B2%D8%B1%DA%AF
    ========================
    http://www.barnamenevis.org/sh...B2%D8%B1%DA%AF

    موفق باشید .






  3. #3
    کاربر دائمی آواتار amin1softco
    تاریخ عضویت
    شهریور 1386
    محل زندگی
    پای آن سرو بلند
    پست
    1,832

    نقل قول: ضرب دو عدد 20 رقمی

    برنامه ضرب دو عدد 20 رقمی


    include <iostream.h>
    #include <conio.h>
    int x[20],y[20],w[40],k[20][40];
    void multiply(void);
    void Sum(void);
    void main(){
    char t[20];
    int i,j,z;
    clrscr();
    cout << "\n Enter a Number 1 :";
    cin >> t;
    z=19;
    for(i=0;i<20 && t[i];i++);
    for(i=i-1;i>=0;i--)
    x[z--]=t[i]-48;
    cout << "\n Enter a Number 2 :";
    cin >> t;
    z=19;
    for(i=0;i<20 && t[i];i++);
    for(i=i-1;i>=0;i--)
    y[z--]=t[i]-48;
    for(i=0;i<20;i++)
    for(j=0;j<40;j++)
    k[i][j]=0;
    multiply();
    }
    /
    /
    void multiply(void){
    int i,j,z,z1,tmp,c;
    c=0;
    z=39;
    for(i=19;i>=0;i--)
    for(j=19;j>=0;j--){
    tmp=(x[i]*y[j])+c;
    c=0;
    // cout<<tmp<<"\n";
    while(tmp>=10){
    C++‎;
    tmp=tmp-10;
    }
    if(i==19)
    k[i][j+20]=tmp;
    else{
    if(j==19){
    z--;
    z1=z;
    }
    k[i][z1--]=tmp;
    }
    }
    c=0;
    for(j=39;j>=0;j--){
    for(i=0;i<20;i++)
    tmp+=k[i][j];
    tmp+=c;
    c=0;
    while(tmp>=10){
    C++‎;
    tmp-=10;
    }
    w[j]=tmp;
    tmp=0;
    }
    for(i=0;i<40 && w[i]==0 ;i++);
    cout<<"\n\n Value zarb= ";
    for(i;i<40;i++)
    cout<<w[i];
    Sum();
    }
    /
    /
    void Sum(void){
    int i,tmp,c,s[20];
    c=0;
    for(i=19;i>=0;i--){
    tmp=(x[i]+y[i])+c;
    c=0;
    while(tmp>=10){
    C++‎;
    tmp=tmp-10;
    }
    s[i]=tmp;
    }
    cout<<"\n\n Value jam = ";
    for(i=0;i<20 && s[i]==0 ;i++);
    for(i;i<20;i++)
    cout<<s[i];
    }


  4. #4

    Red face نقل قول: ضرب دو عدد 40 رقمی

    ضرب دو عدد 40 رقمي در C++‎

    تاریخ: 10تیر89 در اين برنامه دو آرايه 40 رقمي و يک آرايه 80 رقمي تعريف شده است که در تابع multiply جواب ضرب محاسبه مي شود



  5. #5

    Cool نقل قول: ضرب دو عدد 20 رقمی

    [QUOTE=amin1softco;899909]برنامه ضرب دو عدد 20 رقمی
    mr33333333333333300000000000000000000000000

  6. #6

    نقل قول: ضرب دو عدد 20 رقمی

    بچه ها میتونید const int r=50,f=100
    قبل آرایه تعریف کنید و به جای عداد و خانه های درون آرایه استفاده کنید و
    r-1 یا f-1
    در برنامه
    برا جمع و ضرب دو عدد 50 رقمی امتحان کردم جواب داد

  7. #7

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •