Ir ao conteúdo
  • Cadastre-se

a.melchiors

Membro Júnior
  • Posts

    10
  • Cadastrado em

  • Última visita

posts postados por a.melchiors

  1. Meu compilador não gostou do seu código, mas acredito que se você trocar a linha 97 por 

    		  		  printf("seu assento eh na fileira %d, cadeira %d\n",l, c);

    vai mostrar as informações da cadeira.

     

    Para verificar se tem cadeira vazia, coloca um looping que percorre as cadeiras e só mostra o menu se encontrar um valor diferente de zero. Lembra de por um break para ele não continuar percorrendo as cadeiras após a compra do cliente.

  2. Olá!

    Preciso  como atividade de aula fazer a seguinte função: 

    Crie um programa em C que receba um vetor de números reais com 100 elementos. Escreva uma
    função recursiva que inverta ordem dos elementos presentes no vetor.

    Criei o código:

    #include <stdio.h>
    #include <stdlib.h>
    #include <time.h>
    
    #define tam 100
    
    /*2. Crie um programa em C que receba um vetor de números reais com 100 elementos. Escreva uma
    função recursiva que inverta ordem dos elementos presentes no vetor.*/
    
    float invert(float vetor[], int a, int b){
    	if (vetor != NULL){	
    		if ((b-a)>0) {
    			printf("\n ANTES: vetor [%i] = %.2f e vetor [%i] = %.2f",a, vetor[a], b,vetor[b]); // ==>> para teste
    			float aux = vetor[a];
    			vetor[a] = vetor[b];
    			vetor[b] = aux;
    			printf("\n DEPOIS: vetor [%i] = %.2f e vetor [%i] = %.2f",a, vetor[a], b,vetor[b]); ==>> para teste
    			invert(&vetor[tam], a+1, b-1);
    		} else {
    			return 0;		
    		}	
    	}
    }
    
    int main (){
    	srand(time(NULL));
    	float vetor[tam];
    	for (int i=0; i<tam; i++){
    		vetor[i] = rand () %10;
    	}
    	for (int i=0; i<tam; i++){
    		printf("%.2f ", vetor[i]);
    	}
    	printf("\n");
    	invert(vetor, 0, tam-1);
    	for (int i=0; i<tam; i++){
    		printf("%.2f ", vetor[i]);
    	}
    	return 0;
    }

    Mas ele não conclui a execução.

    Abaixo o resultado, com apenas 10 elementos:

    image.png.b2bb850136a4ff767a68f72236c6ec5b.png

     Talvez recursividade não seja a melhor opção, mas preciso fazer dessa forma porque o exercício pede.

    Dúvidas: 

    1) porque ele aborta? Minha condição base não encerra? (o erro é sempre na última troca, ex posições 49 e 50) Testei valores menores e maiores, pares e impares.

    2) porque ele gera valores grandes se limitei o meu rand a 10?

     

    Grata.

  3. Olá!

    Preciso, para um exercício de aula, escrever uma função com protótipo

    char* separa(int numero)

    e essa função deve retornar um char.

    Porém ela retorna um endereço!

    Imagino que seja por causa do * após char. 

    Não posso mudar o protótipo, ele precisa ficar exatamente assim, e a avaliação é pelo return da função, não posso converter no main.

    Como faço para que o retorno seja um char?

     

    Grata.

    • 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!