elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
28 Mayo 2012, 22:28  


Tema destacado: Únete al Grupo Steam elhacker.NET

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse)
| | |-+  ¿Porque se reinicia el programa?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: ¿Porque se reinicia el programa?  (Leído 727 veces)
skatres

Desconectado Desconectado

Mensajes: 18


Ver Perfil
¿Porque se reinicia el programa?
« en: 10 Noviembre 2011, 18:10 »

Hola, pues en mi intento de seguir aprendiendo sobre este mundillo, sigo haciendo mis pequeños proyectos xD, bueno en este caso he querido hacer un programa en el que dando el usuario tres valores, se realice una operacion

Código:
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>

int main()
{    int a,b,c,res;
        printf("Hola, ahora introduce una variable:");
        scanf("%i" ,&a);
        printf("Introduce un segundo valor:");
        scanf("%i" ,&b);         
        printf("No es por ser pesado, pero introduce un tercer valor:");
        scanf("%i" ,&c);
                      if(c==0)
                      {
                              printf("No se puede dividir entre 0\n");// Aquí es donde nose como hacerlo
                             
                              }
                             
       
        res=("%i+%i/%i",(a+b)/c);         
        printf("El resultado es %i\n",res);
       
        system("pause");
        return 0;
       
}


Todo me sale correcto, salvo la parte en la que debería de salir el mensaje de que no se puede dividir por 0. Perdonen si la duda es muy simple o tonta.


En línea
RHL


Desconectado Desconectado

Mensajes: 966


mental


Ver Perfil
Re: ¿Porque se reinicia el programa?
« Respuesta #1 en: 10 Noviembre 2011, 18:42 »

A mi si me sale la condicion if
pero lo que sucede es que estas dividiendo entre 0 deberia hacer en la condicion que si es 0 no lo incluya en la operacion
porque en los dos compiladores que tengo el programa se cuelga o da error en esa linea
que compilador usas?


En línea
тαптяαпсє


Desconectado Desconectado

Mensajes: 739


Usuario EHN


Ver Perfil
Re: ¿Porque se reinicia el programa?
« Respuesta #2 en: 10 Noviembre 2011, 18:47 »

Tienes un titulo muy raro, para el problema que presentas...

Primero, aprende lo que quieres hacer:

Código:
res=("(%i+%i)/%i",(a+b)/c);

Si no le pones parentesis, no te hace correctamente la operacion.

No necesitas conio.h (Aparte que NO SE DEBE usar..)

Y la parte que tu dices que no va, veamos..

pones que si c es igual a 0, muestre por pantalla un texto..

pero luego sigue ejecutandose toddo normalmente, lo que has de hacer, es meter la formula entre un condicional else

Saludos
En línea

skatres

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Re: ¿Porque se reinicia el programa?
« Respuesta #3 en: 10 Noviembre 2011, 20:22 »

Tienes un titulo muy raro, para el problema que presentas...

Primero, aprende lo que quieres hacer:

Código:
res=("(%i+%i)/%i",(a+b)/c);

Si no le pones parentesis, no te hace correctamente la operacion.

No necesitas conio.h (Aparte que NO SE DEBE usar..)

Y la parte que tu dices que no va, veamos..

pones que si c es igual a 0, muestre por pantalla un texto..

pero luego sigue ejecutandose toddo normalmente, lo que has de hacer, es meter la formula entre un condicional else

Saludos

Claro, ahora me sale, gracias!, ahora mi objetivo es que despues de que el programa te diga que no se puede dividir por 0, salga otra opcion para introducir otra vez el numero "c", llevo intentalo un buen rato pero no doi y con la solucion.

Este es el codigo resultante
Código:
#include <stdio.h>
#include <stdlib.h>

int main()
{    int a,b,c,res;
        printf("Hola, ahora introduce una variable:");
        scanf("%i" ,&a);
        printf("Introduce un segundo valor:");
        scanf("%i" ,&b);         
        printf("No es por ser pesado, pero introduce un tercer valor:");
        scanf("%i" ,&c);
                   
                 
                      if(c==0)
                      {
                              printf("No se puede dividir entre 0\n");
                              }       
                             
                              else//En teoria aqui el programa debería de preguntarme para introducir
                              {
                                   
                                   printf("Introduce un valor distinto de 0:");
                                   scanf("%i",&c);
                                 
                                   res=("(%i+%i)/%i",(a+b)/c);
                                           
                                   printf("El resultado es %i\n",res);
                               }
                               
                                 
                     
                     
                     
        system("pause");
        return res;
       
}
En línea
satu

Desconectado Desconectado

Mensajes: 263

Siempre aprendiendo


Ver Perfil WWW
Re: ¿Porque se reinicia el programa?
« Respuesta #4 en: 10 Noviembre 2011, 21:44 »

Hola

El nuevo valor lo debes pedir cuando c es 0, no al contrario

Código
#include <stdio.h>
#include <stdlib.h>
 
int main()
{
   int a,b,c,res;
   printf("Hola, ahora introduce una variable: ");
   scanf("%i" ,&a);
   printf("Introduce un segundo valor: ");
   scanf("%i" ,&b);
   printf("No es por ser pesado, pero introduce un tercer valor: ");
   scanf("%i" ,&c);
 
   if(c==0)
       {
       printf("No se puede dividir entre 0\n");
       do
           {
           printf("Introduce un valor distinto de 0: ");
           scanf("%i",&c);
           }
       while(c == 0);
       }
 
   res=(a+b)/c;
   printf("El resultado es %i\n", res);
 
   printf("Presione Enter para salir.....");
   while(getchar()!='\n');
   getchar();
   return 0;
}
 

Saludos
En línea

Breakbeat como forma de vida
skatres

Desconectado Desconectado

Mensajes: 18


Ver Perfil
Re: ¿Porque se reinicia el programa?
« Respuesta #5 en: 13 Noviembre 2011, 22:55 »

Hola

El nuevo valor lo debes pedir cuando c es 0, no al contrario

Código
#include <stdio.h>
#include <stdlib.h>
 
int main()
{
   int a,b,c,res;
   printf("Hola, ahora introduce una variable: ");
   scanf("%i" ,&a);
   printf("Introduce un segundo valor: ");
   scanf("%i" ,&b);
   printf("No es por ser pesado, pero introduce un tercer valor: ");
   scanf("%i" ,&c);
 
   if(c==0)
       {
       printf("No se puede dividir entre 0\n");
       do
           {
           printf("Introduce un valor distinto de 0: ");
           scanf("%i",&c);
           }
       while(c == 0);
       }
 
   res=(a+b)/c;
   printf("El resultado es %i\n", res);
 
   printf("Presione Enter para salir.....");
   while(getchar()!='\n');
   getchar();
   return 0;
}
 

Saludos

Perdon la tardanza, muchas gracias por responder!!!
En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
mi windows se reinicia sin parar porque?
Windows
victorsanella 2 766 Último mensaje 11 Junio 2005, 20:06
por Randomize
programa que reinicia el pc
Software
Ramon javier 1 267 Último mensaje 14 Septiembre 2006, 16:03
por Kasswed
¿Porque mi programa se cuelga? [AUTOSOLUCIONADO]
Programación C/C++
Eliptico 0 1,060 Último mensaje 13 Agosto 2009, 00:15
por Eliptico
Se me reinicia y reinicia la pc sola.. LEAN
Windows
MauARG 3 1,261 Último mensaje 24 Diciembre 2009, 18:17
por Yuki.N>
porque al compilar pesa tanto un programa?
Programación C/C++
bomba1990 13 2,188 Último mensaje 29 Noviembre 2010, 19:22
por bomba1990
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines