Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.12.2011, 17:38   #1
Alexander131
Новичок
Джуниор
 
Регистрация: 15.12.2011
Сообщений: 1
Радость Сложение чисел через классы

В программирование не давно, задали написать программу что бы числа хранила, через класс, любой длинны и еще их сложение , вот собственно говоря код)

Сложение не как не получается, помогите пожалуйста буду очень благодарен) заранее спасибо)
Ее принцип :
Пользователь вводит два числа с типом данных char*, далее они конвертируются в тип данных int и складываются, но сложение у меня не как не получается( и все это через класс.

Chislo.h
Код:
#pragma once
#ifndef CHISLO_H
#define CHISLO_H


class Chislo
{
    public:
        Chislo(char* u);
        ~Chislo();
        int CharToInt(char* a, int i);
        void summ(char* l,char* x );
        void print();


    private:



    int* _j;
    int _len;
};

#endif // CHISLO_H

Chislo.cpp
Код:
#include "StdAfx.h"
#include "Chislo.h"
#include <iostream>
#include <stdlib.h>
#include <math.h>
#include <conio.h>
using namespace std;
Chislo::Chislo(char* u){
_len=strlen(u);
_j=new int [_len];
for (int i=0;i<_len;i++)
_j[i]=CharToInt(u,_len-1-i);
}



int Chislo::CharToInt(char* a, int i){
char t=a[_len-1-i];
switch (t) {
case '0': return 0;
case '1': return 1;
case '2': return 2;
case '3': return 3;
case '4': return 4;
case '5': return 5;
case '6': return 6;
case '7': return 7;
case '8': return 8;
case '9': return 9;
default: return -1;
}
}

void Chislo::print(){
for (int i=0;i<_len;i++)
std::cout<<_j[i];
}



/*void Chislo::summ(char*l, char* x){

_len=strlen(l);
_j=new int [_len];
for (int i=0;i<_len;i++)
_j[i]=CharToInt(l,_len-1-i);
_len=strlen(x);
_q=new int [_len];
for (int i=0;i<_len;i++)
_q[i]=CharToInt(x,_len-1-i);
}
*/




Chislo::~Chislo()
{

}
main.cpp
Код:
#include <stdafx.h>
#include <iostream>
#include "Chislo.h"
#include <stdlib.h>
#include <conio.h>
#include <math.h>
using namespace std;

int main()
{setlocale(LC_ALL,"rus");
char* s=new char [100000];
char* f=new char [100000];
    cout<<"Введите первое число"<<'\t';
    cin>>s;
      Chislo d(s);
    cout<<"Введите второе число"<<'\t';
    cin>>f;
   Chislo r(f);

   d.print();
   cout<<'\n';
   r.print();
cout<<'\n';
//Chislo z();
//d.summ(s,f);
getch();
return 0;




}
Alexander131 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сложение двух десятичных положительных чисел. целых чисел))) PEro_man Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 01.12.2010 12:40
Сложение больших чисел Plazma Общие вопросы C/C++ 0 27.11.2010 17:11
сложение чисел s2dentishe Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 14.06.2010 21:33
сложение 10 двоичных чисел sssvetlaya Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 10.11.2009 09:32
сложение огромных чисел H_T_V Паскаль, Turbo Pascal, PascalABC.NET 6 18.12.2006 08:14