Viernes 8 de Noviembre de 2024, 16:59
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
Problema de novato
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Problema de novato (Leído 4140 veces)
tkc009
Nuevo Miembro
Mensajes: 13
Problema de novato
«
en:
Sábado 23 de Enero de 2010, 04:58 »
0
Hola a todas las gente de la comunidad "solocodigo" antes que nada para aclarar soy exageradamente novato
y hace unos dias empeze programar en c/c++ va en realidad 2 o 3 xD, cambiando de tema, quise hacer un programa del cual se ingresen dos valores y luego ambos valores se impriman y de el resultado de su suma
#include <stdio.h>
int main()
{
int val1, val2, res;
printf("Ingrese el primer valor: /n");
scanf("%i",&val1);
printf("Ingrese el segundo valor: /n");
scanf("%i",&val2);
res = val1 + val2
printf("La suma de %i y %i es: %i/n",val1, val2, res);
return 0;
}
yo actualmente estoy utilizando como IDE el Dev-c++, y cuando doy para compilar el error sucede en printf("La suma de %i y %i es: %i",val1, val2, res); por favor si me pueden decir que estoy haciendo mal se lo agradesco!
Tweet
SkullFlower
Miembro activo
Mensajes: 25
Re: Problema de novato
«
Respuesta #1 en:
Sábado 23 de Enero de 2010, 07:00 »
0
Hola,
estaba viendo tu codigo y estos son los errores que encontre:
en las lineas donde pones /n para hacer el salto de renglon debe ser asi n
con la otra diagonal invertida o no se como se llame xD
en la parte de :
res = val1 + val2;
te falto poner el punto y coma al final.
y en vez de %i debe ser %d aunque lo compile con %i y si se pudo, la verdad no se por que a ver si alguien puede decir por que lol
pero creo que lo correcto deberia ser %d.
Código: C
#include <stdio.h>
int
main
(
)
{
int
val1
,
val2
,
res
;
printf
(
"Ingrese el primer valor: n"
)
;
scanf
(
"%d"
,&
val1
)
;
printf
(
"Ingrese el segundo valor: n"
)
;
scanf
(
"%d"
,&
val2
)
;
res
=
val1
+
val2
;
printf
(
"La suma de %d y %d es: %dn"
,
val1
,
val2
,
res
)
;
return
0
;
}
tkc009
Nuevo Miembro
Mensajes: 13
Re: Problema de novato
«
Respuesta #2 en:
Sábado 23 de Enero de 2010, 07:26 »
0
Muchisimas gracias skullflower por responderme y decirme los errores del programa, ahora en adelante lo voy a tener cuenta esos detalles, nada mas que una pequeña aclaracion sobre el tema de %d va %i por que pertenece al int asi vi en un tutorial xD, otra cosa cuando se ingresa el primer valor y el segundo valor ahi va todo bien, pero se cierra el programa cuando en realidad tendria que imprimir el resultado eso que podria ser
«
última modificación: Sábado 23 de Enero de 2010, 07:41 por tkc009
»
SkullFlower
Miembro activo
Mensajes: 25
Re: Problema de novato
«
Respuesta #3 en:
Sábado 23 de Enero de 2010, 07:39 »
0
pon esto antes de return 0
Código: C
while
(
getchar
(
)
!=
'n'
)
;
getchar
(
)
;
va a hacer una pausa hasta que presiones enter y luego se cerrara solo el programa.
Aprendiz21Sam
Miembro activo
Mensajes: 32
Re: Problema de novato
«
Respuesta #4 en:
Sábado 23 de Enero de 2010, 14:59 »
0
%i y %d es exactamente lo mismo y se puede usar indistintamente. La verdad no se por qué hay dos para enteros pero lo investigaré. De todas formas puedes usarlas indistintamente.
Otra cosa más, recuerda lo que te dijo skull. Para que veas el resultado te dijo que añadieras "getch();", pero esto es algo que se encuentra en la biblioteca ns "conio.h". Es decir que en la cabecera del programa, a parte de añadir la "stdio.h" debes añadir esa otra.
Código: C
#include <stdio.h>
#include <conio.h>
Eternal Idol
Moderador
Mensajes: 4696
Nacionalidad:
Re: Problema de novato
«
Respuesta #5 en:
Sábado 23 de Enero de 2010, 15:21 »
0
Aprendiz21Sam: no, dijeron getchar que es un funcion standard a diferencia de la que vos mencionas (getch) que no lo es y por eso necesita esa libreria no standard (conio.h).
Nacional y Popular
En mi país la bandera de Eva es inmortal.
Queremos una Argentina socialmente justa, económicamente libre y políticamente soberana.
¡Perón cumple, Evita dignifica!
La mano invisible del mercado me robo la billetera.
Aprendiz21Sam
Miembro activo
Mensajes: 32
Re: Problema de novato
«
Respuesta #6 en:
Domingo 24 de Enero de 2010, 00:54 »
0
Cierto, leí mal. Gracias por la correción.
tkc009
Nuevo Miembro
Mensajes: 13
Re: Problema de novato
«
Respuesta #7 en:
Domingo 24 de Enero de 2010, 17:54 »
0
Hola de nuevo disculpen las molestias pero tengo una duda que les queria comentar y me parecia absurdo hacer un nuevo post xD, alguien me podria explicar en que se basa exactamente el "return 0;" se que se encarga de retornar el valor pero cuando hablamos de retornar que se refiere a que vuelve de 0 con el programa y empieza todo de nuevo?
Eternal Idol
Moderador
Mensajes: 4696
Nacionalidad:
Re: Problema de novato
«
Respuesta #8 en:
Domingo 24 de Enero de 2010, 18:56 »
0
No, termina, ese es el valor que le devuelve al S.O. al finalizar.
Nacional y Popular
En mi país la bandera de Eva es inmortal.
Queremos una Argentina socialmente justa, económicamente libre y políticamente soberana.
¡Perón cumple, Evita dignifica!
La mano invisible del mercado me robo la billetera.
tkc009
Nuevo Miembro
Mensajes: 13
Re: Problema de novato
«
Respuesta #9 en:
Domingo 24 de Enero de 2010, 20:14 »
0
Otra cosa por que cuando ejecuto el programa me tira un error de "no enviar" solamente cuando termino de ingresar los dos valores
Código: C++
#include <stdio.h>
int
main
(
)
{
int
num, num2, res
;
char
nom
;
/* Aqui se ingresa el nombre*/
printf
(
"Ingrese su nombre: n"
)
;
scanf
(
"%s"
,
&
nom
)
;
/*Se suman los valores*/
printf
(
"Ingrese primer numero: n"
)
;
scanf
(
"%i"
,
&
num
)
;
printf
(
"Ingrese segundo numero: n"
)
;
scanf
(
"%i"
,
&
num2
)
;
res
=
num
+
num2
;
printf
(
"Hola %s la suma de %i y %i es %in"
, nom, num, num2, res
)
;
while
(
getchar
(
)
!
=
'n'
)
;
getchar
(
)
;
return
0
;
}
Eternal Idol
Moderador
Mensajes: 4696
Nacionalidad:
Re: Problema de novato
«
Respuesta #10 en:
Domingo 24 de Enero de 2010, 21:15 »
0
%s es para CADENAS y nom es un solo caracter.
Nacional y Popular
En mi país la bandera de Eva es inmortal.
Queremos una Argentina socialmente justa, económicamente libre y políticamente soberana.
¡Perón cumple, Evita dignifica!
La mano invisible del mercado me robo la billetera.
tkc009
Nuevo Miembro
Mensajes: 13
Re: Problema de novato
«
Respuesta #11 en:
Domingo 24 de Enero de 2010, 23:06 »
0
Gracias por la respuesta eternal idol pero ese no era el error, sino que en la variable char no le agrege al lado cuantos caracteres se leen que tendria que quedar:
Código: C++
char
nom
[
12
]
;
Antes por defecto era nulo y por eso habia un error de interpretacion, gracias por la ayuda igualmente.
Eternal Idol
Moderador
Mensajes: 4696
Nacionalidad:
Re: Problema de novato
«
Respuesta #12 en:
Domingo 24 de Enero de 2010, 23:19 »
0
Era exactamente el error que te indique, ahora tenes una cadena (un conjunto de caracteres finalizado en 0) y antes tenias un solo caracter.
Nacional y Popular
En mi país la bandera de Eva es inmortal.
Queremos una Argentina socialmente justa, económicamente libre y políticamente soberana.
¡Perón cumple, Evita dignifica!
La mano invisible del mercado me robo la billetera.
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
Programación General
»
C/C++
(Moderador:
Eternal Idol
) »
Problema de novato