Форум программистов, компьютерный форум CyberForum.ru

Помоги написать программу для сложение чисел в 15ричной системе счисления - C++

Восстановить пароль Регистрация
 
Van
Сообщений: n/a
21.12.2011, 19:50     Помоги написать программу для сложение чисел в 15ричной системе счисления #1
Я только начал заниматься Си++ и не могу написать программу для сложение и вычитания чисел в пятнацатиричной системе, пробовал написать и вот, что получилось, мож кто подскажет, что нужно исправить или нужно её заново уже другим способом саписать???

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
#include "stdafx.h"
#include <iostream>
#include <math.h>
#include <stdio.h>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{   int p,n,i,y,u,r;
    
  int h[15];
  int v[15];
  int m[16];
   int a,b,c,d,e;
   int h[]={0,1,2,3,4,5,6,7,8,9,a,b,c,d,e};
   int v[]={0,1,2,3,4,5,6,7,8,9,a,b,c,d,e};
   cout<<"A";
   cin>>h[u];
   cout<<"B";
   cin>>v[r];
     
     {
         {
   if((h[u]+v[r])>=e)
      {p=1;
          m[n]=h[u]+v[r]+p;
      
      }
      else 
          p=0;
          m[n]=h[u]+v[r];
                     
     
         }
      {
   if((h[u]-v[r])>=-e)
      {p=-1;
          m[n]=h[u]+v[r]+p;
      
      }
      else 
          p=0;
          m[n]=h[u]-v[r];
      }
      
   char znak;
         
   switch (znak)
    { 
    case '+':y=m[n];break;
    case '-':y=h[u]-v[r];break;
    default:cout<<"neverno vveli znak";
         }  
   cout<<"y"<<y;
    return 0;
}
Добавлено через 22 часа 5 минут
Написал программку иначе
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
#include "stdafx.h"
#include <iostream>;
#include <math.h>;
using namespace std;
int ma[11];
int mb[11];
int a,b,c,d,e,f,g,h,j,k,l,m,n,o,p,q,r,s,t,v,w,x,y,z,bc,bd,be,bf,bg,bh,bi,bj,bk,bl,bm,bn,bo,bp,bq,br,bs,bt,by,bu,bv;
int i,u;
int *um;
int razl(int a, int n)
{
int b;
b=fmod(a,10.*n);
return b;
}
int pm (int c, int d, int e, int f,int g, int h,int i,int j,int k,int l, int bc, int bd, int be,int bf,int bg,int bh,int bi,int bj,int bk,int bl, int t) 
{
int x,y,z,u,w;
int ma[11]={0,c,d,e,f,g,h,i,j,k,l};
int mb[11]={0,bc,bd,be,bf,bg,bh,bi,bj,bk,bl};
int mc[11];
z=0.;
 
 
if (t==0.) {
for (int i=10; i>0; i--)
{
if(ma[i]>0 || mb[i]>0)
{
if(mc[i]>10)
{
mc[i+1]++;
mc[i]-=10;
}
}
}
}
if (t==1.) {
for (int i=10.; i>0.; i--)
{
if(ma[i]>0. || mb[i]>0)
{
if(mb[i]>ma[i])
{
ma[i-1]--;
ma[i]+=10;
mc[i]=ma[i]-mb[i];
}else
{
mc[i]=ma[i]-mb[i];
}
}
}
}
for(int i=10.; i>0.; i--)
{
if(i==10)
{
z+=mc[i];
}else{
z+=mc[i]*pow(10.,10-i);
}
}
return mc[10];
}
int _tmain(int argc, _TCHAR* argv[])
{
cout<<"Vvedite dva chisla"<<'\n';
cin>>a;
cin>>b;
n=1;
for (int i=10; i>0; i--)
{
if(i==10)
{
c=fmod(a,10.);
}else
{
c=(fmod(a,pow(10.,(10.-(i-1))))-ma[i])/pow(10,(10.-i));
}
ma[i]=c;
}
for (int i=10; i>0; i--)
{
if(i==10)
{
c=fmod(b,10.);
}else{
c=(fmod(b,pow(10.,(10.-(i-1.))))-mb[i])/pow(10,(10.-i));
}
mb[i]=c;
}
cout<<"Vvedite nomer operacii"<<'\n';
cin>>t;
if(t==0. || t==1.){
cout<<pm(ma[1],ma[2],ma[3],ma[4],ma[5],ma[6],ma[7],ma[8],ma[9],ma[10],mb[1],mb[2],mb[3],mb[4],mb[5],mb[6],mb[7],mb[8],mb[9],mb[10],t)<<'\n';
}else if(t==2)
{
cout<<"vvedite nomer chisla"<<'\n';
cin>>v;
cout<<"vvedite nomer cifry"<<'\n';
cin>>u;
if(v==1.){
if(u>0. && u<11.){
int *um=&ma[u];
cout<<*um;
}else{
cout<<"chislo ne popadaet v dopystimie znachenija"<<'\n';
}
}else if(v==2.){
if(u>0. && u<11.){
int *um=&mb[u];
cout<<*um;
}else{
cout<<"chislo ne popadaet v dopystimie znachenija"<<'\n';
}
}
}else
{
cout<<"znachenie t ne popudaet v dopustimie predely"<<'\n';
 
}
cout<<pm(0,0,0,0,0,0,0,0,0,3,0,0,0,0,0,0,0,0,0,1,0)<<'\n';
cout<<'\n';
//cout<<(fmod(a,pow(10.,(10.-(9.-1.))))-ma[10])/pow(10,(10.-9.));
system("pause");
return 0;
}
 Комментарий модератора 
Используйте теги форматирования кода!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.12.2011, 19:50     Помоги написать программу для сложение чисел в 15ричной системе счисления
Посмотрите здесь:

Сложение в двоичной системе счисления C++
C++ сложение чисел в двоичной системе счисления
C++ Сложение в двоичной системе счисления
C++ Сложение двух чисел в Двоично-десятичной системе счисления
C++ Составить программу,которая печатает таблицу умножения и сложения натуральных чисел в шестнадцатеричной системе счисления
Написать программу для перевода чисел из двоичной в шестнадцатеричную систему счисления C++
Сложение в двоичной системе счисления C++
C++ Сложение в 16 ичной системе счисления

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

Текущее время: 13:50. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru