GUJ Discussões   :   últimos tópicos   |   categorias   |   GUJ Respostas

Estou desenvolvendo um algoritmo em C que receba 10 números e armazene em um vetor. Este algoritmo deve informar no final o maior número armazenado. Só que ele está apresentando um erro que não consigo identificar


#1

#include <stdio.h>
#include <locale.h>
#include <stdlib.h>
int main()
{
setlocale(LC_ALL,“Portuguese”); // pros acentos
//Inicialização de variaveis
float numeros[10];
float maior = 0;

for(int i = 0; i < 10; i++){ // loop

    printf("Favor inserir o número na posição: %d \n", i+1);
    float numero = 0;
    scanf("%f", &numero);
    numeros[i] = numero;

    //verifica a posição na varredura do vetor
    if(i!=0){
            //se o número for da posição 0 pra cima, ele verifica se é maior que o número anterior e
            //se é o maior número
        if(numeros[i] > numeros[i-1] && numeros[i] > maior){
            maior = numeros[i];
        }
    }else{
        //Se a posição for = 0, ele atribui o primeiro valor como maior
        maior = numeros[0];
    }
    system("pause"); // pausa pro usuário perceber que vai entrar outro scan
}
printf("\n O Maior número é: %.2f", maior); // retorna o valor
return 0;

}


#2

Olá tudo certo!?
Então … Tentei preservando o máximo de sua lógica.

/**> Incluir funções padrões */
#include <stdio.h>

/**> função main: principal função é a primeira no arranque do sistema */
int main( void )
{    float numeros_floats[ 10 ],
           numero_float,
           nmaior_foat;
           
     /* Entrada de dados */
     for( int index= 0; index < 10; ++index )
     {    printf( "Por favor, insira o número na posição %d: " , index + 1 );
          scanf( " %f", (& numero_float) );
          printf( "\n" );
          numeros_floats[ index ]= numero_float;

          if( (0 < index)&&(nmaior_float < numeros_floats[ index ] ) )
          {    nmaior_float= numeros_floats[ index ];
               continue; /*-> próximo índice */
          }
          /**> Atribuísse a primeira ocorrência para o ponto de partida da varredura */
          nmaior_float= numero_float;
     } 
     return 0;     
}

#3

Valeu!!
Rodou bonito!!