Ir para conteúdo
Fórum Script Brasil
  • 0

Trabalho de Algoritmos em c


brenda_petryca

Pergunta

 

Boa noite sou iniciante nos estudos de programação, se alguém puder me ajudar ou me dar alguma dica de como eu poderia melhorar meu código, está faltando algumas partes se alguém tiver alguma dica para me dar de como eu posso fazer eu agradeceria..

#include <stdio.h>
#include <string.h>
#include <locale.h>
#include <stdlib.h>
#include<conio.h>
 

/*
Trabalho G2 Algoritmos II
Autor: Brenda Petry Ramos
Cadastro de livros-Título, Autor, Páginas, Preço, 
Menu de venda- Quantidade de itens(livros), Desconto, Valor total da venda, Valor que o cliente pagou, Troco (se tiver)

*/

/*
Tem que ter:
-Estruturas de decisão.
-Duas estruturas de repetição de tipos diferentes.
-Utilização de vetor(es) e/ou matriz(es).
- Pelo menos duas funções e/ou procedimentos.
*/

//OBS: FALTA O(S) LAÇO(S) DE REPETIÇÃO, A FUNÇÃO DA VENDA E O VETOR

//FUNÇÕES DOS CALCULOS 

//float calc_venda(float vitem,vlvenda){
    
  //    return vlvenda;
//}

float calc_desc_cinco(float valortotal, float vlvenda,float vldesconto){//Função 5% desconto
       
       vldesconto=vlvenda*0.05;
       valortotal=valortotal-vldesconto;
       return valortotal;
}
float calc_desc_dez(float valortotal,float vlvenda, float vldesconto){//Função 10% desconto
       
       vldesconto=vlvenda*0.1;
       valortotal=valortotal-vldesconto;
       return valortotal;
}

struct livro{
        char nome[30];
        char editora[30];
        char autor[30];
        int codlivro;
        int paginas;
        float preço;       
    }livro1; //Declarando a variável do tipo struct conforme a estrutura acima
    
    //struct livro livro1; //Referenciando a estrutura para criar a variável Livro1 (Outra forma de declarar a variável do tipo struct)..

//PRINCIPAL
int main(){
     int op,i,qtditem,opc;
     float vlpago,valorvenda,valortot,valordesc,troco,total,sumvendas;
     int codliv=0;
     
         setlocale(LC_ALL,"portuguese");
      do{
         
          printf("\n========Escolha uma opção========\n");
        printf("1 – Cadastro de livro\n");
        printf("2 – Venda de livro\n");
        printf("3 – Total de vendas-Relatório\n");
        printf("0 – ============SAIR=============\n");
        printf("\n=================================\n");
        
        scanf("%i", &op);
  
        switch(op){
        case 1:
            printf("\n=======Cadastrando Livro=========\n");
               printf("\nDigite o nome do Livro:\n");
               gets(livro1.nome); 
              printf("\nDigite o nome do Autor:\n");
               gets(livro1.autor);
               printf("\nDigite o código do livro (diferente de 0):\n");
               scanf("%d", &livro1.codlivro);
               printf("\nDigite o número de paginas:\n");
               scanf("%d", &livro1.paginas);
               printf("\nDigite o Preço do livro:\n");
               scanf("%f", &livro1.preço);
               
           
             //printf("\n O livro \"%s\" possui %d paginas e custa R$ %4.2f\n",livro1.nome,livro1.paginas,livro1.preço);             
                break;
         case 2: 
            printf("\n============Venda================\n");
            printf("Digite o código do livro:\n");
            scanf("%d", &livro1.codlivro);
            printf("Digite a quantidade:\n");
            scanf("%d", &qtditem);
            //chamar função da venda com somatório dos valores dos livros escolhidos
            printf("\nDeseja dar desconto nesta venda?\n  1-sim 2-Não \n");
            printf("=======================================\n");
            scanf("%d",&opc);
                if(opc=1){
                    opc=0;
                    printf("\nDesconto de 5 digite 1 Ou 2 para 10  \n");
                    scanf("%d",&opc);
                    if(opc=1){
                    total=calc_desc_cinco(valortot,valorvenda,valordesc);//Chamando a função de 5% de desconto
                    printf("O total com 5 por cento de desconto é: %f \n", &total);
                    valortot=valorvenda;
                    }else
                    total=calc_desc_dez(valortot,valorvenda,valordesc);//Chamando a função de 10% de desconto
                    printf("O total com 10 por cento de desconto é: %f \n", &total);
                    valortot=valorvenda;
                }else
                printf("\n===========Valor Total Venda===========\n");
                
                printf("\nDigite o valor pago: \n");
                scanf("%f",&vlpago);
                troco=0;
                if((vlpago-valorvenda)!=0){
                    troco=valorvenda-vlpago;
                }
                printf("Troco: \n");
                printf("\n===========Venda Finalizada===========\n");
                printf("\nTotal Vendido:\n");
            break;
        case 3: 
            printf("\n====Total de vendas-Relatório====\n");
            
            FILE *pont_arq; // cria variável ponteiro para o arquivo
            
            char relatorio[50]; // variável do tipo string
            
              //abrindo o arquivo com tipo de abertura w
              pont_arq = fopen("arquivo_relatorio.txt", "w");
              //testando se o arquivo foi realmente criado

              if(pont_arq == NULL){

                 printf("Erro na abertura do arquivo!");

                 return 1;

              }

            printf("Total de vendas: ");
            gets(relatorio);

             //usando fprintf para armazenar a string no arquivo

              fprintf(pont_arq, "%s", relatorio);
              //usando fclose para fechar o arquivo
            fclose(pont_arq);
            printf("Vendas registradas com sucesso!");

              system("PAUSE");
            break;
       
         }
      }while(op!=0);
                  
}//fim principal

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...