Ir ao conteúdo
  • Cadastre-se

fiaraujo

Membro Júnior
  • Posts

    5
  • Cadastrado em

  • Última visita

Reputação

1
  1. Olá boa noite Alguém consegue me ajudar? José, professor universitário de Arquitetura e Urbanismo, possui em seu escritório caixas e mais caixas de livros e revistas, que aos poucos estão sendo catalogados por sua secretária Vanessa. Vanessa está catalogando em uma planilha eletrônica os principais dados de Livros e Revistas, tais como (título da obra, edição, nome do autor, editora, isbn, quantidade de exemplares, caixa onde a obra está armazenada e ano). A proposta da atividade mapa, é o desenvolvimento de um sistema de pequeno porte para o controlar onde estão armazenadas as obras do arquiteto. Para a construção deste sistema, você deverá utilizar a linguagem C, armazenando os dados em arquivo texto. O sistema a ser construído necessitará atender aos requisitos funcionais abaixo: 1 - Possuir a sua identificação (RA-Nome-Curso) 2 - Possuir um menu de opção. 2.1 - Incluir o registro das obras. 2.2 - Listar todos os livros. 2.3 - Listar todas as revistas. 2.4- Listar as obras por caixa. O sistema deverá ser entregue da seguinte forma: Sistema_<SEU_RA>.c arquivo.txt Algo assim: #include <stdio.h> #include <stdlib.h> void menu(){ printf ("\n\n1 - Cadastrar\n"); printf ("2 - Listar todos os livros.\n"); printf ("3 - Listar todas as revistas.\n"); printf ("4 - Listar as obras por caixa.\n"); printf ("0 - Sair\n\n"); } FILE* AbreArquivo(char modo, char caminho[100]){ FILE *arquivo; switch(modo){ case 'g': arquivo = fopen(caminho,"wt"); break; case 'l': arquivo = fopen(caminho,"rt"); break; case 'a': arquivo = fopen(caminho,"a"); break; } if(arquivo==NULL){ printf("Nao foi possivel abrir o arquivo"); exit(0); } return arquivo; } void FecharArquivo(FILE *arquivo){ fclose(arquivo); } void Cadastra(char titulo[70],char editora[70], char autor[70], int caixa, int ano, int ISBN){ FILE *arquivo; arquivo = AbreArquivo('a', "mapa.txt"); fprintf(arquivo, "%[^\n]s %[^\n]s %[^\n]s %d %d %d\n", titulo, autor, editora, caixa, ano, ISBN); FecharArquivo(arquivo); } void CadastraRevista(char titulo[70],char editora[70], char autor[70], int caixa, int ano, int ISBN){ FILE *arquivo; arquivo = AbreArquivo('a', "mapa.txt"); fprintf(arquivo, "%[^\n]s %[^\n]s %[^\n]s %d %d %d\n", titulo, autor, editora, caixa, ano, ISBN); FecharArquivo(arquivo); } void Listar(){ FILE *arquivo; char titulo[70]; char autor[70]; char editora[70]; int caixa; int ano; int ISBN; arquivo = AbreArquivo('l',"mapa.txt"); while(!feof(arquivo)){ fscanf(arquivo,"%s %s %s %d %d %d ", &titulo, &autor, &editora, &caixa, &ano, &ISBN); setbuf(stdin,NULL); for(int i=0; i<70; i++)printf ("*"); printf("\nTitulo: %s - Autor: %s - Editora: %s - Caixa: %d - Ano: %d - ISBN: %d\n\n", titulo,editora ,autor , caixa, ano, ISBN); } FecharArquivo(arquivo); } int main(){ char titulo[70]; char autor[70]; char editora[70]; int caixa; int ano; int ISBN; int opcao; menu(); do{ printf("\nDigite uma opcao: "); scanf("%d", &opcao); system("cls"); switch(opcao){ case 1: printf("\nDigite o titulo: "); setbuf(stdin,NULL); fgets(titulo, 70, stdin); printf("\nDigite o autor: "); setbuf(stdin,NULL); fgets(autor,70, stdin); printf("\nDigite o editora: "); setbuf(stdin,NULL); fgets(editora, 70,stdin ); printf("\nDigite a caixa: "); scanf("%d", &caixa); printf("\nDigite o ano: "); scanf("%d", &ano); printf("\nDigite o ISBN: "); scanf("%d", &ISBN); Cadastra(titulo, autor, editora, caixa, ano, ISBN); system("pause"); break; case 2: Listar(); system("pause"); break; case 3: printf("\n\nFinalizando...\n\n"); system("pause"); exit(0); break; default: printf("\n\nOpcao invalida! Tente Novamente!\n\n"); system("pause"); } }while(opcao!=3); return 0; }
  2. Eu acho que seria algo assim , mas estou com dúvidas #include <stdio.h> #include <stdlib.h> #define MAX 100 #include <locale.h> // declaração da struct pessoa typedef struct cadastro { char descricao[50]; int quantidadeEstoque; int categoria; int lote; } Cadastroproduto; //prototipação das funções void identificacao(); void cadastrarProduto(Cadastroproduto produto[MAX]); void ListarTodosProdutos(Cadastroproduto produto[MAX]); void ListarProdutosCategoria(int buscaCategoria, Cadastroproduto produto[MAX]); void ListarProdutosLote(int buscaLote, Cadastroproduto produto[MAX]); int contarRegistro(Cadastroproduto produto[MAX]); int main() { //declaração do vetor de registro do tipo produto Cadastroproduto produto[MAX]; setlocale(LC_ALL, "Portuguese"); int op, buscaLote, buscaCategoria; do{ identificacao(); printf("\n1 - Cadastrar produto"); printf("\n2 - Listar todos os produtos"); printf("\n3 - Listar produto por categoria"); printf("\n4 - Listar produto por lote"); printf("\n0 - Sair"); printf("\nEscolha Opção: "); scanf("%d", &op); switch(op){ case 1: cadastrarProduto(produto); break; case 2: ListarTodosProdutos(produto); printf("\n"); system("pause"); break; case 3: printf("Informe a categoria do produto");; fflush(stdin); scanf("%d", &buscaCategoria); ListarProdutosCategoria(buscaCategoria, produto); printf("\n"); system("pause"); break; case 4: printf("Informe o Lote do produto");; fflush(stdin); scanf("%d", &buscaLote); ListarProdutosLote(buscaLote, produto); printf("\n"); system("pause"); break; case 0: printf("\nSaindo do sistema!!!"); break; default: printf("Valor indefinido"); system("pause"); break; } }while(op!=0); return 0; } void identificacao(){ system("cls"); int t; for(t=0; t<80; t++) printf("-"); printf("\n >>>> NOME <<<<"); printf("\n >>>> RA: 00000000-7 <<<< "); printf("\n >>>> Engenharia de Software <<<< \n"); for(t=0; t<80; t++) printf("-"); } void cadastrarProduto(Cadastroproduto produto[MAX]) { identificacao(); int i; FILE * arq; arq = fopen("dadosProdutos.txt", "a+"); if(arq != NULL) { for(i = 0; i < 2; i++){ printf("\nInforme os dados do Produto: "); printf("\nDescricação............: "); fflush(stdin); gets(produto.descricao); printf("\nQuantidade em estoque..: "); fflush(stdin); scanf("%d", &produto.quantidadeEstoque); printf("\nLote...................: "); scanf("%d", &produto.lote); printf("\nCategorias: \n[1] Alimentos | [2] Bebidas | [3] Limpeza"); fflush(stdin); scanf("%d", &produto.categoria); fwrite(&produto, sizeof(Cadastroproduto), 1, arq); } fclose(arq); // aborta o programa } else { printf("\nErro ao abrir o arquivo para leitura!\n"); exit(1); // aborta o programa } } int contarRegistro(Cadastroproduto produto[MAX]) { FILE * arq = fopen("dadosProdutos.txt", "r"); if(arq != NULL) { int contador = 0; while(1)//irá percorrer todo o arquivo e quando não encontrar mais registros, o laço termina { Cadastroproduto p;//criando um registro temporário //leitura de registro por registro, ou seja, pega um registro int registro = fread(&p, sizeof(Cadastroproduto), 1, arq); //se a leitura do registro retornar 0, siginifica que a próxima posição do arquivo é zero ai saimos do laço if(registro < 1) break; else produto[contador] = p;//pega registro lido e colocar vetor de registro contador++; } fclose(arq); // fecha o arquivo return contador;//retorna a quantidade de registros que há no arquivo } else { printf("\nErro ao abrir o arquivo para leitura!\n"); exit(1); // aborta o programa } } void ListarTodosProdutos(Cadastroproduto produto[MAX]){ identificacao(); int quantidadeproduto = contarRegistro(produto); int i; printf("\n>>>> Lista de produtos <<<< %d\n", quantidadeproduto); printf("ITEM \t| DESCRIÇÃO \t\t| QUANTIDADE \t| CATEGORIA \t | LOTE"); for(i = 0; i < quantidadeproduto; i++) { printf("\n%d \t| %s \t \t| %d \t\t | %d \t\t | %d", i+1, produto.descricao, produto.quantidadeEstoque, produto.categoria, produto.lote); } } void ListarProdutosCategoria(int buscaCategoria, Cadastroproduto produto[MAX]){ identificacao(); int quantidadeproduto = contarRegistro(produto); int i; printf("\n>>>> Lista de Produtos por categoria <<<< \n"); if (buscaCategoria == 1) { printf("Categoria pesquisada: Alimentos \n"); }else if (buscaCategoria == 2) { printf("Categoria pesquisada: Bebidas \n"); }else if (buscaCategoria == 3) { printf("Categoria pesquisada: Limpeza \n"); } printf("ITEM \t| DESCRIÇÃO \t\t| QUANTIDADE \t| CATEGORIA \t | LOTE"); for(i = 0; i < quantidadeproduto; i++) { if(produto.lote == buscaCategoria){ printf("\n%d \t| %s \t \t| %d \t\t | %d \t\t | %d", i+1, produto.descricao, produto.quantidadeEstoque, produto.categoria, produto.lote); } } } void ListarProdutosLote(int buscarLote, Cadastroproduto produto[MAX]){ identificacao(); int quantidadeproduto = contarRegistro(produto); int i; printf("\n>>>> Lista de Produtos por lote <<<< \n"); printf("Lote pesquisado: %d \n", buscarLote); printf("CODIGO \t| DESCRIÇÃO \t\t| QUANTIDADE \t| CATEGORIA \t | LOTE"); for(i = 0; i < quantidadeproduto; i++) { if(produto.lote == buscarLote){ printf("\n%d \t| %s \t \t| %d \t\t | %d \t\t | %d", i+1, produto.descricao, produto.quantidadeEstoque, produto.categoria, produto.lote); } } }
  3. Olá boa noite Alguém consegue me ajudar? José, professor universitário de Arquitetura e Urbanismo, possui em seu escritório caixas e mais caixas de livros e revistas, que aos poucos estão sendo catalogados por sua secretária Vanessa. Vanessa está catalogando em uma planilha eletrônica os principais dados de Livros e Revistas, tais como (título da obra, edição, nome do autor, editora, isbn, quantidade de exemplares, caixa onde a obra está armazenada e ano). A proposta da atividade mapa, é o desenvolvimento de um sistema de pequeno porte para o controlar onde estão armazenadas as obras do arquiteto. Para a construção deste sistema, você deverá utilizar a linguagem C, armazenando os dados em arquivo texto. O sistema a ser construído necessitará atender aos requisitos funcionais abaixo: 1 - Possuir a sua identificação (RA-Nome-Curso) 2 - Possuir um menu de opção. 2.1 - Incluir o registro das obras. 2.2 - Listar todos os livros. 2.3 - Listar todas as revistas. 2.4- Listar as obras por caixa. O sistema deverá ser entregue da seguinte forma: Sistema_<SEU_RA>.c arquivo.txt *O "RA" É UM NUMERO DE IDENTIFICAÇÃO QUALQUER. EX 202020
  4. Olá boa noite Alguém consegue me ajudar neste execício? Atualmente temos diversas formas de vendas, aliadas aos seus respectivos sistemas. Contudo, ainda, existem algumas empresas, geralmente as de pequeno porte que ainda trabalham com vendas “fiado” para alguns clientes. Contudo, este procedimento acaba por criar diversas complicações, que podem levar o empresário a falência. Bom, não iremos analisar estes processos ok. Diante deste fato, imagine a mercearia da família do professor João Messias. Está empresa, ainda não possui sistema de vendas, ou seja, anota todas as vendas no “caderninho”, tanto venda efetuada, quanto venda “fiado”. Este é um problema sério que o João Messias enfrenta toda vez que um cliente deseja pagar, ele deve somar todas as notinhas. João Messias, quer informatizar o sistema da mercearia, e nesta versão, não terá mais as vendas “fiado”. Contudo, necessita realizar um levantamento de vendas que foram efetuadas “fiado” para que possa ser lançado no sistema quando receber as notinhas de seus clientes. O módulo a ser implementado consiste em: 1 - Uma rotina de cadastro do valor de cada notinha de cada cliente, e neste cadastro deve conter além do valor de cada nota, o nome do cliente. Assuma que existe atualmente 20 clientes no caderninho. Assuma também que, cada cliente tem 10 notinhas. 2 - Uma rotina de impressão de todos os clientes com o seu valor total a pagar. E ao final mostrar um somatório total. 3 - Uma rotina que imprima na tela os valores e o somatório de um cliente em específico. 4 - Criar um menu simples com as 3 opções e uma opção para sair.

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...