quinta-feira, 14 de dezembro de 2017

Exercícios MIMOSAS - linguagem C


Elaborar um programa que contenha a seguin MIMOSAS ter: 
    • código: código da cabeça de gado, código
    • leite: número de litros de leite produzido por sema leite na, 
    • alim: quantidade de alimento ingerida por semana - alim em quilos,
    • nasc: data de nascimento - mês e ano, nasc 
    • abate: ‘N" (não) ou ‘S’ (sim). abate o O campo nasc. é do tipo struct data que por sua vez, possui dois campos: mês ano Elaborar funções para: 
    a) Ler a base de dados (código, leite, alim, nasc.mês e nasc.ano), armazenado em um vetor de estruturas. 
      b) Preencher o campo abate, considerando que a cabeça de gado irá para o abate caso:
                • Tenha mais de 5 anos, ou; 
                • Produza menos de 40 litros de leite por semana, ou;
                • Produza entre 50 e 70 litros de leite por semana e ingira mais de 50 quilos de alimento por dia.
       c) Função para Mostrar a quantidade total de leite produzida por semana na fazenda.
       d) Função para Mostrar a quantidade total de alimento consumido por semana na fazenda. 
       e) Função para Mostrar número de cabeças de gado que iram para o abate. 






#include <stdio.h>
#include <stdlib.h>
#include <locale.h>
#include <string.h>
#define T 50
#define ANO 24216


struct data
{
    int mes;
    int ano;
};

struct cadastro
{
    int codigo;
    int leite;
    int alimento;
    struct data m;
    struct data a;

};

    struct cadastro gado[T];
    int i=0, op=0, abate=0;
    int qtalimento, qtleite, mes_total=0;

cadastrar ()
{
            system("cls");
            printf("\n=======================================");
            printf("\n\n\tCADASTRO DA MIMOSA\n");
            printf("\n=======================================\n");
            printf("\nDigite o código: ");
            scanf("%d", &gado[i].codigo);
            printf("\nLitros de leite produzido na semana: ");
            scanf("%d",&gado[i].leite);
            qtleite += gado[i].leite;
            printf("\nKg de alimento ingerido na semana: ");
            scanf("%d",&gado[i].alimento);
            qtalimento += gado[i].alimento;
            printf("\nDATA DE NASCIMENTO ");
            do
            {
                printf("\nMês: ");
                scanf("%d", &gado[i].m.mes);
                if ((gado[i].m.mes) > 12)
                {
                    printf("Insira um mês válido de 1 a 12\n");
                }
            }
            while ((gado[i].m.mes) > 12);
            do
            {
                printf("Ano: ");
                scanf("%d", &gado[i].a.ano);
                if (((gado[i].a.ano) * 12) > ANO)
                {
                    printf("Insira um ano de nascimento válido!\n");
                }
            }
            while ((gado[i].a.ano * 12) > ANO);

            mes_total += gado[i].m.mes;
            mes_total += gado[i].a.ano * 12;

            float alimentodia = gado[i].alimento / 7;

            printf("\nAbate: ");
            if (mes_total - ANO > 60 )

            {
                abate++;
                printf("S");
            }

            else if (((( 50 < gado[i].leite) && ( gado[i].leite < 70)) && (alimentodia > 50.00)) || (gado[i].leite < 40))
            {
                abate++;
                printf("S");
            }

            else
            {
                printf("N");
            }

            printf("\n\n");
            system("pause");
            i++;
            return 0;
}

leit ()

{
    printf("\n\tA quantidade total de leite produzido na semana foi: %d\n\n\n", qtleite);
    system("pause");
    return 0;
}

alim ()
{
    printf("\n\tA quantidade total de alimento consumido na semana foi: %d\n\n\n", qtalimento);
    system ("pause");
    return 0;
}

abat()
{
    printf("\n\tA quantidade de animais que irão para o abate será: %d\n\n\n", abate);
    system ("pause");
    return 0;
}



sair()

{
        system("cls");
        printf("Saindo...\n");
        exit(EXIT_SUCCESS);
        return 0;
}

main()
{
    system("color 1F");
    setlocale(LC_ALL, "Portuguese");
    while (op != 5){
    system("cls");
    printf("\n\t\tMENU DE OPÇÕES\n\n");
    printf("\n1 - Cadastrar");
    printf("\n2 - Exibir qtd. total de leite prod. por semana");
    printf("\n3 - Exibir qtd. total de alimento consumido na semana");
    printf("\n4 - Exibir qtd. de cabeça de gado que irão para o abate");
    printf("\n5 - Sair");
    printf("\n\nEscolha uma opção: ");
    scanf("%d", &op);
    switch (op)
    {
        case 1 :
            cadastrar ();
        break;

        case 2 :
            leit();
        break;

        case 3:
            alim ();
        break;

        case 4:
            abat ();
        break;

        case 5:
            sair ();
        break;

        default:
            printf("Opção inválida, escolha uma opção válida!\n\n\n");
            system("pause");


    }
    }
}

0 comentários:

Postar um comentário