Ir ao conteúdo

Posts recomendados

Postado

Ola galera , segue abaixo o codigo de um sistema de cadastro ... O problema que estou tentando desvendar é depois de efetuar o login sendo qualquer nome e a senha 123456  ... Ele não leva para o menu de opções ... Eu tinha testado no app do cel que executa c++ e foi tranquilo , mas pelo pc não esta indo... Alguem pode ajudar?

 

 

 

---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 

 

 

#include <stdio.h>
#include <stdlib.h>
#include <Windows.h>

int main (){

        int opcao,opcao1,opcao2,opcao3,opcao4,i,quant ;

        struct referencia{

         char nome0[100],nome1[100],nome2[100],nome3[100],nome4[100];
        }
CA[600];
CA[600];
CA[600];
CA[600];
CA[600];
CA[600];
CA[600];
            char nome5[100];


    system("cls");
    printf("Nome do Atendente:  ");
    fflush(stdin);
    scanf("%[^\n]s",nome5);
    printf("Senha da Empresa:   ");
    scanf("%d",&opcao3);

        switch(opcao3){
         case 123456:

            while(opcao!=6){
         while(opcao2!=1){
            system("color F4");
            system("cls");

                printf("-----------------------------------------------------------------------------------------------");
                printf("\t\t\t\tEmpresa\n");
                printf("-----------------------------------------------------------------------------------------------\n\n");
                printf("\t\t\tSeja Bem Vindo, Atendente %s\n",nome5);
                printf("________________________________________________________________________________________________\n");
                printf("1-Cadastrar\n");
                printf("2-Exibir Dados\n");
                printf("3-Alterar\n");
                printf("4-Excluir\n");
                printf("5-informações do Sistema\n");
                printf("6-Sair\n");
                printf("-----------------------------------------------------------------------------------------------\n\n");
                printf("\nQual Opcao voce Deseja Acessar? ");
                scanf("%d,&opcao");

    switch(opcao){
        case 1:
                        system("cls");
                        printf("\n\n Quantos Cadastros voce Deseja Realizar? ");;
                        scanf("%d",&quant);

       for(i=1;i<=quant;i++){
         system("cls");
            printf("\n\n\t\t\t      INICNADO CADASTRO  %d\n",i);
            printf("\t\t\t          --------------------\n\n");
            printf("\n Nome do Comprador:    ");
            fflush(stdin);
            scanf("%[^/n]s",CA [i].nome0);
            printf("\n Telefone do Comprador  :  ");
            fflush(stdin);
            scanf("%[^/n]s",CA [i].nome1);
            printf("\n Marca do Comprador  :  ");
            fflush(stdin);
            scanf("%[^/n]s",CA [i].nome2);
            printf("\n Codigo do Comprador  :  ");
            fflush(stdin);
            scanf("%[^/n]s",CA [i].nome3);
            printf("\n Preco do Comprador  :  ");
            fflush(stdin);
            scanf("%[^/n]s",CA [i].nome4);
            printf("\n\n\t\t");
            system("pause");
            system("cls");
        }
           break;

            case 2:
                system("cls");

            for(i=1;i<=quant;i++);{
            system("cls");
            printf("\n\n\t\t\t      EXIBINDO CADASTRO  %d\n",i);
            printf("\t\t\t          --------------------\n\n");
            printf("\n Nome do Comprador:   %s\n",CA [i].nome0);
            printf("\n Telefone do Comprador  :  %s\n",CA [i].nome1);
            printf("\n Marca do Produto :  %s\n",CA [i].nome2);
            printf("\n Codigo do Produto :  %s\n",CA [i].nome3);
            printf("\n Preco do Produto :  %s\n",CA [i].nome4);
            system("pause");
    }

            break;

            case 3:
                system("cls");
            for(i=1;i<=quant;i++){
                        printf("\n\n\t\t\t      ALTERAR CADASTRO\n");
                        printf("\t\t\t          --------------------\n\n");
                        printf(" 1- Nome do Comprador");
                        printf("\n 2- Telefone do Comprador");
                        printf("\n 3- Marca do Produto");
                        printf("\n 4- Codigo do Produto");
                        printf("\n 5- Preco do Produto\n\n");
                        printf("Qual Opcao voce Deseja Acessar? \n");
                        scanf("%d",&opcao1);

    switch(opcao1){
        case 1:
            for(i=1;i<=quant;i++){
             system("cls");
            printf("\n\n CADASTRO %d\n",i);
            printf("\n\n Alterar Nome do Comprador");
            fflush(stdin);
            scanf("%[^\n]s",&CA [i].nome0);
            printf("\n Novo Nome do Comprador: %s\n\n\t\t");
            system("pause");
            }
            break;

            case 2:
                for(i=1;i<=quant;i++){
                   system("cls");
            printf("\n\n CADASTRO %d\n",i);
            printf("\n\n Alterar Telefone do Comprador");
            fflush(stdin);
            scanf("%[^\n]s",&CA [i].nome1);
            printf("\n Novo Telefone do Comprador: %s\n\n\t\t");
            system("pause");
            }
            break;

        case 3:
        for(i=1;i<=quant;i++){
        system("cls");
            printf("\n\n CADASTRO %d\n",i);
            printf("\n\n Alterar Marca do Comprador");
            fflush(stdin);
            scanf("%[^\n]s",&CA [i].nome2);
            printf("\n Nova Marca do Comprador: %s\n\n\t\t");
            system("pause");
            }
            break;

        case 4:
           for(i=1;i<=quant;i++){
            system("cls");
            printf("\n\n CADASTRO %d\n",i);
            printf("\n\n Alterar Codigo do Comprador");
            fflush(stdin);
            scanf("%[^\n]s",&CA [i].nome3);
            printf("\n Novo Codigo do Comprador: %s\n\n\t\t");
            system("pause");
            }
            break;

        case 5:
            for(i=1;i<=quant;i++){
             system("cls");
            printf("\n\n CADASTRO %d\n",i);
            printf("\n\n Alterar Preco do Comprador");
            fflush(stdin);
            scanf("%[^\n]s",&CA [i].nome4);
            printf("\n Novo Preco do Comprador: %s\n\n\t\t");
            system("pause");
            }
            break;
        }
    }
     break;

        case 4:
            system("cls");
            for(i=1;i<=quant;i++){
                 printf("\n\n\t\t\t      ALTERAR CADASTRO\n");
                        printf("\t\t\t          --------------------\n\n");
                        printf(" 1- Nome do Comprador");
                        printf("\n 2- Telefone do Comprador");
                        printf("\n 3- Marca do Produto");
                        printf("\n 4- Codigo do Produto");
                        printf("\n 5- Preco do Produto\n\n");
                        printf("\n 6- Exlcuir Todos os Dados\n\n");
                        printf("Qual Opcao voce Deseja Acessar? \n");
                        scanf("%d",&opcao4);

        switch(opcao4){
            case 1:
            for(i=1;i<=quant;i++){
              system("cls");
            memset(&CA [i].nome0,0,sizeof(CA [i].nome0));
            printf("Nome do Comprador Excluido!\n\n");
            system("pause");
            }
            break;

            case 2:
            for(i=1;i<=quant;i++){
             system("cls");
            memset(&CA [i].nome1,0,sizeof(CA [i].nome1));
            printf("Telefone do Comprador Excluido!\n\n");
            system("pause");
                }
                break;

            case 3:
             for(i=1;i<=quant;i++){
            system("cls");
            memset(&CA [i].nome2,0,sizeof(CA [i].nome2));
            printf("Marca do Produto Excluida\n\n");
            system("pause");
            }
            break;

            case 4:
            for(i=1;i<=quant;i++){
              system("cls");
            memset(&CA [i].nome3,0,sizeof(CA [i].nome3));
            printf("Codigo do Produto Excluido!\n\n");
            system("pause");
            }
            break;

            case 5:
              for(i=1;i<=quant;i++){
                system("cls");
            memset(&CA [i].nome4,0,sizeof(CA [i].nome4));
            printf("Preco do Produto Excluido!\n\n");
            system("pause");
            }
            break;

            case 6:
            for(i=1;i<=quant;i++){
            system("cls");
          memset(&CA [i].nome0,0,sizeof(CA [i].nome0));
          memset(&CA [i].nome1,0,sizeof(CA [i].nome1));
          memset(&CA [i].nome2,0,sizeof(CA [i].nome2));
          memset(&CA [i].nome3,0,sizeof(CA [i].nome3));
          memset(&CA [i].nome4,0,sizeof(CA [i].nome4));
          printf("Todos os Dados Foram Excluidos!\n\n");
          system("pause");
            }
            break;
        }
    }
    break;

    case 5:
        system("cls");
        printf("Componentes: \n\n");
        printf("Anthony \n");
        printf("Jean \n");
        printf("Matheus \n");
        printf("Ariel \n");
        printf("ALUNO VAGO \n");
        printf("Copyringht@2020\n\n");
        system("pause");
        break;

        case 6:
        system("cls");
        printf("\n voce Realmente Deseja Sair do Sistema da Empresa?\n\n");
        printf(" 1- Sim\n 2- Nao");
        printf("\n\n ");
        scanf("%d",&opcao2);

    switch(opcao2){
        case 1:
         system("cls");
        printf("\n\n Volte Sempre a EMPRESA ! \n\n\n\t\t");
        system ("pause");
        return 0;
        break;
    }
    }
    }
    break;
         }
    }

system("pause");
return 0;
}

 

  • Curtir 1
Postado

Escreva seu programa em torno dos dados e terá uma vida mais tranquila.

 

Não escreva uma única linha sem um propósito e pense antes em tudo que o programa vai fazer. 

Entenda que você pode escrever vários pequenos programas para testar as coisas. Ninguém vai saber. E assim termina mais depressa.

 

Seu programa não está nada bom. Você tem um livro sobre C? Uma apostila ao menos? Um site em que confie? Um "guru" que tenha escrito mais de dois programas nessa linguagem?

 

Sobre esse trecho:

 

int main (){
        int opcao,opcao1,opcao2,opcao3,opcao4,i,quant ;
        struct referencia{
         char nome0[100],nome1[100],nome2[100],nome3[100],nome4[100];
        }
CA[600];
CA[600];
CA[600];
CA[600];
CA[600];
CA[600];
CA[600];
            char nome5[100];

 

Se você declarou nome[100] sabe da existência de um vetor, e assim sabe que poderia ter 
 

    int opcao[4]; 


por exemplo. E talvez mesmo
 

    char nome[5][100];


já que parecem ser 5 deles?

 

E o que pretende com CA[600]; 7 vezes? 
 

Na primeira indica que vai ter 600 dessas struct referencia em um vetor chamado CA. Seria isso o que tentou escrever? 🔍 Como acha que o compilador vai entender essas linhas todas duplicadas? Não vai.

 

A julgar por esse outro trecho:

 

	printf("\n\n\t\t\t      ALTERAR CADASTRO\n");
	printf("\t\t\t          --------------------\n\n");
	printf(" 1- Nome do Comprador");
	printf("\n 2- Telefone do Comprador");
	printf("\n 3- Marca do Produto");
	printf("\n 4- Codigo do Produto");
	printf("\n 5- Preco do Produto\n\n");
	printf("\n 6- Exlcuir Todos os Dados\n\n");

 

Parece que tem compradores e produtos. E alguém vai atender.

 

De volta aos dados, antes de escrever o programa:

 

Considere por exemplo
 

typedef struct
 {
    char    marca[50];
    char    codigo[10];
    char    preco[10];

}   Produto;

typedef struct
{
    int         total;
    Produto     prod[60];

}   Cadastro;

typedef struct
 {
    char    nome[50];
    char    telefone[25];

}   Pessoa;

typedef struct 
{
    char    senha[16];
    Pessoa  func;

}   Atendente;

 

  • Então um produto tem marca, código e preço. Use tudo como char. Programas simples como esse não vão operar com os dados, como somar preços e testar códigos.
  • O cadastro tem produtos. E tem um total de produtos atualizado
  • uma pessoa tem nome e telefone
  • um atendente é uma pessoa, mas tem uma senha pra acessar o sistema
  • podia ter uma estrutura para compradores e atendentes, é só um exemplo. Pode marcar os registros vazios também, com um valor específico

E essa declaração
 

int main (void)
{
    Cadastro    estoque;
    estoque.total = 0;
    Pessoa      comprador[20] = {0};
    Atendente   atendente[10] = {0};
 ...

 

O estoque é uma cadastro e dentro tem produtos. Começa vazio.

 

Sem uma única linha de código já tem algum sentido, algum controle.

 

Veja a saida
 

[2] Nome: 'Jhonny Cash' Telefone: '+55 (11) 9 1234 4321'
[1] Nome: 'Jhonny Cash' Senha: '98xzy765'
[1] Marca 'Aston Martin'

 

Deste programa

 

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

typedef struct
 {
    char    marca[50];
    char    codigo[10];
    char    preco[10];

}   Produto;

typedef struct
{
    int         total;
    Produto     prod[60];

}   Cadastro;

typedef struct
 {
    char    nome[50];
    char    telefone[25];

}   Pessoa;

typedef struct 
{
    char    senha[16];
    Pessoa  func;

}   Atendente;

int main (void)
{
    Cadastro    estoque;
    estoque.total = 0;
    Pessoa      comprador[20] = {0};
    Atendente   atendente[10] = {0};
 
    // uma pessoa para teste,
    // nome e telefone
    Pessoa um_cara = 
    {
        "Jhonny Cash",
        "+55 (11) 9 1234 4321"
    };

// tem 20 compradores. usa 19
    for( int i = 0; i<19; i+=1 )
    {
        strcpy(comprador[i].nome, um_cara.nome);
        strcpy(comprador[i].telefone, um_cara.telefone);
    };  // for()

// tem 10 atendentes, usa 9
    for( int i = 0; i<9; i+=1 )
    {
        char* senha = "98xzy765";
        strcpy(atendente[i].func.nome, um_cara.nome);
        atendente[i].func.telefone[0] = 0; // em branco
        strcpy(atendente[i].senha, senha);
    };  // for()

// mostra o terceiro atendente e o quato comprador
    printf("[%d] Nome: '%s' Telefone: '%s'\n",
        2, comprador[2].nome, comprador[2].telefone
    );

// mostra o segundo atendente usando uma variavel
    int n = 1;
    printf("[%d] Nome: '%s' Senha: '%s'\n",
        n, atendente[n].func.nome, atendente[n].senha
    );
    
    Produto prod = { 
        .marca = "Aston Martin",
        .preco = "$315.000",
        .codigo = "DBS"
    };

    // poe no cadastro
    estoque.prod[0] = prod; // copia tudo;
    estoque.total += 1;

    // mostra a marca do primeiro produto no estoque
    printf("[%d] Marca '%s'\n", 1, estoque.prod[0].marca);

    return 0;
}
 

 

E entenda como acessar essas coisas . E uma maneira de  começar a testar seu programa em 10 minutos. Só copiei os dados do seu programa, colocando alguns valores e seguindo em frente.

 

Seu programa tem mais de 300 linhas. É muito para não ter nada testado. E para rodar precisa ficar parado na frente do terminal digitando coisas. Não leva a nada.

 

 

 

 

 

  • Curtir 3
Postado
3 minutos atrás, Anthony1104 disse:

Ta dizendo que o Codigo que tu posto acima seria uma forma mais fácil de montar ?

 

Isso não é "montar nada". Apenas recortei do seu programa para te mostrar que pode escrever os dados antes de tudo. é um exemplo. E já funciona.

 

 

Imagino que tenha ao menos lido o que eu expliquei.

 

Aquele código que eu postei não foi programado. Só copiei do seu programa. Estou te mostrando que você tem uma cadastro com produtos e pessoas que são compradores ou atendentes e que pode vincular isso ANTES de começar a escrever um programa de 300 linhas que ainda tem muitos erros. 

 

E tem um cadastro com produtos.

 

Eu não programei nadinha. mas já posso testar só com o que eu  fiz, só com os dados.

 

Entendeu o que está errado em seu programa?

 

 

  • Curtir 1
Postado
17 minutos atrás, Anthony1104 disse:

 

O que eu acho que importa você perceber é que eu não comecei a programar nada. Apenas criei os dados já costurados com a realidade de produtos, cadastro, pessoas, atendentes e compradores, senhas e tal. Coloquei uns dados nos arquivos e já posso escrever as funções e testar o programa. Em 10 minutos a partir do enunciado. ANTES de tudo. 

 

Sem menu, sem ler dados, sem printf(). Já posso começar os testes. Tem atendente, senha, produto, cadastro, tudo. 

  • Curtir 1
Postado

@arfneto Realmente , obrigado eu estou perdido ainda ..... Meu foco é criar algo nesse tipo :

 

tela de login >telas para cadastro de clientes , " " de agendamentos ," " de profissionais , " " de funcionarios , reclamaçoes e eleogios dos clientes , cancelamento de serviço... ... Telas de relatorios de clientes por unidade de Rede que mais presta serviços , totalizaçao diaria e mensal do faturamento por unidade de rede e total da rede ....

 

Eu aprendi o basico do C ,mas me perco nos comandos ... Eu vi que tu focou nos dados , interessante isso .. Fica mais organizado .. mas sabe como posso começar? No caso seguindo o que coloquei acima.

 

 

  • Curtir 1
Postado

@Anthony1104 Oi. Nos diga o que você quer fazer em tópicos. Vou te ajudar didaticamente sem "blá blá blá" ou crítica.

Primeiro: O programa tem que fazer o que?

Dica para quem quer ajudar, as pessoas que pedem ajuda a querem para problemas pontuais.

Geralmente estudantes de faculdade querendo resolver tarefas.


Ao invés de usarem funções prontas, criem códigos com passo a passo.

Vai ajudar nos estudos destas pessoas.

  • Curtir 1
Postado
4 horas atrás, Anthony1104 disse:

mas sabe como posso começar? No caso seguindo o que coloquei acima

 

Eu achava que eu tinha te mostrado por onde começar: pelos dados. Pelo programa que eu escrevi por exemplo.

Recorte aquilo e aproveite os dados e vá fazendo suas funções em pequenos programas. Não perca tempo com nada como entrada de dados, menus, loops, e em especial cores, limpar a tela, acentos. NADA. Faça o simples.

Digite suas telas de consulta no IDE direto. E DEPOIS faça com que saiam iguais no programa. Uma a uma. Atente para o que @KXSY te explicou por exemplo.

 

Antes de tudo escreva as funções que listam os dados. É a realidade: elas vão te ajudar a testar seu programa afinal. E use dados de teste como eu te mostrei. 

 

Exemplo:
 

Tenho tempo hoje e vou te mostrar um caso simples, com recortar e colar e partindo claro dos dados e do programa que te mostrei que tem, digamos, uns dados.
 

Se eu preciso listar os produtos:
 

Os produtos tem marca, codigo e preco. Defina como quer listar isso. De uma vez. 


Se seu cadastro tem esses produtos
 

typedef struct
{
    char    marca[50];
    char    codigo[10];
    char    preco[10];

}   Produto;

typedef struct
{
    int         total;
    Produto     prod[60];

}   Cadastro;

 

O óbvio: um cadastro tem N produtos.
Vamos abreviar: escreva um gabarito. Nada de C. Texto apenas
 

     *    1    *    2    *    3    *    4    *    5    *      
012345678901234567890123456789012345678901234567890123456789
 #     Codigo                 Marca                  Preco
00  0123456789  012345678901234567890123456789  0123456789
00  0123456789  012345678901234567890123456789  0123456789
00  0123456789  012345678901234567890123456789  0123456789
00  0123456789  012345678901234567890123456789  0123456789
00  0123456789  012345678901234567890123456789  0123456789       

 

As duas primeiras linhas tem os números das colunas para te orientar. Lógico que não vai por isso na tela de saída. O próprio IDE mostra a coluna onde está o cursor e também ajuda. Recortar e colar com 0123456789 faz o resto. Esqueça as 50 posições de marca, Deixe só 30. E siga em frente. Serão 60 posições por linha, como está no gabarito. Poruqe esses números? Para não pensar. Só fazer.

 

Num printf() poderá usar
 

        "%02d  %10s  %30s  %10s"


E já sabe que vai sair certinho. E nem começou a programar ainda.

 

Quantos produtos tem no cadastro? Está na estrutura já. Porque você pensou nisso antes: estoque.total no exemplo.

 

Quanto demora pra programar isso? Como vai ser a função? Algo como
 

    int lista_cadastro(Cadastro*); 


Porque não? Passa o endereço do cadastro, ela imprime o relatório e retorna o total de caras, que deve ser igual ao total de produtos, ou um valor negativo para algum erro a aparecer no futuro.

 

Quanto demora para escrever isso? Já está resolvido. É só copiar...
 

int        lista_cadastro(Cadastro* cad)
 {
     printf("\nTotal de %d produtos neste cadastro\n",
        cad->total);
    for(int i = 0; i<cad->total; i+=1)
    printf( "%02d  %10s  %30s  %10s\n",
        i,
        cad->prod[i].codigo,
        cad->prod[i].marca,
        cad->prod[i].preco
        );
    return cad->total;
 };

 

4 Comandos... Será que funciona? Porque não? 
 

Total de 12 produtos neste cadastro

01         DBS                    Aston Martin    $315.000
02         DBS                    Aston Martin    $315.000
03         DBS                    Aston Martin    $315.000
04         DBS                    Aston Martin    $315.000
05         DBS                    Aston Martin    $315.000
06         DBS                    Aston Martin    $315.000
07         DBS                    Aston Martin    $315.000
08         DBS                    Aston Martin    $315.000
09         DBS                    Aston Martin    $315.000
10         DBS                    Aston Martin    $315.000
11         DBS                    Aston Martin    $315.000
12         DBS                    Aston Martin    $315.000

 

Claro que todos os produtos estão iguais. Faz diferença? Não.
 

    // poe no cadastro
    int n = 12; // n caras no teste
    for( int i=0; i<n; i+=1)
        estoque.prod[i] = prod; // copia tudo;
    estoque.total = n;

 

Só precisamos de uma função que liste o cadastro. Listou. Só rodou uma vez, Tudo certinho e alinhado. É o que importa. Mas a maca tem 50... Não importa: na hora de pôr em produção basta truncar. Na hora de testar não use nem 10. Mas use zero e 49 para testar uma vez ;) 

 

Faça isso para todas as suas telas, como @KXSY escreveu.  Use um programa para cada tela. Recortar e colar. E logo terá terminado...

 

Eis o mesmo programa com umas 10 linhas a mais

Spoiler

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

typedef struct
 {
    char    marca[50];
    char    codigo[10];
    char    preco[10];

}   Produto;

typedef struct
{
    int         total;
    Produto     prod[60];

}   Cadastro;

typedef struct
 {
    char    nome[50];
    char    telefone[25];

}   Pessoa;

typedef struct 
{
    char    senha[16];
    Pessoa  func;

}   Atendente;

 int        lista_cadastro(Cadastro*);

int main (void)
{
    Cadastro    estoque;
    estoque.total = 0;
    Pessoa      comprador[20] = {0};
    Atendente   atendente[10] = {0};
 
    // uma pessoa para teste,
    // nome e telefone
    Pessoa um_cara = 
    {
        "Jhonny Cash",
        "+55 (11) 9 1234 4321"
    };

// tem 20 compradores. usa 19
    for( int i = 0; i<19; i+=1 )
    {
        strcpy(comprador[i].nome, um_cara.nome);
        strcpy(comprador[i].telefone, um_cara.telefone);
    };  // for()

// tem 10 atendentes, usa 9
    for( int i = 0; i<9; i+=1 )
    {
        char* senha = "98xzy765";
        strcpy(atendente[i].func.nome, um_cara.nome);
        atendente[i].func.telefone[0] = 0; // em branco
        strcpy(atendente[i].senha, senha);
    };  // for()

// // mostra o terceiro atendente e o quato comprador
//     printf("[%d] Nome: '%s' Telefone: '%s'\n",
//         2, comprador[2].nome, comprador[2].telefone
//     );

// // mostra o segundo atendente usando uma variavel
//     int n = 1;
//     printf("[%d] Nome: '%s' Senha: '%s'\n",
//         n, atendente[n].func.nome, atendente[n].senha
//     );
    
    Produto prod = { 
        .marca = "Aston Martin",
        .preco = "$315.000",
        .codigo = "DBS"
    };

    // poe no cadastro
    int n = 12; // n caras no teste
    for( int i=0; i<n; i+=1)
        estoque.prod[i] = prod; // copia tudo;
    estoque.total = n;

    lista_cadastro(&estoque);
    return 0;
}
 

 int        lista_cadastro(Cadastro* cad)
 {
     printf("\n\nTotal de %d produtos neste cadastro\n\n",
        cad->total);
    for(int i = 0; i<cad->total; i+=1)
    printf( "%02d  %10s  %30s  %10s\n",
        1+i,
        cad->prod[i].codigo,
        cad->prod[i].marca,
        cad->prod[i].preco
        );
    return cad->total;
 };
/*

Total de 12 produtos neste cadastro

01         DBS                    Aston Martin    $315.000
02         DBS                    Aston Martin    $315.000
03         DBS                    Aston Martin    $315.000
04         DBS                    Aston Martin    $315.000
05         DBS                    Aston Martin    $315.000
06         DBS                    Aston Martin    $315.000
07         DBS                    Aston Martin    $315.000
08         DBS                    Aston Martin    $315.000
09         DBS                    Aston Martin    $315.000
10         DBS                    Aston Martin    $315.000
11         DBS                    Aston Martin    $315.000
12         DBS                    Aston Martin    $315.000

*/

 

 

Só escrevi umas 15 linhas de programa. É só para te mostrar um possível mecanismo. Não vou dizer sequer que é bom. Mas posso dizer que termina esse tipo de programa num instante. E geralmente funciona desde a primeira vez que roda. É o que se busca como "correto por construção".

  • Curtir 2

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!