Dev - C++ - Ayuda por favor

 
Vista:
sin imagen de perfil

Ayuda por favor

Publicado por eren (3 intervenciones) el 19/11/2022 05:13:56
NECESITO VALIDAR EN EL APARTADO DE PLACAS QUE SOLO ME ACEPTE NUMEROS Y LETRAS MAYUSCULAS(7 CARACTERES).por favor:(

#include <iostream>
#include <fstream>
#include <stdlib.h>
#include <conio.h>
#include <string>
#include <ctype.h>


using namespace std;


struct CITA {

int numcita;
char placa[7];
char nombre[30];
int modelo;
char horario[15];
float dia;
float precio;


}citas[10];




void mayuscula(string& pal) {
for (int i = 0; i < pal.length(); i++) {

pal[i] = towupper(pal[i]);


}

}


int main() {

int opcion, salir1, OtraCita, contador = 1;
char Salir;
char opcionSalirMP;
string palabra;
do {
cout << "Bienvenido, que desea realizar hoy?" << endl;
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
cout << " [1] Agendar cita." << endl;
cout << " [2] Eliminar cita." << endl;
cout << " [3] Lista de citas." << endl;
cout << " [4] Guardar citas y salir." << endl;
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
cin >> opcion;
switch (opcion) {
case 1: {

for (int i = 0; i < 10; i++) {
while (contador < 10) {
citas[contador].numcita = contador;
system("cls");
cout << " Numero de cita: " << citas[contador].numcita << endl;

cout << " Ingrese el nombre del propietario: " << endl;

cin.ignore();
cin.getline(citas[contador].nombre, 30);


cout << " Ingrese las placas del vehiculo:" << endl;

cin >> palabra;
mayuscula(palabra);

cin.getline(citas[contador].placa, 7);

cout << " Ingrese el modelo del vehiculo: " << endl;

cin >> citas[contador].modelo;

cout << " Costo del servicio: " << endl;

cin >> citas[contador].precio;

cout << "Ingrese el dia de la cita: " << endl;
cin >> citas[contador].dia;

cout << " Ingrese la hora que desee *Formato de 24 hrs.* " << endl;
cin.ignore();
cin.getline(citas[contador].horario, 15);
cout << " " << endl;
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;

cout << " " << endl;
cout << " " << endl;
cout << " Numero de cita: " << citas[contador].numcita << endl;

cout << " Nombre del propietario: " << endl;
cout << " " << citas[contador].nombre << endl;

cout << " Placas del vehiculo: " << endl;
cout << " " << palabra << endl;

cout << " Modelo del vehiculo: " << endl;
cout << " " << citas[contador].modelo << endl;

cout << " Dia: " << citas[contador].dia << endl;
cout << " Hora: " << citas[contador].horario << endl;
cout << " Cantidad total a pagar(con IVA): " << endl;
cout << " " << citas[contador].precio + (citas[contador].precio * 0.16) << endl;
system("pause");
system("cls");
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
contador = contador + 1;
cout << " " << endl;


cout << " " << endl;
cout << "¿Quiere agendar otra cita?" << endl;
cout << "[1] Si." << endl;
cout << "[2] No." << endl;

cin >> OtraCita;
cout << " " << endl;
if (OtraCita == 1) {
continue;
}
else {

break;
}
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
}
cout << endl;
cout << " volver al menu principal o quieres salir ? \n";
cout << " [S] Volver al menu principal" << endl;
cout << " [N] Salir" << endl;
cin >> Salir;
cout << endl;
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
system("cls");
if (Salir == 's' || Salir == 'S') {
break;
}
else {
system("cls");
cout << "¿Seguro que quiere salir?" << endl;
cout << "[1] Si" << endl;
cout << "[2] No" << endl;
cout << " " << endl;
cin >> salir1;
if (salir1 == 1) {
return (0);
}
else {
system("cls");
return main();
}
}

}
break;
system("cls");
}
case 2: {
system("cls");
int placabuscar, confirm;
for (int y = 1; y < 15; y++) {
cout << " Ingrese el numero de cita de la cita que desea eliminar." << endl;

cin >> placabuscar;
for (int v = 1; v < 15; v++) {
char indiceCitasElim[15];
sprintf_s(indiceCitasElim, "%d", v + 1);
if (placabuscar == citas[v].numcita) {
cout << " " << endl;
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
cout << " Cita que sera eliminada: " << endl;
cout << " " << endl;
cout << "Numero de cita: " << citas[v].numcita << endl;
cout << " " << endl;
cout << " Nombre : " << endl;
cout << " " << citas[v].nombre << endl;
cout << " " << endl;
cout << " Placas: " << endl;
cout << palabra << endl;
cout << " " << endl;
cout << " Modelo : " << endl;
cout << citas[v].modelo << endl;
cout << " " << endl;
cout << "hora de la cita: " << endl;
cout << citas[v].horario << endl;
cout << " " << endl;
cout << " Cantidad total por pagar: " << endl;
cout << citas[v].precio << endl;
}
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
}
cout << " " << endl;
cout << "¿Esa es la cita que se desea eliminar?" << endl;
cout << "[1] Si" << endl;
cout << "[2] No" << endl;
cout << " " << endl;
cin >> confirm;
if (confirm == 1) {
for (int p = 1; p < 15; p++) {
if (placabuscar == citas[p].numcita) {
strcpy_s(citas[p].nombre, " ");
citas[p].dia = 0;
strcpy_s(citas[p].horario, " ");
citas[p].precio = 0;
cout << " " << endl;
cout << " Cita eliminada." << endl;
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
}

}
}
else {
system("cls");
continue;

}
cout << endl;
cout << "¿Quieres volver al menu principal o quieres salir? \n";
cout << "[S] Volver al menu principal" << endl;
cout << "[N] Salir" << endl;
cin >> Salir;
cout << endl;
system("cls");
if (Salir == 's' || Salir == 'S') {
break;
}
else {
system("cls");
cout << "¿Seguro que quiere salir? NO se guardaron las citas en un archivo de texto." << endl;
cout << " [1] Si" << endl;
cout << " [2] No" << endl;
cout << " " << endl;
cin >> salir1;
if (salir1 == 1) {
return (0);
}
else {
system("cls");
return main();
}
}
}
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
break;
}
case 3: {
system("cls");
int ingresarOtroDia, opcionSalirLista, salir2;
int diaABuscar;
for (int e = 1; e < 15; e++) {
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
cout << " Ingrese un dia: " << endl;
cin >> diaABuscar;
for (int o = 1; o < 15; o++) {
char indiceCitas[15];
sprintf_s(indiceCitas, "%d", o + 1);
if (diaABuscar == citas[o].dia) {
cout << " " << endl;
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
cout << " Citas del dia: " << diaABuscar << endl;
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
cout << "Numero de cita: " << citas[o].numcita << endl;
cout << " " << endl;
cout << " Nombre del propietario: " << endl;
cout << citas[o].nombre << endl;
cout << " " << endl;
cout << " Dia y hora de la cita : " << endl;
cout << " Dia: " << citas[o].dia << " Hora (24 hrs): " << citas[o].horario << endl;
cout << " " << endl;
cout << " Placas : " << endl;
cout << " " << palabra << endl;
cout << " " << endl;
cout << " Modelo: " << endl;
cout << " " << citas[o].modelo << endl;
cout << " " << endl;
cout << " Cantidad total por pagar: " << endl;
cout << citas[o].precio << endl;
cout << " " << endl;
cout << "------------------------------------------------------------------------------------------------------------------------" << endl;
}
}
cout << " " << endl;

system("pause");
cout << " " << endl;
cout << "¿Quiere ingresar otro dia?" << endl;
cout << "[1] Si." << endl;
cout << "[2] No." << endl;
cin >> ingresarOtroDia;
cout << " " << endl;
if (ingresarOtroDia == 1) {
system("cls");
continue;
}
else {
break;
}
}
cout << endl;
cout << " Quieres volver al menu principal o quieres salir? \n";
cout << " [S] Volver al menu principal" << endl;
cout << " [N] Salir" << endl;

cin >> opcionSalirMP;
cout << endl;
system("cls");
if (opcionSalirMP == 's' || opcionSalirMP == 'S') {
break;
}
else {
system("cls");
cout << "¿Seguro que quiere salir? NO se guardaron las citas en un archivo de texto." << endl;
cout << "[1] Si" << endl;
cout << "[2] No" << endl;
cout << " " << endl;

cin >> salir1;
if (salir1 == 1) {
return (0);
}
else {
system("cls");
return main();
}
}
break;

}

case 4: {
system("cls");


ofstream cita;

cita.open("Registros.txt", ios::out);

if (cita.fail()) {
cout << "No se pudieron guardar las citas en el archivo.";
exit(1);
}

cita << "SERVICIO" << endl;

for (int m = 1; m < 15; m++) {
if (citas[m].dia > 0 && citas[m].numcita < 11) {
cita << " " << endl;
cita << "Numero de cita: " << citas[m].numcita << endl;
cita << " " << endl;
cita << "Nombre : " << citas[m].nombre << endl;
cita << " " << endl;
cita << " Hora (24 hrs.): " << citas[m].horario << endl;
cita << " " << endl;
cita << " Total: " << citas[m].precio << endl;
cita << " " << endl;
cita << " ************ " << endl;
cita << " " << endl;
}
}
cita.close();

cout << " " << endl;
cout << " Se guardaron las citas en el archivo de texto" << endl;
cout << " " << endl;
cout << " ¿Seguro que quiere salir?" << endl;
cout << " [1] Si" << endl;
cout << " [2] No" << endl;
cout << " " << endl;
cin >> salir1;
if (salir1 == 1) {
return (0);
}
else {
system("cls");
return main();
}
break;
}
default: {
system("cls");
return main();
break;
}
}

} while (opcion != 6);
return (0);
system("pause");



}//fin prog
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

Ayuda por favor

Publicado por eren (3 intervenciones) el 19/11/2022 05:28:46
el que me ayude con eso, recibira un pago.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar