elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema en variable int
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: 1 2 [3] Ir Abajo Respuesta Imprimir
Autor Tema: Problema en variable int  (Leído 7,141 veces)
eferion


Desconectado Desconectado

Mensajes: 1.248


Ver Perfil
Re: Problema en variable int
« Respuesta #20 en: 30 Abril 2014, 16:39 pm »

Gracias, muchas gracias eferion por tus palabras de comprensión.

¿Gracias? no hace falta :), yo también aprendo cosas en este foro... las gracias son mutuas.


En línea

Blaster

Desconectado Desconectado

Mensajes: 190


Ver Perfil
Re: Problema en variable int
« Respuesta #21 en: 30 Abril 2014, 20:49 pm »

Yo tambien quisiera dar un pequeño aporte con este pequeño codigo que me costo
un poco realizar opera muy bien con cifras muy grandes segun las pruebas que le realice..

Código
  1. #include <iostream>
  2. #include <cstring>
  3.  
  4. #define max 50
  5.  
  6. bool Sumar(char *str1, char *str2, char *r);
  7.  
  8. int main(void)
  9. {
  10.    char n1[] = "12345612345612345612345612345612312348513552";
  11.    char n2[] = "87654321123456787654321234567851515";
  12.    char suma[max] = "";
  13.  
  14.    Sumar(n1, n2, suma);
  15.    std::cout << n1 << "\n+\n" << n2 << "\n\n" << suma << std::endl;
  16.  
  17.    return 0;
  18. }
  19.  
  20. bool Sumar(char *str1, char *str2, char *r)
  21. {
  22.    char c1, c2;
  23.    int carry = 0;
  24.    int a = strlen(str1), b = strlen(str2);
  25.  
  26.    r[a > b? a : b] = 0;
  27.    do{
  28.         a--, b--;
  29.        (a < 0)? c1 = '0' : c1 = str1[a];
  30.        (b < 0)? c2 = '0' : c2 = str2[b];
  31.  
  32.        r[a > b? a : b] = carry + c1 + c2 - '0';
  33.        r[a > b ? a : b] > '9'? r[a > b ? a : b] -= 10, carry = 1 : carry = 0;
  34.    }while (a > 0 || b > 0);
  35.  
  36.    if (carry){
  37.      if (strlen(r) < max){
  38.         for (int i = strlen(r)+1; i > 0; i--)
  39.            r[i] = r[i-1];
  40.         r[0] = '1';
  41.         return false;
  42.        }
  43.    }
  44.    return true;
  45. }
  46.  
  47.  

Saludos..


En línea

Páginas: 1 2 [3] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema con variable
Scripting
kraszic 6 3,824 Último mensaje 2 Agosto 2008, 00:42 am
por kraszic
Problema variable j
Programación C/C++
Ander123 6 2,546 Último mensaje 28 Octubre 2012, 12:57 pm
por DickGumshoe
Problema con variable de sesion y variable de conexion
PHP
Vaagish 9 6,006 Último mensaje 19 Marzo 2013, 22:37 pm
por Vaagish
MOVIDO: Asignar un valor a una variable(ScriptA)Obtener esa variable (ScriptB)-UNITY c#
Scripting
Eleкtro 0 2,468 Último mensaje 8 Octubre 2013, 17:49 pm
por Eleкtro
PROBLEMA CON UNA VARIABLE
Programación C/C++
magv1991 2 1,719 Último mensaje 21 Febrero 2014, 14:19 pm
por NikNitro!
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines