[ Foro de Pascal ]

basico ?? Concatenar dos numeros

27-Mar-2014 19:39
Invitado (raul)
6 Respuestas

hola ayuda , me podrian indicar como podria realizar un programa que adjunte a la derecha un entero  ingresado, los digitos a la derecha de un segundo numero, ejemplo
ingrese el numero 1: 234
adjunte el numero: 35
resultado: 23435

como ven el primer numero ahora se ha transformado en otro numero al haber adicionado o adjuntado los digitos del segundo, millones de gracias a quien pueda ayudarme.


27-Mar-2014 23:49
Luis Torres (+18)

Lo único que tienes que hacer es, después de leer ambos valores en dos variables, mandarlos a imprimir en pantalla ambos con un writeln, en el que primero colocas la primera variable y luego la segunda (en el mismo writeln). El código te lo dejo a continuación:


program EnteroJuntoAOtro;
var
  entero1, entero2: integer;
Begin
  write('Ingrese el numero 1: '); readln(entero1);
  write('Adjunte el numero: '); readln(entero2);
  writeln('Resultado: ',entero1,entero2);
  readln;
End.



Saludos.


28-Mar-2014 12:41
Invitado (raul)

ok luis muchas gracias, sin embargo me queda una duda espero por favor me la puedas resolver, en ese caso ese resultado queda operativo para una nueva operacion, es decir ese numero final es ya un numero integrado totalmente con respecto a los digitos del segundo o tan solo es de visualizacion, por que la idea es que ese numero resultante sea un numero como tal, mas que una visualizacion por pantalla, gracias por lo que puedas explicarme


28-Mar-2014 14:54
Luis Torres (+18)

No sería un número que pueda utilizarse en una operación aritmética, simplemente es una visualización en pantalla. La mayoría de estos problemas son solo para mostrar un resultado que pueda ser visto en pantalla, como si se tratase de un número único y no, como en realidad es, de dos números juntos.

Si tú quieres que sea un número guardado en una variable, podrías leer cada entrada como cadena de caracteres (en variables de tipo string, por supuesto), luego guardas la concatenación de ambas cadenas en una tercera variable (de tipo string). Entonces ya tienes una variable que no es un número sino una cadena de caracteres numéricos.

Hay un procedimiento en turbo pascal que te permite convertir cadenas a números, el procedimiento es val(cadenaNum,resultado,error), de esta forma tendrás en la variable "resultado" un número que podrás utilizar en operaciones propias de los números (sumar, restar, multiplica, dividir y en otras).

Saludos.


28-Mar-2014 18:28
Invitado (raul)

luis buenas, podrias por favor mostrarme una forma de solucion con codigo es que soy principiante en esto y lo que me escrives no lo capto muy bien , disculpame y ojala puedas entenderme, y gracias por responderme


28-Mar-2014 19:45
Nacho Cabanes (+84)

Tienes un ejemplo de "val" en la referencia de Pascal, aquí:
http://aprendeaprogramar.com/referencia/view.php?f=val&leng=Pascal

El programa podría quedar algo como


program EnteroJuntoAOtro;
var
  respuesta1, respuesta2, todoJunto: string  
  resultado, codigoDeError: integer;
Begin
  write('Ingrese el numero 1: '); readln(respuesta1);
  write('Adjunte el numero: '); readln(respuesta2);
  todoJunto := respuesta1 + respuesta2;
  val(todoJunto, resultado, codigoDeError);
  writeln('Resultado: ',resultado);
End.



28-Mar-2014 21:48
Invitado (raul)

gracias a los dos, estupenda ayuda, la necesitaba, asi en codigo ahora si entendi a lo que se referia el compañero luis






(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)