Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/02/2014, 23:44
darksilk
 
Fecha de Ingreso: febrero-2014
Mensajes: 8
Antigüedad: 10 años, 3 meses
Puntos: 0
Como regresar a una linea en especifico sin usar goto

Hola a todos, soy nuevo por aqui y recien empiezo en c++

Me dejaron una practica en la escuela donde ingrese el precio de 3 productos, despues desglozar impuestos, sacar el total, ingresar cantidad a pagar y el cambio. Quiero que si se ingresa una cantidad menor a lo que se debe pagar, el programa no permita avanzar y vuelva a pedir la cantidad. Logre hacerlo con el comando goto, pero he leido que no se debe de usar, pero no encuentro otra manera, intente con el return pero nisquiera estoy seguro que sirva para lo que necesito.

Este es el codigo que tengo con el goto, espero alguien pueda ayudarme a reemplazarlo y hacerlo de la manera "correcta"

Gracias de antemano

[HIGHLIGHT="C++"]
Hola a todos, soy nuevo por aqui y recien empiezo en c++

Me dejaron un ejercicio donde ingrese el precio de 3 productos, despues desglozar impuestos, total, ingresar cantidad a pagar y el cambio. Quiero que si se ingresa una cantidad menor a lo que se debe pagar, el programa no permita avanzar y vuelva a pedir la cantidad. Logre hacerlo con el comando goto, pero he leido que no se debe de usar, pero no encuentro otra manera, intente con el return pero nisquiera estoy seguro que sirva para lo que necesito.

Este es el codigo que tengo con el goto, espero alguien pueda ayudarme a reemplazarlo y hacerlo de la manera "correcta"

Gracias de antemano


Código C++:
Ver original
  1. #include<iostream>
  2.  
  3. using namespace std;
  4.  
  5.     int main() {
  6.     float precio1,precio2,precio3,totaliva,iva1,total,recibido;
  7.  
  8.     cout << "Ingresa primer precio ";
  9.     cin >> precio1;
  10.  
  11.     cout << "Ingresa segundo precio ";
  12.     cin >> precio2;
  13.  
  14.     cout << "Ingresa tercer precio ";
  15.     cin >> precio3;
  16.  
  17.     total=precio1+precio2+precio3;
  18.     iva1=total*(16.0 / 100);
  19.     totaliva=total+iva1;
  20.  
  21.     cout << "\n\n\nSub-Total " << total;
  22.     cout << "\nIVA " << iva1;
  23.     cout << "\nTotal " << totaliva;
  24.  
  25.  
  26.     PAGO:
  27.     cout << "\n\n\nIngresa con cuanto vas a pagar $";
  28.     cin >> recibido;
  29.  
  30.     if(recibido > totaliva)
  31.     {
  32.         cout << "\n\nTu cambio es " << recibido - totaliva;
  33.     }
  34.     else
  35.     {
  36.         cout << "\n\nIngresaste una cantidad menor al total. Intenta nuevamente" << endl;
  37.         goto PAGO;
  38.  
  39.     }
  40.         cout << "\n\nGracias!!\n\n" ;
  41.     }