Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Entre para seguir isso  
Gabriel Lemos Alves

Ler telefone cadastrado com máscara c++

Recommended Posts

Então , preciso ler e mostrar o telefone cadastrado por máscara. Ex: (DDD) XXXX-XXXX. Porém não achei nenhum exemplo em c++ , somente em java. E o email também deve ser válido, ou seja, deve conter um "@" e um "." (ponto final) após o "@".

 

#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <string.h>

using namespace std;

static int id = 0;

class pessoa {

private:
    int idPessoa, alt_codigo, cod_busca;
    char nome[30], email[50], telefone[10], rg[11], nome_busca[30], alt_nome[30];
    char novo_nome[30], novo_email[50], novo_telefone[10], novo_rg[11];

public:
    void cadastrar();
    void listar();
    void alterar(int y);
    void busca(int y);
};

pessoa **p;

int getId() {
    id++;
    return id;
}

void pessoa :: cadastrar() {

    idPessoa = getId();

    cout << "Digite o Nome: ";
    cin >> nome;

    cout << "Digite o Email: ";
    cin >> email;

    cout << "Digite o Telefone (com DDD): ";
    cin >> telefone;

    cout << "Digite o RG: ";
    cin >> rg;

};

void pessoa :: listar() {

    cout << "Codigo: " << idPessoa;

    cout << " Nome: " << nome;

    cout << " Email: " << email;

    cout << " Telefone: " << telefone;

    cout << " RG: " << rg << endl << endl;
};

void pessoa :: alterar(int y) {

    int achou=0;
    int x;
    int busca_alterar;
    int alt_cad;

    cout << "1- Pesquisar por Nome\n2- Pesquisar por Codigo\nDigite a opcao desejada: ";
    cin >> busca_alterar;

    if(busca_alterar==1){
        system("cls");
        cout << "Digite o Nome do Cliente: ";
        cin >> alt_nome;

      for ( int i=0; i<y; i++ ){
             if(strcmp(p[i]->nome,alt_nome)==0){
                achou=1;
                x=i;
                break;
             }
        }if (achou==1){
            cout << "\nCodigo: " << p[x]->idPessoa;
            cout << " Nome: " << p[x]->nome;
            cout << " Email: " << p[x]->email;
            cout << " Telefone: " << p[x]->telefone;
            cout << " RG: " << p[x]->rg << endl << endl;

            cout << "\n1- Alterar Nome\n2- Alterar Email\n3- Alterar Telefone\n4- Alterar RG\nDigite a opcao desejada: ";
            cin >> alt_cad;
            system("cls");

            if(alt_cad==1){
            cout << "Digite o novo Nome: ";
            cin >> novo_nome;
            strcpy(p[x]->nome,novo_nome);
            }

            if(alt_cad==2){
            cout << "Digite o novo Email: ";
            cin >> novo_email;
            strcpy(p[x]->email,novo_email);
            }

            if(alt_cad==3){
            cout << "Digite o novo Telefone:";
            cin >> novo_telefone;
            strcpy(p[x]->telefone,novo_telefone);
            }

            if(alt_cad==4){
            cout << "Digite o novo Rg: ";
            cin >> novo_rg;
            strcpy(p[x]->rg,novo_rg);
            }
            system("cls");

        }else{
            system("cls");
            system("color 74");
            cout << "O Nome Digitado Nao Existe !!!" << endl;
            system("pause");
            system("cls");
            system("color 07");

        }
    }

    if(busca_alterar==2){
        system("cls");
        cout << "Digite o Codigo do Cliente: ";
        cin >> alt_codigo;

      for ( int i=0; i<y; i++ ){
             if(p[i]->idPessoa==alt_codigo){
                achou=1;
                x=i;
                break;
             }
        }if (achou==1){
            cout << "\nCodigo: " << p[x]->idPessoa;
            cout << " Nome: " << p[x]->nome;
            cout << " Email: " << p[x]->email;
            cout << " Telefone: " << p[x]->telefone;
            cout << " RG: " << p[x]->rg << endl << endl;

            cout << "\n1- Alterar Nome\n2- Alterar Email\n3- Alterar Telefone\n4- Alterar RG\nDigite a opcao desejada: ";
            cin >> alt_cad;
            system("cls");

            if(alt_cad==1){
            cout << "Digite o novo Nome: ";
            cin >> novo_nome;
            strcpy(p[x]->nome,novo_nome);
            }

            if(alt_cad==2){
            cout << "Digite o novo Email: ";
            cin >> novo_email;
            strcpy(p[x]->email,novo_email);
            }

            if(alt_cad==3){
            cout << "Digite o novo Telefone:";
            cin >> novo_telefone;
            strcpy(p[x]->telefone,novo_telefone);
            }

            if(alt_cad==4){
            cout << "Digite o novo Rg: ";
            cin >> novo_rg;
            strcpy(p[x]->rg,novo_rg);
            }
            system("cls");

        }else{
            system("cls");
            system("color 74");
            cout << "O Codigo Digitado Nao Existe !!!" << endl;
            system("pause");
            system("cls");
            system("color 07");

        }
    }
};

void pessoa :: busca(int y){

    int achou=0;
    int x;
    int tipo_busca;

    cout << "1- Busca por Codigo\n2- Busca por nome\nDigite a opcao desejada: ";
    cin >> tipo_busca;

    if(tipo_busca==1){
        system("cls");
        cout << "Digite o Codigo Que Sera Buscado: ";
        cin >> cod_busca;

        for ( int i=0; i<y; i++ ){
             if(p[i]->idPessoa==cod_busca){
                achou=1;
                x=i;
                break;
             }
        }if (achou==1){
            system("cls");
            cout << "Codigo: " << p[x]->idPessoa;
            cout << " Nome: " << p[x]->nome;
            cout << " Email: " << p[x]->email;
            cout << " Telefone: " << p[x]->telefone;
            cout << " RG: " << p[x]->rg << endl << endl;

        }else {
            system("cls");
            system("color 7D");
            cout << "O Codigo Digitado Nao Existe !!!" << endl;
            system("pause");
            system("cls");
            system("color 07");
        }
    }

    if(tipo_busca==2){
        system("cls");
        cout << "Digite o Nome Que Sera Buscado: ";
        cin >> nome_busca;

        for ( int i=0; i<y; i++ ){
             if(strcmp(p[i]->nome,nome_busca)==0){
                achou=1;
                x=i;
                break;
             }
        }if (achou==1){
            system("cls");
            cout << "Codigo: " << p[x]->idPessoa;
            cout << " Nome: " << p[x]->nome;
            cout << " Email: " << p[x]->email;
            cout << " Telefone: " << p[x]->telefone;
            cout << " RG: " << p[x]->rg << endl << endl;

        }else {
            system("cls");
            system("color 7D");
            cout << "O Nome Digitado Nao Existe !!!" << endl;
            system("pause");
            system("cls");
            system("color 07");
        }
    }
};

int main() {

    int y = 0, opc, new_opc;
    p = (pessoa **)malloc(sizeof(pessoa**));

    do {
        cout << "\n----- MENU -----" << endl;
        cout << "1- Cadastrar" << endl;
        cout << "2- Listar" << endl;
        cout << "3- Alterar" << endl;
        cout << "4- Buscar" << endl;
        cout << "5- Reiniciar " << endl;
        cout << "0- Sair" << endl;
        cout << "----------------" << endl;
        cout << "Informe a Opcao: ";
        cin >> opc;

        switch ( opc ) {
            case 1:
                system ( "cls" );

                do {
                    p[y] = new pessoa;
                    p[y]->cadastrar();
                    new_opc = 0;
                    cout << "Deseja continuar cadastrando? 1-Sim / 2-Nao " << endl;
                    cin >> new_opc;
                    y++;

                } while ( new_opc == 1 );

                system ( "cls" );
                break;

            case 2:
                system ( "cls" );
                if (y>=1){
                    for ( int i = 0; i < y; i++ ) {
                        p[i]->listar();
                    }
                }else{
                    cout << "Nao existem cadastros" <<endl ;
                    break;
                }
                break;

            case 3:
                system ( "cls" );
                if (y>=1){
                    p[0]->alterar(y);
                }else{
                    cout << "Nao existem cadastros" <<endl ;
                    break;
                }
                break;

            case 4:
                if (y>=1){
                system ( "cls" );
                    p[0]->busca(y);
                }else{
                    system ( "cls" );
                    cout << "Nao existem cadastros" <<endl ;
                    break;
                }
                break;


            case 5:
                system ( "cls" );
                y=0;
                break;

            default:
                exit ( 0 );
        }

    } while ( opc != 0 );

    delete[] p;

    return 0;
}

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×