Trabalho AV2 -2
Trabalho AV2 -2

2)- A Transpetro de transporte de Petróleo e derivados apresentou a proposta a Petrobras para fazer o transporte de Petróleos e derivados da Plataforma P44 até a refinaria de Duque de Caxias a Reduque, baseado no tipo de derivado ela apresentou 2 tipos de soluções. O usuário deverá fornecer:

a) - Entrar com o tipo de Derivado (óleo, gás, Querosene) 

- Entrar com a quantidade (m³/h) de cada produto

-Preço do metro cúbico por tipo de transporte escolhido (oleoduto ou gasoduto ou ainda através de navios)

 

b)  O programa deverá calcular  e mostrar 
- A quantidade total de cada produto, o valor do frete e o nome do produto.

- O quantidade total em m³  de todos os derivados e o custo total do frete.

- Informar ainda se a Transpetro qual a solução mais adequadra (oleoduto ou Navio)
essa informação vai basear na quantidade de gás  e outros derivados a ser transportado

Caso quantidade total de gás > quantidade total de ( óleo + Nafta) escolher Navio
caso quantidade de gás = quantidade total de ( óleo + Nafta) escolher indiferente

caso quantidade de gás < quantidade total de ( óleo + Nafta) escolher oleoduto. 

 #include

#define TAM 3

main()

{

      char nome[TAM][20];

      int x,opcao,f1=0,f5=0;

      float quantidadeoil[TAM],quantidadegas[TAM],precogas,preconavio,qqtoil,qqtgas,fnav,fgas;

      FILE*arq;

      do

      {

               system("cls");

               printf(" Menu Transpetro: ");

               printf(" 1- Entrada de Dados: ");

               printf(" 2- Le do arquivo: ");

               printf(" 3- Exibe na Tela: ");

               printf(" 4- Grava no Arquivo: ");

               printf(" 5- Calculo das quantidades: ");

               printf(" 6- calculo do frete: ");

               printf(" 7- Exibe melhor solucao de transporte: ");

               printf(" 8- sair ");

               printf("Entre com a opcao: ");

               scanf("%d",&opcao);

               switch(opcao)

               {

                            case 1 : 

                                 printf(" Entre com o preco do transporte em gasooduto: ");

                                 scanf("%f",&precogas);

                                 printf(" Entre com o preco do tranporte em navio: ");

                                 scanf("%f",&preconavio);

                                 for(x=0;x

                            {

                                   fgetc(stdin);

                                   printf(" Entrar com o tipo de derivado: ");

                                   fgets(nome[x],20,stdin);

                                   printf(" Quantidade total de oil: ");

                                   scanf("%f",&quantidadeoil[x]);

                                   printf(" Quantidade total  de gas: ");

                                   scanf("%f",&quantidadegas[x]);

                                   system("cls");                                   

                                   f1=1;}

                                   break;

          case 2 :

          arq=fopen("jhuan", "rb");

          if(arq==NULL)

          printf(" ARQUIVO NAO ENCONTRADO ");

          else

         {

             fread(quantidadeoil,sizeof(quantidadeoil),1,arq);

             fread(quantidadegas,sizeof(quantidadegas),1,arq);

             fread(&precogas,sizeof(precogas),1,arq);

             fread(&preconavio,sizeof(preconavio),1,arq);

             system("cls");

            printf(" Quantidade Transporteoil Preconavio Tipo de derivado ");

            for(x=0;x

            {

            printf(" %.2f %.2f %.2f %.2f %s",quantidadeoil[x],quantidadegas[x],precogas,preconavio,nome[x]);

            printf(" ");}

         break;

          } 

         case 3:   system("cls");

            printf(" Quantidade Transporteoil Preconavio Tipo de derivado ");

            for(x=0;x

            {

            printf(" %.2f %.2f %.2f %.2f %s",quantidadeoil[x],quantidadegas[x],precogas,preconavio,nome[x]);

            printf(" ");}

         break;

 

         case 4: arq=fopen("jhuan","wb");

          if(arq==NULL)

          printf(" ARQUIVO NAO ENCONTRADO ");

          else

         {

             fwrite(quantidadeoil,sizeof(quantidadeoil),1,arq);

             fwrite(quantidadegas,sizeof(quantidadegas),1,arq);

             fwrite(&precogas,sizeof(precogas),1,arq);

             fwrite(&preconavio,sizeof(preconavio),1,arq);

              system("cls");

            fclose(arq);

            }

            break;

            case 5:

                 qqtoil=0; qqtgas=0;

                 if(f1==1)

                 {

                 system("cls");

                 for(x=0;x

                 {

                 qqtoil=quantidadeoil[x]+qqtoil;

                 qqtgas=quantidadegas[x]+qqtgas;

                 printf("Quantidade de gas e oil %2.f e de gas %.2f ",qqtoil,qqtgas);

                 printf(" ");

                 f5=1;

                 }}

 

                 break;

 

              case 6:  printf(" calcular o frete: ");

                 fnav=preconavio*qqtoil;

                 fgas=precogas*qqtgas;

                 printf("o valor do frete do navio: %.2f e do gasoduto: %.2f ",fnav,fgas);  

                 break;

 

        case 7 : if (f1==1)

 

         printf(" A melhor solucao eh: ");

                if (qqtgas

                 printf ("A melhor solucao eh navio ");

 

             else if(qqtgas=qqtoil)

 

           printf ("As duas opcoes sao indicadas para este caso ");

         else

 

           printf ("melhor opcao oleoduto ");

 

             break;

 

                      case 8:

                           printf("Fim do programa, a Transpetro agradece ");

                           break;

                           default:(" A Transpreto agradece por usar o programa, Volte Sempre ");}

 

system ("pause");

}

while(opcao!=8);

}