Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - hctr12

#1
Cita de: engel lex en  9 Julio 2014, 08:04 AM
sorry... copie y pegué el codigo... lo tienes como deberia ser?

while (M<'0' || M>'1');

sigue imprimiendome dos veces.

PD2: QUÉ FUNCION PUEDE REEMPLAZAR A GOTO ?
#2
Claro, estaba intentando otras opciones pero cuando regreso a
while (M<0 || M>1);

Me imprime dos veces

RETORNAR AL MENU: 1 = SI o 0 = NO , PARA FINALIZAR:
RETORNAR AL MENU: 1 = SI o 0 = NO , PARA FINALIZAR: ____ y recién para ingresar el valor y si el valor no es ni 1 ni 0, vuelve a imprimirse dos veces más y así...pero la validación si está correcta solo faltaría anular una impresión


PD1: EL CONIO NO LO PUEDO SACAR, POR EL _getch(); eso ya es capricho de mi docente.
PD2: QUÉ FUNCION PUEDE REEMPLAZAR A GOTO ?
#3
Es todo el codigo de mi trabajo, hasta ahora.

Lo llevo haciendo en Visual Express c++


#include "stdafx.h"
#include "stdio.h"
#include "conio.h"

int main()
{
menu:
int OP;
char M; // VARIABLES DE MENU
int N,A,SN,MN=1; //VARIABLES DE LA FUNCION 1
int primero = 1, segundo = 0, tercero = 1, i=0, cant; // VARIABLES DE LA FUNCION 2

// INICIO DE LA FUNCION MENU-----------------------------------------------------------------------------------------------
do
{
printf("-------------------------------------------------------------------------------\n\n");
printf("\t\t\t\tMenu");
printf("\n\n");
printf("\t1. Suma de los cuadrados de los impares.\n\n");
printf("\t2. Mostrar la serie de Fibonacci.\n\n");
printf("\t3. Mover un movil.\n\n");
printf("\t4. Terminar.\n\n");
printf("\n\n");
printf("-------------------------------------------------------------------------------\n\n\t");
printf("Elija la funcion, segun su numero de orden: ");
scanf("%d",&OP);
printf("\n\n");

}
while (OP<1 || OP>4); //OP>=1 && OP<=4);
// FIN DE LA FUNCION MENU-----------------------------------------------------------------------------------------------



// INICIO DE LA FUNCION 1-----------------------------------------------------------------------------------------------
if (OP==1) //CONDICION PARA QUE DIRECCIONE A LA PRIMERA FUNCION
{

printf("\tIngrese la cantidad N de numeros impares ,al cuadrado, a sumar: ");
scanf("%d",&N); // scanf LEE EL ENTERO QUE SE INGRESARA EN LA VARIABLE N
printf("\n");
SN=(((N*2)+1)*(N*2)*((N*2)-1))/6;  // OPERACION PARA ENCONTRAR LA SUMA DE "N" NUMEROS IMPARES AL CUADRADO
printf("\tLa suma de los N numeros, impares al cuadrado es: %d",SN); // IMPRIME EL RESULTADO DE LA FORMULA

//*********************************************************************************************
do
{
printf("\n\n\n\tRETORNAR AL MENU: 1 = SI o 0 = NO , PARA FINALIZAR: ");
scanf("%c",&M); //
if(M == '1') //
{
printf("\n\n");
goto menu; //
}
else if(M == '0')
{
return 0;  
}
}while (M=='0' || M=='1');


}
_getch();
return 0;
}
#4
Claro, cuando las reemplazo como dices llega a identificarse pero me imprime dos veces

printf("\n\n\n\tRETORNAR AL MENU: 1 = SI o 0 = NO , PARA FINALIZAR: ");


#5
Entonces

char M;

do
{
printf("\n\n\n\tRETORNAR AL MENU: 1 = SI o 0 = NO , PARA FINALIZAR: ");
scanf("%c",&M); //
if(M == 1) //
{
printf("\n\n");
goto menu; //
}
else if(M == 0)
{
return 0; 
}
}while (M<0 || M>1);



¿Cómo plantearías las comparaciones? Quiero validar sólo numeros para las opciones :( . Y me pierdo un poco
#6
Buenas, tengo una consulta como puedo validar sólo números en mi trabajo.

Lo que quiero saber si hay opciones en las librerias que uso para lograrlo ya que en internet encuentro muchas formas pero no las entiendo, porque usan otras librerias y me desviaré mucho de lo que me piden.

#include "stdafx.h"
#include "stdio.h"
#include "conio.h"

do
{
printf("\n\n\n\tRETORNAR AL MENU: 1 = SI o 0 = NO , PARA FINALIZAR: ");
scanf("%d",&M); //
if(M == 1) //
{
printf("\n\n");
goto menu; //
}
else if(M == 0)
{
return 0;  
}
}while (M<0 || M>1);


Sólo he logrado usar el bucle while para que no usen números fuera de las opciones, pero aún tengo el problema con las letras.

Saludos