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

(Resolvido) Problema para fixação universidade


milorde

Pergunta

Ola pessoa to com uma duvida cruel

To resolvendo um exercício porem não consigo completa-lo !

já fiz de tudo mais não me entra uma idéia na cabeça

gostaria que alguém pudesse me ajudar ficaria muito grato !!

/*Exercicio 7 - Uma universidade deseja fazer um levantamento a respeito

do seu concurso vestibular. Para cada curso, e fornecido o seguinte conjunto

de valores:

- O codigo do curso;

- o numero de vagas;

- o numero de candidatos do sexo masculino;

- o numero de candidatas do sexo feminino.

O ultimo curso, para indicar fim de dados, contem o codigo do curso igual

a zero. Fazer um programa em linguagem C que:

- calcule e escreva, para cada curso, o numero de candidatos por vaga e a

porcentagem de candidatos do sexo feminino (escreva tambem o codigo

correspondente do curso);

- determine o maior numero de candidatos por vaga e escreva esse numero

juntamente com o codigo do curso correspondente (supor que não haja

empate);

- calcule e escreva o total de candidatos. */

ai bolei esse codigo mais não consigo fazer a parte...

- determine o maior numero de candidatos por vaga e escreva esse numero

juntamente com o codigo do curso correspondente (supor que não haja

empate);

e laço tmb não funciona !!

#include <stdio.h>
#include <conio.h>

main () {
      int cod,  vagas=0, masc=0, fem=0, codcurso,i;
      int vetorVaga[i]
      float porvaga=0, total=0,cand_fem=0;
      system("color f0");                           
      printf("\n                     Informe o Cogido do Curso desejado ou\n                         digite 0 para finalizar. ");
      printf("\n\n\n");
      //----------------------------------------------------------------------
      
      
      printf("\nQual curso..: ");
      scanf("%d", &cod);
          if(cod != 0) {

          printf("\nQuantidade de vagas para o Curso..:  ");
          scanf("%d", &vagas);

          printf("\nQuantidade de candidatos Homens..:  ");
          scanf("%d", &masc);

          printf("\nQuantidade de candidatas Mulheres..:  ");
          scanf("%d", &fem); }
      //----------------------------------------------------------------------
      //processamento dos dados
      total =  masc +  fem;
      porvaga = total/vagas;
      cand_fem = (((float)fem/(float)vagas)*100);

      printf("O curso %d há %d vagas\n",cod,vagas);  
      printf("A porcentagem de candidatas mulheres = %f\n",cand_fem);                      
                                           
     getch();           
 }

Link para o comentário
Compartilhar em outros sites

7 respostass a esta questão

Posts Recomendados

  • 0

Você terá que percorrer todos os cursos e verificar qual o número de candidados por vagas.

Algo assim:

float curso_maxvagas_qtd=0;
    int curso_maxvagas_cod=0;
    float curso_atual_vagas;
    for(int i=0;i<cursos_qtd;i++){
        curso_atual_vagas=((float)(cursos[i].vagas)) / ((float) (cursos[i].candidatos_feminino+cursos[i].candidatos_masculino));
        if(curso_atual_vagas>curso_maxvagas_qtd){
            curso_maxvagas_qtd=curso_atual_vagas;
            curso_maxvagas_cod=cursos[i].codigo;
        }
    }
    printf("Curso c/ maior quantidade de vagas/aluno");
    printf("\n\tCod. do curso: %d",curso_maxvagas_cod);
    printf("\n\tQtd. de vagas/aluno: %f",curso_maxvagas_qtd);

Link para o comentário
Compartilhar em outros sites

  • 0

amigo, quase compreendi ...

só umas duvidas

porque voce colocouu

cursos[i].vagas
e outra como eu faço pra declarar um vetor com valor indefinido para que seja definido pelo usuário ?? exemplo
cursos[x]


mostrar qual quantidade de cursos ?
escrever (guardar pra definir o vetor)

Editado por milorde
Link para o comentário
Compartilhar em outros sites

  • 0
porque voce colocouu

cursos[i].vagas
É porque fiz um código aqui utilizando struct.
como eu faço pra declarar um vetor com valor indefinido para que seja definido pelo usuário ??
nesse caso você pode declarar o vetor após solicitar os dados do usuário
int quantidade;
printf("Digite a quantidade: ");
scanf("%d",&quantidade);
int valores[quantidade];

Link para o comentário
Compartilhar em outros sites

  • 0

Na verdade ali em cima não foi um vetor indefinido, você declarou um vetor com um tamanho definido e esse tamanho foi a quantidade que o usuário digitou.

Vou postar o código aqui, mas recomendo que com esses conhecimentos tente refazer algo parecido, estudar as funções etc.

#include <stdio.h>

typedef struct Curso{
    int codigo;
    int candidatos_masculino,candidatos_feminino;
    int vagas;
} Curso;

int main(int argc, char *argv[])
{
    //Pega a qtd de cursos
    int cursos_qtd; //Quantidade de cursos
    int i; //Contador
    printf("Quanitdade de cursos: ");
    scanf("%d",&cursos_qtd);
    //percorre os cursos
    Curso cursos[cursos_qtd];
    for(i=0;i<cursos_qtd;i++){
        cursos[i].codigo=i;
        printf("Curso %d\n",i);
        printf("\tVagas: ");
        scanf("%d",&cursos[i].vagas);
        printf("\tCandidadtos\n");
        printf("\t\tMasculino: ");
        scanf("%d",&cursos[i].candidatos_masculino);
        printf("\t\tFeminino: ");
        scanf("%d",&cursos[i].candidatos_feminino);
    }
    //Verifica a qtd máx. de vagas/curso
    float curso_maxvagas_qtd=0;
    int curso_maxvagas_cod=0;
    float curso_atual_vagas;
    for(i=0;i<cursos_qtd;i++){
        curso_atual_vagas=((float)(cursos[i].vagas)) / ((float) (cursos[i].candidatos_feminino+cursos[i].candidatos_masculino));
        if(curso_atual_vagas>curso_maxvagas_qtd){
            curso_maxvagas_qtd=curso_atual_vagas;
            curso_maxvagas_cod=cursos[i].codigo;
        }
    }
    printf("Curso c/ maior quantidade de vagas/aluno");
    printf("\n\tCod. do curso: %d",curso_maxvagas_cod);
    printf("\n\tQtd. de vagas/aluno: %f",curso_maxvagas_qtd);
    //retorna 0
    return 0;
}

Fiz algumas modificações antes de postar aqui, mas nada que influencie muito.

Link para o comentário
Compartilhar em outros sites

  • 0

Olha fiz o meu consegui fazer, antes de tu postar esse dai..

porem no exercício não posso usar função, entre outras coisas

e fiz desse modo !

#include<stdlib.h>
#include <stdio.h>
#include <conio.h>
int main () {
      int cursos,cursos_qtd,vaga_max=0,curso_max=0;
      int vagas, masc, fem,i, total=0;
      float porvaga=0,max_porvaga=0,cand_fem=0;
      system("color f0");                           
      printf("\n                     Informe o Cogido do Curso desejado \n    ");
      printf("\n\n\n");
      //----------------------------------------------------------------------
      printf("\nQuantor curso quer analizar?..: ");
      scanf("%d", &cursos_qtd);
         for(i=0;i<cursos_qtd;i++)
         {
        /* while(cursos > 0)
         {*/ 
        
            printf("Qual o numero do Curso..: ");
            scanf("%d", &cursos);
            printf("Quantidade de vagas para o Curso..:  ");
            scanf("%d", &vagas);
                        porvaga = 0;
                        cand_fem=0;       
            printf("Quantidade de candidatos Homens..:  ");
            scanf("%d",&masc);
            printf("Quantidade de candidatas Mulheres..:  ");
            scanf("%d",&fem);
                    total = total + (masc + fem); //total de candidatos
                    porvaga = ((float)fem+(float)masc)/vagas;
                             if(porvaga>max_porvaga)
                             {
                                   max_porvaga = porvaga;
                                   curso_max = cursos;
                             }                 
            cand_fem = (((float)fem/(float)vagas)*100);
            printf("O curso %d tem a %0.2f candidatos por vagas\n",curso,porvaga);
            printf("A porcentagem de candidatas mulheres = %0.2f\n",cand_fem);
            
            }
    
            printf("O curso %d tem o maior numero de candidatos por vaga com %0.2f",curso_max,max_porvaga);                                                  
            printf("O total de candidatos = %d\n",total);
     
             
                                           
     getch();           
 }

Obrigado pela ajuda, pelo que você disse bolei algumas idéias que me ajudaram bastante !

Link para o comentário
Compartilhar em outros sites

  • 0

Como assim não pode usar funções ?

Seriam structs, certo ?

Não cheguei a analisar o seu código completamente, então não tenho muito de que falar.

Imagino que na linha abaixo o objetivo seria dar um espaçamento:

printf("\n                     Informe o Cogido do Curso desejado \n    ");

É isso ?

Se sim, utilize o \t.

Qualquer coisa posta aí !

Obs.:

O tópico foi marcado como Resolvido.

Link para o comentário
Compartilhar em outros sites

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,4k
×
×
  • Criar Novo...