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, 23:25  


Tema destacado: Únete al Grupo Steam elhacker.NET

+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse)
| | |-+  Ayuda!!! :( con c++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Ayuda!!! :( con c++  (Leído 628 veces)
NorochiiAnon

Desconectado Desconectado

Mensajes: 13



Ver Perfil
Ayuda!!! :( con c++
« en: 19 Octubre 2011, 15:29 »

hello.. tengo una duda.. estoy haciendo un programa en c++ y necesito saber como hacerle para que cuando el usuario introduzca un caracter en la variable entera entre de nuevo al ciclo do-while por que lo que hace el programa cuando introducen un caracter es k despliega la tabla del cero y no se devuelve al ciclo do-while el codigo es el siguiente :D les agradeceria su ayuda :D

#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
#include <Windows.h>


using namespace std;

void TablasDeMultiplicar()
{
   int Tabla = 0;
   do
   {
   cout<<"\n\n  Ingresa el numero de la Tabla de Multiplicar que quieras Aprender: \n\n";
   cout<<"  Solo Podras Ver las Tablas del 0 al 12\n\n";
   cout<<"  Tabla del : ";
   cin>>Tabla;
   if(Tabla<=12 && Tabla >=0)
   {
   
   for(int i = 0; i<=12; i++)
   {
      cout<<"\n"<<Tabla<<" X "<<i<<" = "<<Tabla*i<<endl;
   }
   cout<<"\n\n\n"<<endl;
   }
   else
   {
      cout<<"\n\nNumero no valido"<<endl;
   }
   cout<<"\n\n\n";
   system("PAUSE");
   system("cls");
   }while(Tabla>12 || Tabla <0 );
}
int main()
{
   char a;
   system("color 9B");

   TablasDeMultiplicar();
   
   system("PAUSE");
   return 0;
}


En línea

Norochii
CeroX901

Desconectado Desconectado

Mensajes: 22



Ver Perfil
Re: Ayuda!!! :( con c++
« Respuesta #1 en: 19 Octubre 2011, 15:53 »

En la linea:

Código
}while(Tabla>12 || Tabla <0 );

intenta arreglarlo como:

Código
}while(true);

De está manera el programa nunca termina...



En línea
NorochiiAnon

Desconectado Desconectado

Mensajes: 13



Ver Perfil
Re: Ayuda!!! :( con c++
« Respuesta #2 en: 19 Octubre 2011, 16:00 »

no sirvio u.u :'(
En línea

Norochii
CeroX901

Desconectado Desconectado

Mensajes: 22



Ver Perfil
Re: Ayuda!!! :( con c++
« Respuesta #3 en: 19 Octubre 2011, 16:26 »

Listo. me quedó así:


Código
#include <iostream>
#include <stdio.h>
#include <time.h>
#include <stdlib.h>
#include <conio.h>
#include <string.h>
#include <Windows.h>
#include <sstream>
 
using namespace std;
 
void TablasDeMultiplicar()
{
  do
  {
  string entrada = "";
  int Tabla = 0;
 
  cout<<"\n\n  Ingresa el numero de la Tabla de Multiplicar que quieras Aprender: \n\n";
  cout<<"  Solo Podras Ver las Tablas del 0 al 12\n\n";
  cout<<"  Tabla del : ";
  getline(cin, entrada);
  stringstream numero(entrada);
  numero >> Tabla;
 
  if(Tabla <= 12 && Tabla >=0)
  {
 
  for(int i = 0; i<=12; i++)
  {
 cout<<"\n"<<Tabla<<" X "<<i<<" = "<<Tabla*i<<endl;
  }
  cout<<"\n\n\n"<<endl;
  }
  else
  {
 cout<<"\n\nNumero no valido"<<endl;
}
cout<<"\n\n\n";
system("PAUSE");
system("cls");
}while(true);
}
int main()
{
  char a;
  system("color 9B");
 
  TablasDeMultiplicar();
 
  system("PAUSE");
  return 0;
}
En línea
NorochiiAnon

Desconectado Desconectado

Mensajes: 13



Ver Perfil
Re: Ayuda!!! :( con c++
« Respuesta #4 en: 19 Octubre 2011, 16:53 »

para que sirve esta linea??
stringstream numero(entrada);
:O
En línea

Norochii
CeroX901

Desconectado Desconectado

Mensajes: 22



Ver Perfil
Re: Ayuda!!! :( con c++
« Respuesta #5 en: 19 Octubre 2011, 17:10 »

para convertir de cadena a entero.
En línea
NorochiiAnon

Desconectado Desconectado

Mensajes: 13



Ver Perfil
Re: Ayuda!!! :( con c++
« Respuesta #6 en: 19 Octubre 2011, 17:19 »

ia corriste el programa con las modificaciones que isiste?? :O es k has de cuenta k se supone k si el usuario mete una letra en vez de numero debe aparecer el letrero de numero invalido i volver a visualizar donde se ingresa el numero pero.... no se si en tu compilador si haga eso las modificaciones k le isiste por k ami no :'( lo siento por dar tantos problemas pero es k e buskado pero nomas no encuentro u.u
En línea

Norochii
CeroX901

Desconectado Desconectado

Mensajes: 22



Ver Perfil
Re: Ayuda!!! :( con c++
« Respuesta #7 en: 19 Octubre 2011, 17:39 »

Ahí me sirve perfecto, cuando ingresa una letra me dice "numero no valido" y cuando ingresa un numero que no está entre 0 y 12 me dice lo mismo.

Arreglé el código... Ya no debes tener problema.

Código
#include <iostream>
#include <sstream>
 
using namespace std;
 
void TablasDeMultiplicar() {
do {
string entrada = "";
int Tabla = 0;
 
cout<<"\n\n  Ingresa el numero de la Tabla de Multiplicar que quieras Aprender: \n\n";
cout<<"  Solo Podras Ver las Tablas del 0 al 12\n\n";
cout<<"  Tabla del : ";
 
getline(cin, entrada);
stringstream numero(entrada);
if (numero >> Tabla) { //Verifica que sea un número
if(Tabla <= 12 && Tabla >=0) { //Verifica que esté entre el rango especificado (0-12)
for(int i = 0; i<=12; i++) {
cout<<"\n"<<Tabla<<" X "<<i<<" = "<<Tabla*i<<endl;
}
cout<<"\n\n\n"<<endl;
} else {
cout<<"\n\nNumero no valido"<<endl;
}
} else {
cout<<"\n\nNumero no valido"<<endl;
}
 
cout<<"\n\n\n";
system("pause");
system("cls");
}while(true);
}
int main() {
system("color 9B");
TablasDeMultiplicar();
system("PAUSE");
return 0;
}
« Última modificación: 19 Octubre 2011, 17:41 por CeroX901 » En línea
CeroX901

Desconectado Desconectado

Mensajes: 22



Ver Perfil
Re: Ayuda!!! :( con c++
« Respuesta #8 en: 19 Octubre 2011, 17:40 »

Ahi le puse comentarios..
En línea
NorochiiAnon

Desconectado Desconectado

Mensajes: 13



Ver Perfil
Re: Ayuda!!! :( con c++
« Respuesta #9 en: 19 Octubre 2011, 21:56 »

Muchisimas Gracias Me ayudo de mucho si funciona muy bien te lo agradezco :D n.n espero poder contar con tu ayuda si es que me trabo en algo mas :D .
Nos vemos
Saludos
Gracias
En línea

Norochii
CeroX901

Desconectado Desconectado

Mensajes: 22



Ver Perfil
Re: Ayuda!!! :( con c++
« Respuesta #10 en: 20 Octubre 2011, 01:29 »

Hace mucho que no entraba al foro, ya ni me acuerdo de cuantos usuarios he creado ya que se me olvidaban, pero intentaré dar vueltas por aquí todos los días para preguntas y ofrecer ayuda.  :)
En línea
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines