Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Repetindo a leitura do 1 array

Pessoal,Criei o seguinte código para que o usuário entre com 3 alturas e depois diga se a pessoa pode ou não entrar no brinquedo do parque.

O único problema que estou vendo quando rodo o programa é que lê a entra da pessoa [1] e depois pede para entrar novamente com o dado da pessoa[1], mas quando ele vai mostrar o resultado, ele informa como pessoa [2] o segundo resultado da pessoa [1].

Alguém poderia ajudar para que não seja solicitado a entrada da altura [1] duas vezes? E se o tipo float é ou não indicado para esses casos. Segue abaixo como apareceu no cmder


Entre com a alutra da pessoa [1]: 1.98
1.90
Entre com a alutra da pessoa [2]: 1.82
Entre com a alutra da pessoa [3]: 1.98

E aqui o resultado:

Estaremos analisando se pode ou não entrar no brinquedo


A pessoa [1] com altura [1.98] pode entrar
A pessoa [2] com altura [1.90] pode entrar
A pessoa [3] com altura [1.82] pode entrar
#include <stdio.h>
#include <stdlib.h>

int main(){

    float pessoa[3] = {};

    for (int i=0; i < 3; i++){
        printf("Entre com a alutra da pessoa [%d]: ", i+1);
        scanf("%f ", &pessoa[i]);
    }

    printf("\n\nEstaremos analisando se pode ou não entrar no brinquedo\n\n");

    for(int i=0; i < 3; i++){
        if(pessoa[i] >= 1.80 ){
            printf("\nA pessoa [%d] com altura [%.2f] pode entrar", i+1, pessoa[i]);
        } else{
            printf("\nA pessoa [%d] com altura [%.2f] não pode entrar", i+1, pessoa[i]);
        }
    }

}
2 respostas
solução!

Oi Miguel, tudo bem?

O problema é aquele espaço ali depois do %f no seu scanf.

Troca scanf("%f ", &pessoa[i]);

por

scanf("%f", &pessoa[i]);

Olá Miguel, como resolveu seu problema, estou fechando o tópico ok?

Qualquer coisa não hesite em abrir outro tópico :)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software