Ir ao conteúdo
  • Cadastre-se

Vieira L.

Membro Júnior
  • Posts

    7
  • Cadastrado em

  • Última visita

posts postados por Vieira L.

  1. cara funcionou!

    adicionado 1 minuto depois

    parabéns!

    adicionado 5 minutos depois

    porém gostaria que funcionasse este ultimo tópico!

     

    void Maior_Menor_Renda(TipoCliente cliente[NCLI], int num, int pos_maior, int pos_menor)
    {
        int i;
        int j;
    
        int maior = 0;
        int menor = 0;
    
        maior = cliente[0].renda;
        menor = cliente[0].renda;
    
    
        for(i=0; i<num; i++) {
            if (cliente[i].renda > maior) {
                maior = cliente[i].renda;
                pos_maior = i;
            }
        }
        for(j=0; j<num; j++) {
            if (cliente[j].renda < menor) {
                maior = cliente[j].renda;
                pos_maior = j;
            }
        }
    }
    
    
    int main() { 
    
    
     printf("\n\nO posicao do maior salario e: [ %d ]  e a posicao do menor salario e: [ %d ]", pos_maior, pos_menor);
    }

     

    adicionado 6 minutos depois

    não está exibindo a posição do vetor com a maior renda / menor renda

     

     

    • Curtir 1
  2. Ocorreu esta mensagem, baseada na minha função main

    	#include <stdio.h>
    	#include <string.h>
    	
    	#define NCLI 3
    	
    	struct cadastro{
    		char nomes[30], escolaridade[30]; 
    		float renda[10];
    		
    	}; 
    	
    	typedef struct cadastro TipoCliente;
    	
    	int Le_Vetores(TipoCliente cliente[NCLI])
    	{
    		int num=0;
    		
    		int i;
    		
    		for(i=0; i<NCLI; i++){
    	
    		printf("\nDigite o nome: ");
    		fflush(stdin);
    		scanf(" %s", cliente[i].nomes);
    		
    		printf("\nDigite o nivel de escolaridade > 'fundamental', 'media' ou 'superior': ");
    		fflush(stdin);
    		scanf(" %s", cliente[i].escolaridade);
    		
    		printf("\nDigite a renda mensal: ");
    		scanf("%.2f", &cliente[i].renda);
    		
    		num++;
    	}
    	
    		return (num);
    	
    	}
    	
    		int Renda_Superior_5000(TipoCliente cliente[NCLI], int num, char nomes_5mil[NCLI][30])
    		{
    		
    		int cont=0;
    		int i;
    		
    			
    		for(i=0;i<num;i++){
    		
    		if (((cliente[i].renda > 5000) && strcmp(cliente[i].escolaridade,"media")==0)){
    		strcpy(nomes_5mil[cont],cliente[i].nomes);
    		cont++;
    		}
    	}
    		return (cont);
    	
    	}
    	void Exibe_Nomes(char nomes_5mil[NCLI][30], int cont){
    		
    		int j;		
    			for(j=0;j<cont;j++){
    				printf("\nO nome do cliente acima de 5mil e escolaridade media: %s", nomes_5mil[j]);
    			}
    	}
    	
    	void Maior_Menor_Renda(TipoCliente cliente[NCLI], int num, int pos_maior, int pos_menor)
    			{
    				int i;
    
    				int maior = 0; 
    				int menor = 0;
    				
    				int maior = cliente[0].renda;
    				int menor = cliente[0].renda;
    
    				
    				for(i=0; i<num; i++){
    				if (cliente[i].renda > maior){
    					maior = cliente[i].renda;
    						pos_maior = i;
    				}
    		}
    				for(i=0; i<num; i++){
    				if (cliente[i].renda < menor){
    						maior = cliente[i].renda;
    							pos_maior = i;
    			}
    		}
    	}
    	
    		int main(){
    			
    			TipoCliente cliente[NCLI];
    			
    			int numcli;
    			int pos_maior, pos_menor;
    			char nomes_5mil[NCLI][30];
    			int cont;
    			
    			numcli = Le_Vetores(cliente);
    			cont = Renda_Superior_5000(cliente, numcli, nomes_5mil);
    			Exibe_Nomes(nomes_5mil, cont);
    			Maior_Menor_Renda(cliente,numcli, pos_maior, pos_menor);
    			
    			printf("\nO numero de clientes cadastrados foram: %d", numcli);	
    			printf("\nO numero de clientes com RENDA MAIOR que 5 MIL -- E ESCOLARIDADE MEDIA -- : %d",cont);
    			printf("\n\nO maior salario e: [ %d ]  e o menor salario e: [ %d ]", pos_maior, pos_menor);			
    }

     

    erro.JPG

    main.JPG

    adicionado 1 minuto depois

    Se voce me ajudar nesta, vou te agradecer pessoalmente cara kkkkkkkkkkk (:

  3.  

     

     

    Boa tarde!


    Estou quebrando a cabeça para finalizar o projeto.
    1- Preciso que no final do programa mostre a posição do VETOR cadastrada com o maior e menor RENDA.


    2- Este comando >    if (((cliente.renda > 5000) && strcmp(cliente.escolaridade,"media")==0)){
    Está apenas armazenando a escolaridade média, e não a renda acima de 5000 mil reais.

     

    	#include <stdio.h>
    	#include <stdlib.h>
    	#include <string.h>
    	
    	#define NCLI 3
    	
    	struct cadastro{
    		char nomes[30], escolaridade[30]; 
    		float renda[10];
    		
    	}; 
    	
    	typedef struct cadastro TipoCliente;
    	
    	int Le_Vetores(TipoCliente cliente[NCLI])
    	{
    		int num=0;
    		
    		int i;
    		
    		for(i=0; i<NCLI; i++){
    	
    		printf("\nDigite o nome: ");
    		fflush(stdin);
    		gets(cliente[i].nomes);
    		
    		printf("\nDigite o nivel de escolaridade > 'fundamental', 'media' ou 'superior': ");
    		fflush(stdin);
    		gets(cliente[i].escolaridade);
    		
    		printf("\nDigite a renda mensal: ");
    		scanf("%.2f", &cliente[i].renda);
    		
    		num++;
    	}
    	
    		return (num);
    	
    	}
    	
    		int Renda_Superior_5000(TipoCliente cliente[NCLI], int num, char nomes_5mil[NCLI][30])
    		{
    		
    		int cont=0;
    		int i;
    		
    			
    		for(i=0;i<num;i++){
    		
    		if (((cliente[i].renda > 5000) && strcmp(cliente[i].escolaridade,"media")==0)){
    		strcpy(nomes_5mil[cont],cliente[i].nomes);
    		cont++;
    		}
    	}
    		return (cont);
    	
    	}
    	void Exibe_Nomes(char nomes_5mil[NCLI][30], int cont){
    		
    		int j;		
    			for(j=0;j<cont;j++){
    				printf("\nO nome do cliente acima de 5mil e escolaridade media: %s", nomes_5mil[j]);
    			}
    	}
    	
    	void Maior_Menor_Renda(TipoCliente cliente[NCLI], int num, int *pos_maior, int *pos_menor)
    			{
    				int i;
    				int maior = 0;
    				int menor = 0;
    				
    				for(i=0; i<num; i++){
    				if (cliente[i].renda > maior){
    					maior = cliente[i].renda;
    						*pos_maior = i;
    				}
    		}
    				for(i=0; i<num; i++){
    				if (cliente[i].renda < menor){
    						maior = cliente[i].renda;
    							*pos_maior = i;
    			}
    		}
    		return 0;
    	}
    	
    		int main(){
    			
    			TipoCliente cliente[NCLI];
    			
    			int numcli;
    			int pos_maior, pos_menor;
    			char nomes_5mil[NCLI][30];
    			int cont;
    			
    			numcli = Le_Vetores(cliente);
    			cont = Renda_Superior_5000(cliente, numcli, nomes_5mil);
    			Exibe_Nomes(nomes_5mil, cont);
    			Maior_Menor_Renda(cliente,numcli, &pos_maior, &pos_menor);
    			
    			printf("\nO numero de clientes cadastrados foram: %d", numcli);	
    			printf("\nO numero de clientes com RENDA MAIOR que 5 MIL -- E ESCOLARIDADE MEDIA -- : %d",cont);
    			printf("\n\nO maior salario e: [ %d ]  e o menor salario e: [ %d ]", pos_maior, pos_menor);			
    }

         

     

    • Curtir 1

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

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!