¿es posible hacer algo asi?
Int n1=1,n2=2,n3;
n3= n1 concatenado con n2; // n3 = 12
¿como se hace?
| |||
Re: Concatenar enteros ¿es posible? No es posible contatenar enteros directamente como las cadenas de caracteres (char*) Pero es posible utilizar un artificio para ello: int n1=1,n2=2,n3=3; int num = n1*100 + n2*10 + n3; // num = 123
__________________ Recursos Visual C++ |
| |||
Re: Concatenar enteros ¿es posible? podrias usar un artificio mas complejo, lo quizas, pero valido: Int n1=1,n2=2,n3; char aux=""; strcat(aux,itoa(n1)); // concateno lo q hay en n1 (convertido en char) a aux strcat(aux,itoa(n2)); // concateno lo q hay en n2 (convertido en char) a aux n3=atoi(aux); // saco lo que tenia el aux saludos, espero que funcione, lo hice sin probarlo :P |
| |||
Re: Concatenar enteros ¿es posible? Gracias por responder. Supongo que lo que buscaba era algo como la función atoi, que desconozco, ya tengo algo para buscar. Ivancap, también agradezco tu respuesta pero me temo que no es válida, ya que es un código muy limitado, el int n1=1,n2=2; era un ejemplo simple, pero tu código no serviría para int n1=123,n2=123; por ejemplo :P |
| |||
Re: Concatenar enteros ¿es posible? Lo q Ivancap propone esta bien, pero tendrias q ampliarlo un poco. Yo lo haria asi: concatenando de a pares de numeros, y multiplicando el primero por 10^n, siendo n el numero de cifras del segundo, y sumandolos. Acá te paso el codigo para 2 numeros, anda bien:
Código:
Acordate solamente que la suma de las cifras de los numeros no puede ser mayor a 10, ya que ese es el maximo de cifras que puede albergar un dato de tipo int.#include<iostream.h> using namespace std; void main() { int n1,n2; cout<<"Ingrese el primer numero: "; cin>>n1; cout<<"Ingrese el segundo numero: "; cin>>n2; int c=0; float r; do{ c++; r=n2/(pow(10.0,c)); }while(r>=1); int cat=n1*pow(10,c)+n2; cout<<"Concatenado: "<<cat<<endl;//si queres hacerlo con mas numeros //por ejemplo 3,solamente repeti el proceso, con cad y n3 system("Pause"); return 0; } Saludos!! |