Ayuda con marco en consola solucionado

Iniciado por nolasco281, 27 Enero 2014, 06:48 AM

0 Miembros y 1 Visitante están viendo este tema.

nolasco281

Son dos preguntas como haga para que el system("pause"); quede dentro del marco
Y no sé dónde poner el for que me haga la parte de la derecha del marco.


case 1:
               case 1:
               system("cls");
               cout << "\xC9";
               lineaSuperiorYInferior();
               cout << "\xBB";
               primeraClase(); //Funcion
               cout << "\xC8";
               lineaSuperiorYInferior();
               cout << "\xBC";
               cout << "\n\n";
               system("pause");
               break;

// en la funcion tengo esto

      cout << "\xBA"<< " " << setw(58) << "Esta en el menu de primera Clase" <<   setw(20) << "\xBA";
       for (int i =0; i <= 1; i++)
       {
           marco();
       }
       
cout << "\xBA" << " La asignacion de su asiento es: " << primerClase << setw(45) << "\xBA";
       
       for (int i =0; i <= 17; i++)//Marco
      {
           marco();
      }

//Ahora bien, viene lo interesante cree dos funciones una para que me manejara las
//orillas y otra para parte superior y inferior y luego solo las maneje con un for //donde se necesitaba.

void marco()
{
       cout << "\xBA" << setw(79) << "\xBA";
}

void lineaSuperiorYInferior()
{
   for (int i =0; i <= 77; i++) //Linea siperior del marco
   {
       cout <<"\xCD";
   }
}

asi me quedo

Gracias y saludos

Lo que se puede imaginar... se puede programar.

leosansan

#1
Pregunta rara,rara. :rolleyes:

Supongo que esto es lo que buscas:




El extremo de la línea donde está la frase "La asignación de su ...." se obtiene restando a 79 la longitud de la cadena. Se puede hacer contando a ojo o con strlen.

Código (cpp) [Seleccionar]


#include <iostream>
#include <stdlib.h>
#include <iomanip>
#include <cstring>

using namespace std;


int main()
{
   int i;
   system("cls");
   for (int i =0; i <= 79; i++) //Linea superior del marco
     cout << "\xCD";
   for (int i =1; i <= 20; i++){
     if (i==1)
     cout << "\xBA"<< setw(58) << "Esta en el menu de primera Clase"
             << setw(21)<<"\xBA";
     if (i==1)
        cout << "\xBA" <<"La asignacion de su asiento es: "<< setw(47)<< "\xBA";
     if (i>1)
     cout << "\xBA"<< setw(79)<< "\xBA";
     }
   for (int i =0; i <= 79; i++)//Linea inferior del marco
     if (i>59)
       cout << ' ';
   else
     cout << "\xCD";
    cout << ' '<<system("pause");
   return 0;
}


¡¡¡¡ Saluditos! ..... !!!!





nolasco281

Exactamente eso quería  leosansan y te agradezco mucho la ayuda ya resolví el problema y con muchos menos for.

Comparto la solución.
Lo que se puede imaginar... se puede programar.

nolasco281

Gracias de nuevo leosansan saludos a todos y cuídense.

Mañana regreso con otra pregunta
Lo que se puede imaginar... se puede programar.