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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Van
Сообщений: n/a
#1

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

21.12.2011, 19:50. Просмотров 576. Ответов 0
Метки нет (Все метки)

Я только начал заниматься Си++ и не могу написать программу для сложение и вычитания чисел в пятнацатиричной системе, пробовал написать и вот, что получилось, мож кто подскажет, что нужно исправить или нужно её заново уже другим способом саписать???

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ричной системе счисления
Посмотрите здесь:

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

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

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

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru